Chapter 11. Monitoring Kafka
Monitoring data allows you to monitor the performance and health of Streams for Apache Kafka. You can configure your deployment to capture metrics data for analysis and notifications.
Metrics data is useful when investigating issues with connectivity and data delivery. For example, metrics data can identify under-replicated partitions or the rate at which messages are consumed. Alerting rules can provide time-critical notifications on such metrics through a specified communications channel. Monitoring visualizations present real-time metrics data to help determine when and how to update the configuration of your deployment. Example metrics configuration files are provided with Streams for Apache Kafka.
You can employ the following tools for metrics and monitoring:
- Prometheus
- Prometheus pulls metrics from Kafka, ZooKeeper and Kafka Connect clusters. The Prometheus Alertmanager plugin handles alerts and routes them to a notification service.
- Kafka Exporter
- Kafka Exporter adds additional Prometheus metrics.
- Grafana
- Grafana Labs provides dashboard visualizations of Prometheus metrics.
- OpenTelemetry
- OpenTelemetry complements the gathering of metrics data by providing a facility for end-to-end tracking of messages through Streams for Apache Kafka.
- Cruise Control
- Cruise Control monitors data distribution and performs data rebalances, based on workload data, across a Kafka cluster.