Skip to content
Open
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
edf9b3c
Update monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 15, 2025
1a75c2c
Update monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 15, 2025
d3f3e7d
Update monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 15, 2025
21290d0
Revise Grafana dashboard links and add DM metrics
jinshayumi Oct 17, 2025
8de9175
Update monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 17, 2025
1afb1ad
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 17, 2025
461d02f
Merge pull request #3 from jinshayumi/patch-5
huoyao1125 Oct 17, 2025
4fa00f9
Update monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 17, 2025
8c8f77d
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
b652e2b
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
248fe19
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
f117163
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
29718ed
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
089e99b
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
6a8263a
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
a4a5bf9
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
a8f0c86
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
2e47c58
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
7208d80
Update tidb-cloud/monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
e320bdd
Update monitor-prometheus-and-grafana-integration.md
huoyao1125 Oct 20, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 50 additions & 12 deletions tidb-cloud/monitor-prometheus-and-grafana-integration.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,26 @@
---
title: Integrate TiDB Cloud with Prometheus and Grafana (Beta)
title: Integrate TiDB Cloud with Prometheus and Grafana
summary: Learn how to monitor your TiDB cluster with the Prometheus and Grafana integration.
---

# Integrate TiDB Cloud with Prometheus and Grafana (Beta)
# Integrate TiDB Cloud with Prometheus and Grafana

TiDB Cloud provides a [Prometheus](https://prometheus.io/) API endpoint (beta). If you have a Prometheus service, you can monitor key metrics of TiDB Cloud from the endpoint easily.
TiDB Cloud provides a [Prometheus](https://prometheus.io/) API endpoint. If you have a Prometheus service, you can monitor key metrics of TiDB Cloud from the endpoint easily.

This document describes how to configure your Prometheus service to read key metrics from the TiDB Cloud endpoint and how to view the metrics using [Grafana](https://grafana.com/).

## Prometheus integration version

TiDB Cloud has supported the project-level Prometheus integration (Beta) since March 15, 2022. Starting from October 21, 2025, TiDB Cloud introduces the cluster-level Prometheus integration (Preview).

- **Cluster-level Prometheus integration (Preview)**: if no legacy project-level Prometheus integration remains undeleted within your organization by October 21, 2025, TiDB Cloud provides the cluster-level Prometheus integration (Preview) for your organization to experience the latest enhancements.

> **Note**
>
> Currently, cluster-level Prometheus integration (Preview) is available only for TiDB Cloud Dedicated clusters hosted on AWS and Google Cloud.

- **Legacy project-level Prometheus integration (Beta)**: if at least one legacy project-level Prometheus integration remains undeleted within your organization by October 21, 2025, TiDB Cloud retains both existing and new integrations at the project level for your organization to avoid affecting current dashboards.

## Prerequisites

- To integrate TiDB Cloud with Prometheus, you must have a self-hosted or managed Prometheus service.
Expand All @@ -17,28 +29,42 @@ This document describes how to configure your Prometheus service to read key met

## Limitation

- You cannot use the Prometheus and Grafana integration in [{{{ .starter }}}](/tidb-cloud/select-cluster-tier.md#tidb-cloud-serverless) or [{{{ .essential }}}](/tidb-cloud/select-cluster-tier.md#essential) clusters.
- Prometheus and Grafana integration now is only available for in [{{{ .dedicated }}}](/tidb-cloud/select-cluster-tier.md#tidb-cloud-dedicated) clusters.

- Prometheus and Grafana integrations are not available when the cluster status is **CREATING**, **RESTORING**, **PAUSED**, or **RESUMING**.

## Steps

### Step 1. Get a scrape_config file for Prometheus

Before configuring your Prometheus service to read metrics of TiDB Cloud, you need to generate a `scrape_config` YAML file in TiDB Cloud first. The `scrape_config` file contains a unique bearer token that allows the Prometheus service to monitor any database clusters in the current project.
Before configuring your Prometheus service to read metrics of TiDB Cloud, you need to generate a `scrape_config` YAML file in TiDB Cloud first. The `scrape_config` file contains a unique bearer token that allows the Prometheus service to monitor your target clusters.

Depending on your [Prometheus integration version](#prometheus-integration-version), the steps to get the `scrape_config` file for Prometheus and access the integration page are different.

<SimpleTab>
<div label="Cluster-level Prometheus integration (Preview)">

1. In the [TiDB Cloud console](https://tidbcloud.com/), navigate to the [**Clusters**](https://tidbcloud.com/project/clusters) page of your project, and then click the name of your target cluster to go to its overview page.
2. In the left navigation pane, click **Settings** > **Integrations**.
3. On the **Integrations** page, click **Integration to Prometheus(Preview)**.
4. Click **Add File** to generate and show the `scrape_config` file for the current cluster.
5. Make a copy of the `scrape_config` file content for later use.

To get the `scrape_config` file for Prometheus, do the following:
</div>
<div label="Legacy project-level Prometheus integration (Beta)">

1. In the [TiDB Cloud console](https://tidbcloud.com), switch to your target project using the combo box in the upper-left corner.
2. In the left navigation pane, click **Project Settings** > **Integrations**.
3. On the **Integrations** page, click **Integration to Prometheus (BETA)**.
4. Click **Add File** to generate and show the scrape_config file for the current project.

5. Make a copy of the `scrape_config` file content for later use.

> **Note:**
>
> For security reasons, TiDB Cloud only shows a newly generated `scrape_config` file once. Ensure that you copy the content before closing the file window. If you forget to do so, you need to delete the `scrape_config` file in TiDB Cloud and generate a new one. To delete a `scrape_config` file, select the file, click **...**, and then click **Delete**.
</div>
</SimpleTab>

> **Note:**
>
> For security reasons, TiDB Cloud only shows a newly generated `scrape_config` file once. Ensure that you copy the content before closing the file window. If you forget to do so, you need to delete the `scrape_config` file in TiDB Cloud and generate a new one. To delete a `scrape_config` file, select the file, click **...**, and then click **Delete**.

### Step 2. Integrate with Prometheus

Expand All @@ -54,7 +80,10 @@ To get the `scrape_config` file for Prometheus, do the following:

After your Prometheus service is reading metrics from TiDB Cloud, you can use Grafana GUI dashboards to visualize the metrics as follows:

1. Download the Grafana dashboard JSON of TiDB Cloud [here](https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-prometheus-and-grafana-integration-grafana-dashboard-UI.json).
1. Depending on your [Prometheus integration version](#prometheus-integration-version), the link to download the Grafana dashboard JSON of TiDB Cloud for Prometheus is different.

- For cluster-level Prometheus integration (Preview), download the Grafana dashboard JSON file [here](https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-prometheus-and-grafana-integration-tidb-cloud-dynamic-tracker.json).
- For legacy project-level Prometheus integration (Beta), download the Grafana dashboard JSON file [here](https://github.com/pingcap/docs/blob/master/tidb-cloud/monitor-prometheus-and-grafana-integration-grafana-dashboard-UI.json).

2. [Import this JSON to your own Grafana GUI](https://grafana.com/docs/grafana/v8.5/dashboards/export-import/#import-dashboard) to visualize the metrics.

Expand All @@ -73,7 +102,7 @@ To improve data security, it is a general best practice to periodically rotate `
1. Follow [Step 1](#step-1-get-a-scrape_config-file-for-prometheus) to create a new `scrape_config` file for Prometheus.
2. Add the content of the new file to your Prometheus configuration file.
3. Once you have confirmed that your Prometheus service is still able to read from TiDB Cloud, remove the content of the old `scrape_config` file from your Prometheus configuration file.
4. On the **Integrations** page of your project, delete the corresponding old `scrape_config` file to block anyone else from using it to read from the TiDB Cloud Prometheus endpoint.
4. On the **Integrations** page of your project or cluster, delete the corresponding old `scrape_config` file to block anyone else from using it to read from the TiDB Cloud Prometheus endpoint.

## Metrics available to Prometheus

Expand Down Expand Up @@ -104,6 +133,15 @@ Prometheus tracks the following metric data for your TiDB clusters.
| tidbcloud_resource_manager_resource_unit_read_request_unit | gauge | cluster_name: `<cluster name>`<br/>resource_group: `<group-name>` | The read request units consumed by Resource Manager |
| tidbcloud_resource_manager_resource_unit_write_request_unit | gauge | cluster_name: `<cluster name>`<br/>resource_group: `<group-name>` | The write request units consumed by Resource Manager |

For cluster-level Prometheus integration, the following additional metrics are also available:

| Metric name | Metric type | Labels | Description |
|:--- |:--- |:--- |:--- |
| tidbcloud_dm_task_status | gauge | instance: `instance`<br/>task: `task`<br/>cluster_name: `<cluster name>` | Task state of Data Migration:<br/>0: Invalid<br/>1: New<br/>2: Running<br/>3: Paused<br/>4: Stopped<br/>5: Finished<br/>15: Error |
| tidbcloud_dm_syncer_replication_lag_bucket | gauge | instance: `instance`<br/>cluster_name: `<cluster name>` | Replicate lag (bucket) of Data Migration. |
| tidbcloud_dm_syncer_replication_lag_gauge | gauge | instance: `instance`<br/>task: `task`<br/>cluster_name: `<cluster name>` | Replicate lag (gauge) of Data Migration. |
| tidbcloud_dm_relay_read_error_count | gauge | instance: `instance`<br/>cluster_name: `<cluster name>` | Fail to read binlog from master. |

## FAQ

- Why does the same metric have different values on Grafana and the TiDB Cloud console at the same time?
Expand Down
Loading