编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

kafka的beans监控(kafka exporter能监控哪些指标)

wxchong 2024-10-19 15:49:19 开源技术 32 ℃ 0 评论

Kafka是作为一种高吞吐量的分布式发布订阅消息系统,在实际开发中频繁使用,特别是在大数据情况下。因此有对kafka进行监控(官方kafka没有提供图形界面,监控kafka性能需求)

当然第三方有实现kafka性能监控如:

1)Kafka Manager: 都是以表格的形式展现数据,比较方便用来管理kafka,例如topic的创建、删除以及分区的管理等。

2)Kafka Offset Monitor: 监控消费者以及所在分区的offset,帮助分析当前的消费以及生产是否顺畅,功能比较单调但界面还可以。

3)Kafka Web Console:github上已经说明了不再更新了,且建议使用Kafka manager

4)kafkat: 一个简化了的命令行工具,用来管理kafka的broker,partition,topic.

5)Capillary: 如果是kafka+storm集成使用,可以选择该工具,是一个web应用

如果想自己实现kafka监控,将相关数据展示在自己写的程序中,主要思路很简单,通过JMX协议访问kafka将数据返回,进行解析,展示。

这里主要将对kafka的beans进行监控,主要使用到jar有jmxterm-1.0.0-uber.jar,执行命令java -jar mxterm-1.0.0-uber.jar -l 192.168.7.1:9999 -v brief -n < .commands

192.168.7.1 是kafka部署的ip;

9999是kafka的JMX通信端口,在使用JMX监控需要开通这个端口,可以参考https://www.cnblogs.com/30go/p/9274124.html;

.commands为需要执行的命令如:

执行结果:

自己根据过滤返回结果,这里就省略,取对应数值数据。

其中需要注意的有两个地方:

1.有些情况需要先bean对象的bean,再get才能返回结果。

2.kafka版本对应的bean不同。在0.8.1之前的版本bean是有引号的如,"kafka.server":name="AllTopicsMessagesInPerSec",type="BrokerTopicMetrics"。在0.8.2之后版本bean发生改变,kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec。具体可以参考官网的Monitoring章节部分。http://kafka.apache.org/081/documentation.html

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表