ホームページ > バックエンド開発 > Golang > アプリケーションのパフォーマンスが正確であるにもかかわらず、Go の「pprof」出力で空白の結果が表示されるのはなぜですか?

アプリケーションのパフォーマンスが正確であるにもかかわらず、Go の「pprof」出力で空白の結果が表示されるのはなぜですか?

Susan Sarandon
リリース: 2024-10-30 09:26:27
オリジナル
987 人が閲覧しました

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

Go ツール Pprof 出力の不一致

クエリは、プロファイリング機能を提供する Go の 'pprof' ツールの不可解な出力を中心に展開します。以前は正確なパフォーマンスを示していたにもかかわらず、このツールは最近、決定的ではない結果を生成し始めています。

プロファイル対象のアプリケーションに関係なく、多数の関数呼び出しを含む比較的複雑なアプリケーションであっても、「pprof」ツールは当たり障りのない呼び出しグラフと不毛な結果を返します。 、アプリケーション自体は正常に機能しているにもかかわらず。

この問題は、MacOS Yosemite と El Capitan にアップグレードした後も解決しません。パッケージ「github.com/davecheney/profile」は Go v1.5.1 で使用されます。

プロファイルを生成するには、コードの先頭に「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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート