Alat pprof Tidak Berfungsi di Golang
Walaupun sebelum ini berfungsi dengan berkesan, alat pprof telah merosot secara mendadak, menghasilkan output yang salah tanpa mengira sasaran pemprofilan. Isu ini menjejaskan kedua-dua cpu dan memprofiling, menghasilkan graf panggilan yang tidak seimbang berbanding dengan kerumitan aplikasi berprofil.
Aplikasi web yang terjejas menunjukkan prestasi yang mencukupi, menerima berjuta-juta permintaan dan menjana respons yang sesuai. Masalah itu muncul secara tiba-tiba beberapa hari yang lalu pada macOS Yosemite, berterusan walaupun selepas peningkatan kepada El Capitan.
Aplikasi yang dimaksudkan mengimport pakej "github.com/davecheney/profile" dan memulakan pemprofilan dalam fungsi utama melalui "menangguhkan profil.Mula(profil.MemProfile).Berhenti()." Walau bagaimanapun, alat pprof nampaknya tidak berfungsi apabila dipanggil sebagai:
go tool pprof /var/folders/26/2sj70_sn72l_93j7tf6r07gr0000gn/T/profile614358295/mem.pprof
Panggilan ini menghilangkan binari yang telah diprofilkan. Untuk menyelesaikan masalah ini, alat itu hendaklah digunakan seperti berikut:
go tool pprof ./orig /var/folders/26/2sj70_sn72l_93j7tf6r07gr0000gn/T/profile614358295/mem.pprof
di mana "orig" mewakili binari yang dibina dengan pemprofilan didayakan. Pengubahsuaian ini harus memulihkan alat pprof kepada fungsi sebelumnya.
Atas ialah kandungan terperinci Mengapakah alat pprof saya menghasilkan output yang salah untuk aplikasi Golang saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!