以下是关于使用jmx exporter采集kafka指标的完整攻略:
什么是 JMX Exporter?
JMX Exporter 是一个自动化采集系统监控指标并将其解析为 Prometheus 指标格式的工具。它允许用户将 JMX 暴露出来的数据转换成 Prometheus 支持的文本格式。
使用 JMX Exporter 采集 Kafka 指标
以下是使用 JMX Exporter 采集 Kafka 指标的步骤:
-
首先下载 jmx-exporter 的jar包。可以从 GitHub Repo Release下载最新的版本。
-
将 jmx-exporter.jar 放在 Kafka 的 bin 目录下,例如:/path/to/kafka/bin 。在 bin 目录下创建配置文件 jmx_prometheus.yml。以下是示例配置文件:
---
startDelaySeconds: 0
port: 9404
hostPort: localhost:9092
lowerCaseOutputName: true
lowercaseOutputLabelNames: true
rules:
- pattern: kafka.*type=BrokerTopicMetrics,*
name: kafka_broker_topic_metrics
- 通过 kafka-server-start.sh 脚本启动 Kafka 服务器
$ ./kafka-server-start.sh ../config/server.properties
- 在启动 Kafka 服务器之前,使用以下命令启动 jmx-exporter。
$ java -javaagent:/path/to/kafka/bin/jmx-exporter.jar=9404:/path/to/kafka/bin/jmx-prometheus.yml -jar /path/to/kafka/bin/kafka-server-start.sh /path/to/kafka/config/server.properties
- 在您的 Prometheus 配置文件中添加以下行:
- job_name: kafka
metrics_path: /metrics
static_configs:
- targets: ['localhost:9404']
- 启动 Prometheus 并在 Prometheus 的 Web UI 中选择 Graph 选项卡,然后在表单栏中键入以下表达式:
sum(kafka_broker_topic_metrics{label_name = label_value})
采集 Kafka 指标的示例
以下是两个示例:
示例 1:采集 Kafka 消费者组消费速率指标
JMX Exporter 对于 Kafka 的消费速率指标使用下面的格式:
kafka.consumer:type=consumer-fetch-manager-metrics,*
在 Prometheus 配置文件中,可以采用以下方式来采集消费速率指标:
- job_name: kafka
metrics_path: /metrics
static_configs:
- targets: ['localhost:9404']
metric_relabel_configs:
- source_labels: [__name__]
regex: kafka_consumer_consumer-fetch-manager-metrics_(.*)
target_label: component
replacement: ${1}
示例 2:采集 Kafka 生产性能指标
JMX Exporter 对于 Kafka 生产性能指标使用下面的格式:
kafka.producer:type=producer-metrics,*
在 Prometheus 配置文件中,可以采用以下方式来采集生产性能指标:
- job_name: kafka
metrics_path: /metrics
static_configs:
- targets: ['localhost:9404']
metric_relabel_configs:
- source_labels: [__name__]
regex: kafka_producer_producer-metrics_(.*)
target_label: component
replacement: ${1}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用jmx exporter采集kafka指标示例详解 - Python技术站