TiDB CloudとDatadogを統合する (Preview)
TiDB Cloud は Datadog との統合をサポートしています。TiDB Cloud を設定して、TiDB Cloud Essential インスタンスのメトリクスを Datadog に送信できます。設定後は、これらのメトリクスを Datadog のダッシュボードで直接表示できます。
前提条件
TiDB Cloud を Datadog と統合するには、Datadog アカウントと Datadog API key が必要です。Datadog アカウントを初めて作成すると、Datadog から API key が付与されます。
Datadog アカウントを持っていない場合は、https://app.datadoghq.com/signup でサインアップしてください。
TiDB Cloud でサードパーティメトリクス統合を設定するには、TiDB Cloud で Organization Owner、Project Owner、または Instance Manager のアクセス権限が必要です。統合ページを表示するには、少なくとも Project Viewer または Instance Viewer ロールが必要であり、TiDB Cloud の組織配下にある対象の TiDB Cloud Essential インスタンスにアクセスできる必要があります。
制限事項
- Datadog integration は TiDB Cloud Starter インスタンスでは利用できません。
- 対象の TiDB Cloud Essential インスタンスのステータスが CREATING、RESTORING、PAUSED、または RESUMING の場合、Datadog integration は利用できません。
手順
手順 1. 事前構築済み Datadog ダッシュボードをインポートする
現在、TiDB Cloud Essential 用の TiDB Cloud ダッシュボードは、Datadog integration marketplace ではまだ利用できません。ダッシュボード JSON ファイルを手動でダウンロードし、Datadog にインポートする必要があります。
インスタンスタイプに対応する Datadog ダッシュボード JSON ファイルをダウンロードします。
https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-datadog-integration-tidb-cloud-dynamic-tracker-essential.json
Datadog にログインし、Dashboards > Dashboard List に移動します。
右上の + New Dashboard をクリックします。ダッシュボード名を入力し、Start from blank dashboard を選択します。
新しいダッシュボードで、右上の歯車アイコン (Configure) をクリックし、Import dashboard JSON... を選択します。
表示されるダイアログで、JSON の内容を貼り付けるか、JSON ファイルをドラッグアンドドロップします。
Yes, Replace をクリックしてインポートを確定します。
手順 2. Datadog API key と統合する
TiDB Cloud console で My TiDB ページに移動し、対象の TiDB Cloud Essential インスタンス名をクリックして概要ページを開きます。
左側のナビゲーションペインで、Integrations > Integration to Datadog (Preview) をクリックします。
Datadog API key を入力し、Datadog Region を選択します。
Test Integration をクリックします。
- テストが成功すると、Confirm ボタンが表示されます。
- テストが失敗すると、エラーメッセージが表示されます。メッセージに従ってトラブルシューティングを行い、再度統合を試してください。
Confirm をクリックして統合を完了します。
事前構築済みダッシュボードを表示する
統合後に事前構築済みダッシュボードを表示するには、Datadog で Dashboards > Dashboard List に移動し、手順 1 でインポートしたダッシュボードを選択します。ダッシュボードページでは、対象のインスタンス名でフィルタリングしてメトリクスを表示できます。
また、TiDB Cloud console から Datadog の Dashboard List ページにアクセスすることもできます。対象インスタンスの Integrations ページに移動し、Datadog (Preview) をクリックしてから Dashboard をクリックします。
Datadog で利用可能なメトリクス
Datadog は、TiDB Cloud Essential インスタンスについて、以下のメトリクスを追跡します。
ノート
現在、TiDB Cloud Essential の changefeed 機能はリクエストベースでのみ利用可能であり、tidb_cloud.changefeed_* メトリクスは利用できません。
| メトリック名 | メトリックタイプ | ラベル | 説明 |
|---|
tidb_cloud.db_total_connection | gauge | instance_id: <instance id>
instance_name: <instance name> | TiDB server における現在の接続数 |
tidb_cloud.db_active_connections | gauge | instance_id: <instance id>
instance_name: <instance name> | アクティブな接続数 |
tidb_cloud.db_disconnections | gauge | result: Error\|...
instance_id: <instance id>
instance_name: <instance name> | 接続結果ごとに切断されたクライアント数 |
tidb_cloud.db_database_time | gauge | sql_type: Select\|Insert\|...
instance_id: <instance id>
instance_name: <instance name> | TiDB で実行中のすべての SQL 文が 1 秒あたりに消費した合計時間。すべてのプロセスの CPU 時間と、アイドル状態ではない待機時間を含みます |
tidb_cloud.db_query_per_second | gauge | type: Select\|Insert\|...
instance_id: <instance id>
instance_name: <instance name> | 文の種類ごとに集計された、1 秒あたりに実行された SQL 文の数 |
tidb_cloud.db_failed_queries | gauge | type: planner:xxx\|executor:2345\|...
instance_id: <instance id>
instance_name: <instance name> | SQL 文の実行時に 1 秒あたりに発生したエラー種別(構文エラーや主キー競合など)の統計 |
tidb_cloud.db_command_per_second | gauge | type: Query\|Ping\|...
instance_id: <instance id>
instance_name: <instance name> | TiDB が 1 秒あたりに処理したコマンド数 |
tidb_cloud.db_queries_using_plan_cache_ops | gauge | instance_id: <instance id>
instance_name: <instance name> | 1 秒あたりに実行計画キャッシュにヒットしたクエリ数 |
tidb_cloud.db_average_query_duration | gauge | sql_type: Select\|Insert\|...
instance_id: <instance id>
instance_name: <instance name> | ネットワークリクエストが TiDB に送信されてから、レスポンスがクライアントに返されるまでの時間 |
tidb_cloud.db_transaction_per_second | gauge | type: Commit\|Rollback\|...
txn_mode: optimistic\|pessimistic
instance_id: <instance id>
instance_name: <instance name> | 1 秒あたりに実行されたトランザクション数 |
tidb_cloud.db_row_storage_used_bytes | gauge | instance_id: <instance id>
instance_name: <instance name> | TiDB Cloud Essential インスタンスの行ベースストレージサイズ(バイト) |
tidb_cloud.db_columnar_storage_used_bytes | gauge | instance_id: <instance id>
instance_name: <instance name> | TiDB Cloud Essential インスタンスのカラムナー ストレージサイズ(バイト)。TiFlash が有効でない場合は 0 を返します |
tidb_cloud.resource_manager_resource_request_unit_total | gauge | instance_id: <instance id>
instance_name: <instance name> | 消費された合計 Request Units/s (RU/s) |