KafkaOffsetMonitor是有由Kafka开源社区提供的一款Web管理界面,这个应用程序用来实时监控Kafka服务的Consumer以及它们所在的Partition中的Offset,你能够经过浏览当前的消费者组,而且每一个Topic的全部Partition的消费状况均可以观看的一清二楚。它让咱们很直观的知道,每一个Partition的Message是否消费掉,有木有阻塞等等。java
这个Web管理平台保留的Partition、Offset和它的Consumer的相关历史数据,咱们能够经过浏览Web管理的相关模块,清楚的知道最近一段时间的消费状况。app
该Web管理平台有如下功能:spa
1.对Consumer的消费监控,并列出每一个Consumer的Offset数据3d
2.保护消费者组列表信息code
3.每一个Topic的全部Partition列表包含:Topic、Pid、Offset、LogSize、Lag以及Owner等等orm
4.浏览查阅Topic的历史消费信息blog
GitHub上面有源码的jar包,放到对应的目录就能够了,因为咱们使用新版本的kafka,因此也要使用最新的代码,在kafka中国社区能够下载最新的0.3的版本。地址:http://pan.baidu.com/s/1kUZJrCV
资源
KafkaOffsetMonitor的安装部署较为简单,全部的资源都打包到一个JAR文件中了,所以,直接运行便可,省去了咱们去配置。这里咱们能够新建一个目录单独用于Kafka的监控目录,我这里新建一个kafka_monitor文件目录,而后咱们在准备启动脚本文档
脚本内容以下所示:部署
java -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar
com.quantifind.kafka.offsetapp.OffsetGetterWeb --offsetStorage kafka --zk localhost:2181 --port 7070 --refresh 10.seconds --retain 2.days
nohup java -Xms512M -Xmx512M -Xss1024K -XX:PermSize=256m -XX:MaxPermSize=512m -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar
com.quantifind.kafka.offsetapp.OffsetGetterWeb --offsetStorage kafka --zk 127.0.0.1:2181 --port 8080 --refresh 10.seconds --retain 2.days 1>mobile-logs/stdout.log 2>mobile-logs/stderr.log &
kafka能灵活地管理offset,能够选择任意存储和格式来保存offset。KafkaOffsetMonitor目前支持如下流行的存储格式。
KafkaOffsetMonitor每一个运行的实例只能支持单一类型的存储格式。