67 lines
4.3 KiB
Markdown
67 lines
4.3 KiB
Markdown
---
|
|
id: kafka_promql
|
|
title: Monitoring Kafka-PromQL
|
|
sidebar_label: Kafka-PromQL
|
|
keywords: [ Open Source Monitoring System, Open Source Middleware Monitoring, Kafka Monitoring, Kafka-PromQL Monitoring ]
|
|
---
|
|
|
|
> Monitor Kafka by querying generic metrics data from Prometheus server using Prometheus PromQL. This approach is suitable when Prometheus is already monitoring Kafka and you need to fetch Kafka's
|
|
> monitoring data from Prometheus server.
|
|
|
|
## Prerequisites
|
|
|
|
1. Deploy Kafka.
|
|
2. Deploy kafka_exporter.
|
|
3. Collect monitoring metrics exposed by kafka_exporter through Prometheus.
|
|
|
|
### Configuration Parameters
|
|
|
|
| Parameter Name | Parameter Description |
|
|
|---------------------|----------------------------------------------------------------------------------------------------------------------------|
|
|
| Monitoring Host | IP, IPv6, or domain name of the target being monitored. Note ⚠️: Do not include protocol header (e.g., https://, http://). |
|
|
| Monitoring name | Name to identify this monitoring, ensuring uniqueness of names. |
|
|
| Port | Prometheus API port, default: 9090. |
|
|
| Relative path | Relative path of Prometheus to query PromQL, default: /api/v1/query |
|
|
| Request mode | Set the request method for API calls: GET, POST, PUT, DELETE, default: GET |
|
|
| Enable HTTPS | Whether to access the website via HTTPS, note ⚠️: enabling HTTPS generally requires changing the corresponding port to 443 |
|
|
| Username | Username for Basic or Digest authentication when accessing the API. |
|
|
| Password | Password for Basic or Digest authentication when accessing the API. |
|
|
| Content-Type | Resource type when carrying BODY request data. |
|
|
| Request BODY | Set the BODY request data, effective for PUT and POST request methods. |
|
|
| Collection interval | Interval for periodic data collection in seconds, the minimum interval that can be set is 30 seconds |
|
|
| Description remarks | Additional remarks and descriptions for this monitoring. Users can add notes here. |
|
|
|
|
### Metrics Collection
|
|
|
|
#### Metric Set: kafka_brokers
|
|
|
|
| Metric Name | Metric Unit | Metric help description |
|
|
|-------------|-------------|--------------------------------------|
|
|
| __name__ | None | Metric name |
|
|
| instance | None | Instance to which the metric belongs |
|
|
| timestamp | None | Timestamp of metric collection |
|
|
| value | None | Metric value |
|
|
|
|
#### Metric Set: kafka_topic_partitions
|
|
|
|
| Metric Name | Metric Unit | Metric help description |
|
|
|-------------|-------------|--------------------------------------|
|
|
| __name__ | None | Metric name |
|
|
| instance | None | Instance to which the metric belongs |
|
|
| timestamp | None | Timestamp of metric collection |
|
|
| value | None | Metric value |
|
|
|
|
#### Metric Set: kafka_server_brokertopicmetrics_bytesinpersec
|
|
|
|
| Metric Name | Metric Unit | Metric help description |
|
|
|-------------|-------------|--------------------------------------|
|
|
| __name__ | None | Metric name |
|
|
| instance | None | Instance to which the metric belongs |
|
|
| timestamp | None | Timestamp of metric collection |
|
|
| value | None | Metric value |
|
|
|
|
### Other Kafka Monitoring Methods Supported by HertzBeat
|
|
|
|
1. If Kafka is enabled with JMX monitoring, you can use [Kafka](kafka) Monitoring.
|
|
2. If Kafka cluster deploys kafka_exporter to expose monitoring metrics, you can refer to [Prometheus task](prometheus) to configure the Prometheus collection task to monitor kafka.
|