パフォーマンスバー
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab Self-Managed、GitLab Dedicated
パフォーマンスバーは、リアルタイムメトリクスをブラウザに直接表示し、ログを調べたり、個別のプロファイリングツールを実行したりすることなく、インサイトを提供します。
開発チームにとって、パフォーマンスバーは、どこに労力を集中すべきかを正確に示すことで、デバッグを簡素化します。
利用可能な情報
左から右へ、パフォーマンスバーは以下を表示します:
- Current Host: ページを提供している現在のホスト。
- Database queries: データベースクエリにかかった時間(ミリ秒)と合計数で、
00ms / 00 (00 cached) pgの形式で表示されます。詳細が記載されたダイアログを表示するには、選択します。各クエリについて、以下の詳細を確認できます:- In a transaction: トランザクションのコンテキストで実行された場合、クエリの下に表示されます。
- ロール: Databaseロードバランシングが有効な場合に表示されます。どのサーバーロールがクエリに使用されたかを表示します。「Primary」は、クエリが読み取り/書き込みプライマリサーバーに送信されたことを意味します。「Replica」は、読み取り専用レプリカに送信されたことを意味します。
- Configuration name: これは、異なるGitLab機能用に設定された異なるデータベースを区別するために使用されます。表示される名前は、GitLabでデータベース接続を設定するために使用される名前と同じです。
- Gitalyリクエスト: Gitalyコールにかかった時間(ミリ秒)と合計数。詳細が記載されたダイアログを表示するには、選択します。
- Redis呼び出し: Redisコールにかかった時間(ミリ秒)と合計数。詳細が記載されたダイアログを表示するには、選択します。
- Elasticsearchコール: Elasticsearchコールにかかった時間(ミリ秒)と合計数。詳細が記載されたダイアログを表示するには、選択します。
- External HTTP calls: 他のシステムへの外部コールにかかった時間(ミリ秒)と合計数。詳細が記載されたダイアログを表示するには、選択します。
- ページのLoad timings: ブラウザがロードタイミングをサポートしている場合、ミリ秒単位の値がスラッシュで区切られて表示されます。詳細が記載されたダイアログを表示するには、選択します。左から右への値:
- バックエンド: ベースページの読み込みに必要な時間。
- 最初のコンテンツ描画: ユーザーに何かが表示されるまでの時間。ブラウザがこの機能をサポートしていない場合、
NaNが表示されます。 - DomContentLoadedイベント。
- ページが読み込まれたTotal number of requests。
- メモリ: 選択されたリクエスト中に消費されたメモリ量と割り当てられたオブジェクト。選択すると、詳細が記載されたウィンドウが表示されます。
- トレース: Jaegerが統合されている場合、トレースは現在のリクエストの
correlation_idを含むJaegerトレーシングページにリンクします。 - +: リクエストの詳細をパフォーマンスバーに追加するリンク。リクエストは、完全なURL(現在のユーザーとして認証済み)または
X-Request-Idヘッダーの値によって追加できます。 - ダウンロード: パフォーマンスバーレポートを生成するために使用されたraw JSONをダウンロードするリンク。
- Memory Report: 現在のURLのメモリプロファイリングレポートを生成するリンク。
- Flamegraph: 選択されたStackprof modeで現在のURLのフレームグラフを生成するリンク:
- ウォールモードは、壁の時計の時間のすべての間隔をサンプリングします。間隔は
10100マイクロ秒に設定されています。 - CPUモードは、CPUアクティビティのすべての間隔をサンプリングします。間隔は
10100マイクロ秒に設定されています。 - オブジェクトモードはすべての間隔をサンプリングします。間隔は
100アロケーションに設定されています。
- ウォールモードは、壁の時計の時間のすべての間隔をサンプリングします。間隔は
- Request Selector: パフォーマンスバーの右側に表示される選択ボックスで、現在のページが開いている間に作成されたすべてのリクエストのこれらのメトリクスを表示できます。一意のURLごとに最初の2つのリクエストのみがキャプチャされます。
- 統計:
GITLAB_PERFORMANCE_BAR_STATS_URL環境変数が設定されている場合、このURLがバーに表示されます。GitLab.comでのみ使用されます。
キーボードショートカット
p + bキーボードショートカットを押して、パフォーマンスバーを表示し、もう一度押すと非表示にします。
非管理者がパフォーマンスバーを表示するには、有効にする必要があります。
リクエスト警告
事前定義された制限を超えるリクエストは、警告 アイコンと、メトリクスの横に説明が表示されます。この例では、Gitalyコールの期間がしきい値を超えました。
非管理者向けパフォーマンスバーを有効にする
パフォーマンスバーは、非管理者に対してデフォルトで無効になっています。特定のグループに対して有効にするには:
- 管理者アクセスを持つユーザーとしてサインインします。
- 右上隅で、管理者を選択します。
- 設定 > メトリクスとプロファイリングを選択します。
- プロファイリング - パフォーマンスバーを展開します。
- 管理者以外のメンバーにパフォーマンスバーへのアクセスを許可するを選択します。
- 次のグループのメンバーにアクセスを許可するフィールドで、パフォーマンスへのアクセスが許可されているグループの完全なパスを入力します。
- 変更を保存を選択します。

