概要
プロファイリングフレームグラフは、Continuous Profiler によって収集されたスタックトレースを可視化します。各フレームは、メソッドや行などのコードの単位を表します。フレームの幅は選択したプロファイルメトリクスの割合を表し、次の行のフレームは上のフレームによって呼び出されたコードを表します。ウィジェットを使用して、プロファイルされたアプリケーション全体のリソース集約的なコードパスを特定します。
セットアップ
データをグラフ化する
- 検索フィールドで、タグを使用してプロファイリングデータのスコープを指定します。例として、
host、container_name、service、env、version などがあります。 - Show メニューで、プロファイルタイプを選択します。利用可能なプロファイルタイプは言語によって異なります。
- by メニューで、メソッドや行などのフレームの粒度を選択します。
- color by および sort メニューを使用して、フレームの網掛け方法と順序を選択します。
- スコープセクションを使用して、フレームグラフを絞り込みます。
- Scope to methods: 含めるメソッドを選択します。このセクションの名前は、by メニューで選択された粒度に応じて変わります。
- Scope to endpoints: 特定のエンドポイントにフィルタリングします。
per Minute by Endpoint を選択して合計リソース消費量を表示するか、per Endpoint Call を選択してリクエストごとのリソース消費量を表示します。
時間設定を行う
Global dashboard time を選択してダッシュボードの時間枠を使用するか、Custom time を選択してウィジェットの時間枠を設定します。
注: ウィジェットで固定の Custom time 範囲を使用している場合、Notebooks はフレームグラフのデータを 1 年間保持します。ウィジェットを作成する際、範囲は 8 日間のプロファイリングデータ保持期間内である必要があります。
タイトルと説明を追加する
グラフにタイトルを付けるか、ボックスを空のままにして推奨タイトルを使用します。オプションで説明を追加することもできます。Save をクリックします。
フレームにカーソルを合わせると、そのプロファイル値が表示されます。フレームを選択すると、そのコードパスにフォーカスされます。プロファイルを詳細に調査するには、フレームグラフの右上隅にあるフルページで開くアイコンをクリックします。
API
このウィジェットは Dashboards API で使用できます。ウィジェットの JSON スキーマ定義を参照してください。
参考資料