温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
提示:代码块部分可以左右滑动查看噢
1.文档编写目的
在我们的应用程序消费Kafka的Topic消息时,我们会关注Topic中消息总量以及消费情况,那接下来Fayson就主要介绍下如何在CDH集群中使用命令行的方式查看Topic的消费情况。
- 本次Fayson的测试环境为
1.CM和CDH版本为5.15
2.Redhat7.4
3.Kafka 0.10.2+kafka2.2.0
2.命令行查看
在Kafka的脚本里提供了kafka-run-class.sh的脚本,使用该脚本查看Consumer组内消费Topic的Offset情况。
1.在命令行执行如下命令查看指定Topic及ConsumerGroup的消费情况
第一次执行查看到kafka_kudu_topic_offset_3的testgroup组各个Partition的Offset消费情况以及每个Partition的总消息量。
2.kafka_kudu_topic_offset_3的Topic发送600条消息,再次执行命令查看消费情况
此时没有消费的应用运行,可以看到Offset的数据未发生变化,而logSize的数据量有增加,每个partition的数量增加200条,刚好为我发送的消息数量。
3.启动消费程序消费Topic的消息,再次执行命令查看消费情况
在消费应用运行时,每个Partition的Offset数据发生变化,此时的Offset的数据与logSize的数据一致,在应用日志中也无新的消息接收,说明Topic的消息已被testgroup组消费完。
3.总结
查看某个Topic指定组的消息消费情况计算方式:
消费的消息量计算方式:
topic_partition1 offset + topic_partition2 offset +… + topic_partition_n offset
Topic总消息数量计算方式:
topic_partition1 logSize + topic_partition2 logSize +… + topic_partition_n logSize
未消费消息数量计算方式:
Topic总消息数量-消费的消息量
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。
原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操