TiDB ダッシュボード インスタンス プロファイリング - 手動プロファイリング
注記:
この機能はデータベースの専門家向けに設計されています。専門家でないユーザーは、PingCAP テクニカル サポートの指導の下でこの機能を使用することをお勧めします。
手動プロファイリングを使用すると、ユーザーは 1 回のクリックで、TiDB、TiKV、PD、およびTiFlashインスタンスごとに現在のパフォーマンス データをオンデマンドで収集できます。収集されたパフォーマンス データは、FlameGraph または DAG として視覚化できます。
これらのパフォーマンス データを使用すると、専門家はインスタンスの CPU やメモリなどの現在のリソース消費の詳細を分析し、CPU オーバーヘッドの高さ、メモリ使用量の高さ、プロセスの停止など、進行中の高度なパフォーマンスの問題を正確に特定できます。
プロファイリングを開始すると、TiDB ダッシュボードは一定期間 (デフォルトでは 30 秒) にわたって現在のパフォーマンス データを収集します。したがって、この機能はクラスターが現在直面している進行中の問題を分析するためにのみ使用でき、過去の問題には大きな影響はありません。いつでもパフォーマンス データを収集して分析したい場合は、 継続的なプロファイリング参照してください。
サポートされているパフォーマンスデータ
現在、次のパフォーマンス データがサポートされています。
CPU: TiDB、TiKV、PD、 TiFlashインスタンス上の各内部関数のCPUオーバーヘッド
TiKV およびTiFlashインスタンスの CPU オーバーヘッドは、現在 ARMアーキテクチャではサポートされていません。
ヒープ: TiDB、TiKV、PDインスタンス上の各内部関数のメモリ消費量
v7.5 以降、TiDB は TiKV ヒープ プロファイルをサポートします。TiDB ダッシュボードの実行環境では Perl 依存関係が必要です。そうでない場合はエラーが発生します。
ミューテックス: TiDBおよびPDインスタンス上のミューテックスの競合状態
Goroutine: TiDB および PD インスタンス上のすべての Goroutine の実行状態と呼び出しスタック
ページにアクセスする
次のいずれかの方法でインスタンス プロファイリング ページにアクセスできます。
TiDB ダッシュボードにログインした後、左側のナビゲーション メニューで[高度なデバッグ] > [インスタンスのプロファイリング] > [手動プロファイリング]をクリックします。
ブラウザでhttp://127.0.0.1:2379/dashboard/#/instance_profilingアクセスします。3
127.0.0.1:2379
実際の PD インスタンスのアドレスとポートに置き換えます。
プロファイリングを開始
インスタンス プロファイリング ページで、少なくとも 1 つのターゲット インスタンスを選択し、 [プロファイリングの開始]をクリックしてインスタンス プロファイリングを開始します。
プロファイリングを開始する前に、プロファイリング期間を変更できます。この期間は、プロファイリングに必要な時間によって決まります。デフォルトでは 30 秒です。30 秒の期間は、完了するまでに 30 秒かかります。
継続的なプロファイリング有効になっているクラスターでは手動プロファイリングを開始できません。現時点でのパフォーマンス データを表示するには、 継続的プロファイリングページで最新のプロファイリング結果をクリックします。
プロファイリングステータスのビュー
プロファイリングが開始されると、プロファイリングのステータスと進行状況をリアルタイムで確認できます。
プロファイリングはバックグラウンドで実行されます。現在のページを更新したり終了したりしても、実行中のプロファイリング タスクは停止されません。
パフォーマンスデータをダウンロード
すべてのインスタンスのプロファイリングが完了したら、右上隅の「プロファイリング結果のダウンロード」をクリックして、すべてのパフォーマンス データをダウンロードできます。
表内の個々のインスタンスをクリックして、そのプロファイリング結果を表示することもできます。または、... にマウスを移動して生データをダウンロードすることもできます。
プロファイリング履歴をビュー
オンデマンド プロファイリング履歴がページにリストされます。行をクリックすると詳細が表示されます。
プロファイリングステータスページでの詳細な操作については、 プロファイリングステータスのビュー参照してください。