Tom*_*ino 5 monitoring apache-kafka kafka-consumer-api
我有一个 kafka 设置,其中包含一个到 prometheus 的 jmx 导出器。我正在寻找一个指标,它根据主题和 groupid 给出偏移滞后。我正在运行 kafka 2.2.0。
一些在线资源指向一个名为 的指标kafka.consumer,但我的设置中没有这样的指标。
从我的 jmx 终端:
$>domains
#following domains are available
JMImplementation
com.sun.management
java.lang
java.nio
java.util.logging
jdk.management.jfr
kafka
kafka.cluster
kafka.controller
kafka.coordinator.group
kafka.coordinator.transaction
kafka.log
kafka.network
kafka.server
kafka.utils
Run Code Online (Sandbox Code Playgroud)
但是,我可以使用以下命令查看我需要的数据:
root@kafka-0:/kafka# bin/kafka-consumer-groups.sh --describe --group benchmark_consumer_group --bootstrap-server localhost:9092
Consumer group 'benchmark_consumer_group' has no active members.
TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
benchmark_topic_10B 2 2795128 54223220 51428092 - - -
benchmark_topic_10B 9 4 4 0 - - -
benchmark_topic_10B 6 7 7 0 - - -
benchmark_topic_10B 7 5 5 0 - - -
benchmark_topic_10B 0 2834028 54224939 51390911 - - -
benchmark_topic_10B 1 15342331 54222342 38880011 - - -
benchmark_topic_10B 4 5 5 0 - - -
benchmark_topic_10B 5 6 6 0 - - -
benchmark_topic_10B 8 8 8 0 - - -
benchmark_topic_10B 3 4 4 0 - - -
Run Code Online (Sandbox Code Playgroud)
但这无济于事,因为我需要根据指标进行跟踪。此外,该命令的执行时间大约为 25 秒,因此用作指标来源是不合理的。
我的猜测是该指标kafka.consumer在 2.2.0 版中不存在并被替换为另一个。虽然,我无法在网上找到任何资源,其中包含有关如何以及从何处获取该指标的最新信息
你可以试试Kafka Minion ( https://github.com/cloudworkz/kafka-minion )。虽然 Kafka Minion 在内部的工作方式与 Burrow 类似(消耗 __consumer_offsets 主题用于消费者组偏移),但它对您的用例有几个优势
对于您的案例,Kafka Minion 比 Burrow 的优势:
免责声明:我是 Kafka Minion 的作者,我仍在寻找其他用户的更多反馈。我打算为我的项目、我工作的公司和社区积极维护和发展出口商。
使用kafka-consumer-groups.shshell 脚本回答有关您所看到内容的问题。这不会起作用,因为它无法报告不活跃的消费者的滞后,这有点适得其反。
小智 5
该kafka.consumerJMX指标只存在于消费者的过程本身,而不是在卡夫卡经纪人处理。请注意,您不会kafka.consumer使用 Java 以外的消费者库从消费者那里获得指标。
目前,Kafka 代理本身没有用于消费者延迟的可用 JMX 指标。还有其他通常用于监控消费者滞后的解决方案,例如LinkedIn 的Burrow。还有一些开源项目,例如kafka9.offsets,它们通过 JMX 公开消费者滞后指标,但可能不会更新以使用最新的 Kafka。
| 归档时间: |
|
| 查看次数: |
7141 次 |
| 最近记录: |