Prometheus is a metric collection tool that works with time series data. Prometheus can be easily used as main monitoring data source because it easily fits into most software architectures, integrates swiftly with most modern technologies, and is convenient to set up and maintain. Prometheus comes with a built-in database for collected time series data, a designated query language (PromQL) for leveraging this database’s multi-dimensionality, and a service discovery ability that helps to monitor new components and services as soon as they deploy as part of the application stack. Prometheus exporters allow for the collection of data from services that Prometheus cannot instrument and automatically identify, and the Prometheus Alertmanager pushes notifications about threshold breaches to external collaboration and on-call tools.
Grafana is used for visualizing the data Prometheus collects, since Prometheus’ user interface is considered somewhat primitive. Grafana’s dashboards and graphs make it possible to query and display metrics from Prometheus as well as to integrate Prometheus’ data with data from other sources.
My favourite Prometheus exporters:
My favourite Grafana plugins:
Interesting Grafana dashboards related to some of the exporters: