📣
TiDB Cloud Premium is now in public preview. Unlimited growth, instant elasticity, advanced security for enterprise workloads. Try it out →

Integrate TiDB Cloud with Datadog (Preview)



TiDB Cloud supports integration with Datadog. You can configure TiDB Cloud to send metrics for your TiDB Cloud Essential instances to Datadog. After that, you can view these metrics in your Datadog dashboards directly.

Prerequisites

  • To integrate TiDB Cloud with Datadog, you must have a Datadog account and a Datadog API key. Datadog grants you an API key when you first create a Datadog account.

    If you do not have a Datadog account, sign up at https://app.datadoghq.com/signup.

  • To set up third-party metrics integration for TiDB Cloud, you must have the Organization Owner, Project Owner, or Instance Manager access in TiDB Cloud. To view the integration page, you need at least the Project Viewer or Instance Viewer role to access the target TiDB Cloud Essential instance under your organization in TiDB Cloud.

Limitations

  • Datadog integration is not available for TiDB Cloud Starter instances.
  • Datadog integration is not available when the status of your TiDB Cloud Essential instance is CREATING, RESTORING, PAUSED, or RESUMING.

Steps

Step 1. Import the pre-built Datadog dashboard

Currently, the TiDB Cloud dashboard for TiDB Cloud Essential is not yet available in the Datadog integration marketplace. You need to manually download and import the dashboard JSON file into Datadog.

  1. Download the Datadog dashboard JSON file for your instance type:

    https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-datadog-integration-tidb-cloud-dynamic-tracker-essential.json

  2. Log in to Datadog, and then go to Dashboards > Dashboard List.

  3. Click + New Dashboard in the upper-right corner. Enter a dashboard name, and then select Start from blank dashboard.

  4. In the new dashboard, click the gear icon (Configure) in the upper-right corner, and then select Import dashboard JSON....

  5. In the dialog that appears, paste the JSON content, or drag and drop the JSON file.

  6. Click Yes, Replace to confirm the import.

Step 2. Integrate with your Datadog API key

  1. In the TiDB Cloud console, navigate to the My TiDB page, and then click the name of your target TiDB Cloud Essential instance to go to its overview page.

  2. In the left navigation pane, click Integrations > Integration to Datadog (Preview).

  3. Enter your Datadog API key and choose your Datadog Region.

  4. Click Test Integration.

    • If the test succeeds, the Confirm button is displayed.
    • If the test fails, an error message is displayed. Follow the message for troubleshooting and retry the integration.
  5. Click Confirm to complete the integration.

View the pre-built dashboard

To view the pre-built dashboard after the integration, go to Dashboards > Dashboard List in Datadog, and then select the dashboard imported in Step 1. On the dashboard page, you can filter by your target instance name and view the metrics.

You can also access the Dashboard List page in Datadog from the TiDB Cloud console: go to the Integrations page of your target instance, click Datadog (Preview), and then click Dashboard.

Metrics available to Datadog

Datadog tracks the following metrics for your TiDB Cloud Essential instance.

Metric nameMetric typeLabelsDescription
tidb_cloud.db_total_connectiongaugeinstance_id: <instance id>
instance_name: <instance name>
The number of current connections in your TiDB server
tidb_cloud.db_active_connectionsgaugeinstance_id: <instance id>
instance_name: <instance name>
The number of active connections
tidb_cloud.db_disconnectionsgaugeresult: Error\|...
instance_id: <instance id>
instance_name: <instance name>
The number of clients disconnected by connection result
tidb_cloud.db_database_timegaugesql_type: Select\|Insert\|...
instance_id: <instance id>
instance_name: <instance name>
The total time consumed by all SQL statements running in TiDB per second, including the CPU time of all processes and the non-idle waiting time
tidb_cloud.db_query_per_secondgaugetype: Select\|Insert\|...
instance_id: <instance id>
instance_name: <instance name>
The number of SQL statements executed per second, counted according to statement types
tidb_cloud.db_failed_queriesgaugetype: planner:xxx\|executor:2345\|...
instance_id: <instance id>
instance_name: <instance name>
The statistics of error types (such as syntax errors and primary key conflicts) that occur per second when executing SQL statements
tidb_cloud.db_command_per_secondgaugetype: Query\|Ping\|...
instance_id: <instance id>
instance_name: <instance name>
The number of commands processed by TiDB per second
tidb_cloud.db_queries_using_plan_cache_opsgaugeinstance_id: <instance id>
instance_name: <instance name>
The number of queries that hit the execution plan cache per second
tidb_cloud.db_average_query_durationgaugesql_type: Select\|Insert\|...
instance_id: <instance id>
instance_name: <instance name>
The duration between the time a network request is sent to TiDB and the time a response is returned to the client
tidb_cloud.db_transaction_per_secondgaugetype: Commit\|Rollback\|...
txn_mode: optimistic\|pessimistic
instance_id: <instance id>
instance_name: <instance name>
The number of transactions executed per second
tidb_cloud.db_row_storage_used_bytesgaugeinstance_id: <instance id>
instance_name: <instance name>
The row-based storage size of the TiDB Cloud Essential instance in bytes
tidb_cloud.db_columnar_storage_used_bytesgaugeinstance_id: <instance id>
instance_name: <instance name>
The columnar storage size of the TiDB Cloud Essential instance in bytes. Returns 0 if TiFlash is not enabled.
tidb_cloud.resource_manager_resource_request_unit_totalgaugeinstance_id: <instance id>
instance_name: <instance name>
The total Request Units/s (RU/s) consumed

Was this page helpful?