想監控kafka的offset,主要是想了解生產者和消費者速度是否匹配,就去百度了一下常用的kafka offset監控工具,然後就找到了KafkaOffsetMonitor。
java -cp KafkaOffsetMonitor-assembly-0.2.0-SNAPSHOT.jar com.quantifind.kafka.offsetapp.OffsetGetterWeb –zk zk1:30000,zk2:30000,zk3:30000 –port 8089 –refresh 10.seconds –retain 2.days
但是運行了之後呢,我發現,只能顯示控制檯的消費者,我通過java-api的消費者去看,根本沒有,如下圖所示。
當時我就很納悶,是不是有問題哦,然後我就去百度,看到了這麼一句話:
kafka0.8版本以前,offset默認存儲在zookeeper中(基於Zookeeper)
kafka0.9版本以後,offset默認存儲在內部的topic中(基於Kafka內部的topic)
所以我曉得了,然後肯定是默認的獨自ZK得了,然後我就又百度,找到了–offsetStorage kafka 這個啓動選項:
java -cp KafkaOffsetMonitor-assembly-0.2.0-SNAPSHOT.jar com.quantifind.kafka.offsetapp.OffsetGetterWeb –offsetStorage kafka –zk zk1:30000,zk2:30000,zk3:30000 –port 8089 –refresh 10.seconds –retain 2.days
然後你會發現,還是不行,是因爲這個版本,不支持offsetStorage這個設置,然後找了找,發現了0.3的版本,試了試0.3版本,可以的,啓動命令如下:
java -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar com.quantifind.kafka.offsetapp.OffsetGetterWeb –offsetStorage kafka –zk zk1:30000,zk2:30000,zk3:30000 –port 8089 –refresh 10.seconds –retain 2.days
啓動成功,然後我打開了ip+port,打開了頁面,如下圖所示:
紅色的線代表每消費的,藍色的線代表生產者message,綠色的代表消費者message,如果紅的爲0,表示消費者生產者速度匹配
這裏給出了KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar下載地址,我自己的下載地址,本來我想不要CSDN幣的,但是最少2個,所以我就只要2個哦
http://download.csdn.net/download/qq_31806205/10178208
ok!