As a time series database, Prometheus has a multi-dimensional data model and flexible query language. As one of the most popular open source projects, Prometheus has been adopted by many companies and organizations and has a very active community. PingCAP is one of the active developers and adopters of Prometheus for monitoring and alerting in TiDB, TiKV and PD.
Prometheus consists of multiple components. Currently, TiDB uses the following of them:
- The Prometheus Server to scrape and store time series data
- The client libraries to customize necessary metrics in the application
- An Alertmanager for the alerting mechanism
The diagram is as follows:
Grafana is an open source project for analyzing and visualizing metrics. TiDB uses Grafana to display the performance metrics as follows: