我正在为Kafka的消费者和经纪人设置监控。监视服务器指标似乎相当琐碎,但我对kafka消费者指标感到困惑。
我最初通过编程方式运行consumer-groups.sh descripe group脚本,获得每个分区的主题的使用者延迟。还有一个关于消费者的主题,我相信它也揭示了滞后性。但是我被告知这个滞后值并不准确,我应该通过客户主机上的jmx度量来获取它。有人能证明这是正确的吗?为什么?基本上,我想知道哪种方法是最可靠的方法来找到正确的滞后消费者。
这就是我被告知应该找回的东西:Kafka。consumer:type=consumer-fetch-manager-metrics,client id={client id}属性:records lag max
问题是,如果没有给定端口,不确定如何访问客户机服务器,或者是否有用于此的默认端口?所有kafka客户机是否都注册了jmx指标?
谢谢
1条答案
按热度按时间sbdsn5lh1#
当然,并非所有的消费者都是java客户机,但是对于那些这样的客户机,jmx的指标会得到最直接的更新,因为conusmer知道什么数据被消费,什么时候被消费。消耗的偏移量可以是同步的或异步的,只有这样才会出现在偏移量主题中。
但是,如果您确实希望监视所有客户机的所有消费者组,则可以使用偏移量主题和工具(如linkedin的burrow)轻松获取该信息的RESTAPI。telegraf还有一个插件,用于将数据导出到公制存储中
如果没有给定端口或有默认端口,如何访问客户机服务器
您可以在java客户机上启用jmx,就像在服务器和其他jvm进程上一样。港口是你可以选择的