Kum*_*hav 3 java jmx apache-kafka prometheus
我已经在本地启动了 Kafka 代理实例,并使用 jmx_prometheus_javaagent 作为 java 代理。
我对给定主题的当前消息传入率感兴趣,并在 Grafana 仪表板中呈现相同的消息率。在 jconsole 中探索 MBean,我可以看到有一个名为kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec,topic=ABCD
以 MeanRate、OneMinuteRate、Count 等属性命名的对象,这似乎符合我的目的:-
为了尝试我的设置,我使用一个简单的 KafkaProducer 向本地 kafka 代理发送非常小的消息,该消息能够在不到 5 秒的时间内发送 100 万条消息,然后停止。对于这个实验,我预计在这 5 秒内会看到 MeanRate 出现峰值,然后又回到 0。
问题
即使没有消息传入(生产者已停止),在生产者停止发送消息很久之后,我也会看到 MeanRate 的值不为零:-
同样在普罗米修斯图中反映为:-
普罗米修斯配置:-
- pattern : kafka.server<type=(.+), name=(.+)PerSec\w*, topic=(.+)><>MeanRate
name: kafka_server_$1_$2_mean_rate
labels:
topic: "$3"
Run Code Online (Sandbox Code Playgroud)
普罗米修斯查询 -floor(kafka_server_brokertopicmetrics_messagesin_mean_rate)
获得准确的消息传入率的正确方法/prometheus-query/mbean 是什么?
您应该在 Prometheus 端使用Count
并获取它。JMX 导出器附带的示例配置文件已经为您选择了正确的rate()
指标。
MeanRate 是自二进制文件启动以来每秒的平均速率,因此它不是很有用。OneMinuteRate、FiveMinuteRate 和 FiveMinuteRate 是指数移动平均线,因此也会随着时间的推移而衰减。
https://www.youtube.com/watch?v=67Ulrq6DxwA提供了有关不同仪器/监控系统处理计数器的各种方式的更多信息。
归档时间: |
|
查看次数: |
8721 次 |
最近记录: |