METRICS_TABLES
The METRICS_TABLES
table provides the PromQL (Prometheus Query Language) definition for each of the views in the METRICS_SCHEMA database.
Note
This table is only applicable to TiDB Self-Hosted and not available on TiDB Cloud.
USE INFORMATION_SCHEMA;
DESC METRICS_TABLES;
The output is as follows:
+------------+--------------+------+------+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+------+---------+-------+
| TABLE_NAME | varchar(64) | YES | | NULL | |
| PROMQL | varchar(64) | YES | | NULL | |
| LABELS | varchar(64) | YES | | NULL | |
| QUANTILE | double | YES | | NULL | |
| COMMENT | varchar(256) | YES | | NULL | |
+------------+--------------+------+------+---------+-------+
Field description:
TABLE_NAME
: Corresponds to the table name inMETRICS_SCHEMA
.PROMQL
: The working principle of the monitoring table is to map SQL statements toPromQL
and convert Prometheus results into SQL query results. This field is the expression template ofPromQL
. When you query the data of the monitoring table, the query conditions are used to rewrite the variables in this template to generate the final query expression.LABELS
: The label for the monitoring item. Each label corresponds to a column in the monitoring table. If the SQL statement contains the filter of the corresponding column, the correspondingPromQL
changes accordingly.QUANTILE
: The percentile. For monitoring data of the histogram type, a default percentile is specified. If the value of this field is0
, it means that the monitoring item corresponding to the monitoring table is not a histogram.COMMENT
: The comment about the monitoring table.
SELECT * FROM metrics_tables LIMIT 5\G
The output is as follows:
*************************** 1. row ***************************
TABLE_NAME: abnormal_stores
PROMQL: sum(pd_cluster_status{ type=~"store_disconnected_count|store_unhealth_count|store_low_space_count|store_down_count|store_offline_count|store_tombstone_count"})
LABELS: instance,type
QUANTILE: 0
COMMENT:
*************************** 2. row ***************************
TABLE_NAME: etcd_disk_wal_fsync_rate
PROMQL: delta(etcd_disk_wal_fsync_duration_seconds_count{$LABEL_CONDITIONS}[$RANGE_DURATION])
LABELS: instance
QUANTILE: 0
COMMENT: The rate of writing WAL into the persistent storage
*************************** 3. row ***************************
TABLE_NAME: etcd_wal_fsync_duration
PROMQL: histogram_quantile($QUANTILE, sum(rate(etcd_disk_wal_fsync_duration_seconds_bucket{$LABEL_CONDITIONS}[$RANGE_DURATION])) by (le,instance))
LABELS: instance
QUANTILE: 0.99
COMMENT: The quantile time consumed of writing WAL into the persistent storage
*************************** 4. row ***************************
TABLE_NAME: etcd_wal_fsync_total_count
PROMQL: sum(increase(etcd_disk_wal_fsync_duration_seconds_count{$LABEL_CONDITIONS}[$RANGE_DURATION])) by (instance)
LABELS: instance
QUANTILE: 0
COMMENT: The total count of writing WAL into the persistent storage
*************************** 5. row ***************************
TABLE_NAME: etcd_wal_fsync_total_time
PROMQL: sum(increase(etcd_disk_wal_fsync_duration_seconds_sum{$LABEL_CONDITIONS}[$RANGE_DURATION])) by (instance)
LABELS: instance
QUANTILE: 0
COMMENT: The total time of writing WAL into the persistent storage
5 rows in set (0.00 sec)