首頁  >  文章  >  後端開發  >  儘管應用程式效能準確,但為什麼我的 Go `pprof` 輸出顯示空白結果?

儘管應用程式效能準確,但為什麼我的 Go `pprof` 輸出顯示空白結果?

Susan Sarandon
Susan Sarandon原創
2024-10-30 09:26:27879瀏覽

Why is my Go `pprof` output showing blank results despite accurate application performance?

Go 工具 Pprof 輸出不一致

查詢圍繞著 Go 中提供分析功能的「pprof」工具的莫名其妙的輸出。儘管過去性能準確,但該工具最近開始產生不確定的結果。

無論正在分析的應用程式是什麼,即使是具有大量函數呼叫的相對複雜的應用程序,「pprof」工具也會返回乏味的呼叫圖和貧瘠的結果,儘管應用程式本身運行正常。

即使升級到 MacOS Yosemite 和 El Capitan 後,問題仍然存在。 Go v1.5.1 使用套件「github.com/davecheney/profile」。

為了產生設定文件,程式碼在「profile.Start」和「profile.Stop」的開頭包含「profile.Start」和「profile.Stop」。 main' 函數,然後是二進位檔案的建置和運行。但是,產生的輸出類似於以下內容:

(pprof) top
269.97kB of 269.97kB total (  100%)
      flat  flat%   sum%        cum   cum%
  269.97kB   100%   100%   269.97kB   100%  
(pprof) 

提供的解決方案透過強調「pprof」呼叫中不存在二進位檔案來解決此差異。正確的命令結構是:

go tool pprof ./orig /path/to/profile.pprof

此更正可確保「pprof」以編譯的二進位檔案為目標,使其能夠提供所需的分析資訊。

以上是儘管應用程式效能準確,但為什麼我的 Go `pprof` 輸出顯示空白結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn