kafka-cli命令快速分析kafka消息队列

2022-04-08 15:50:25 浏览数 (1)

一、简介

kafka是一种高吞吐量的分布式发布订阅消息系统。生产者发送消息到队列中,消费者消费其中的消息。

kafka-cli是一个python开发的极简消息查询工具,兼容python 2.6 /3.6 。

可以使用pip install kafka-cli命令安装。

也可以直接从github.com/chenwumail/kafka-cli下载源代码直接执行,源代码运行时需要用pip install kafka安装依赖的kafka python客户端包。

二、查看全部topic

代码语言:javascript复制
kafka-cli 127.0.0.1:9092

三、查看topic的partition,以及partition的最小、最大offset

代码语言:javascript复制
kafka-cli 127.0.0.1:9092 topic1

四、查询partition中offset处的消息

代码语言:javascript复制
kafka-cli 127.0.0.1:9092 topic1 0 0

命令行中第一个0是指partition,第二个0是offset,省略了limit,默认只显示1条消息。

代码语言:javascript复制
kafka-cli 127.0.0.1:9092 topic1 0 5 3

limit为3,显示offset=5开始的3条消息。

五、查询指定时间开始的消息

代码语言:javascript复制
kafka-cli 127.0.0.1:9092 topic1 0 '2019-08-08 02:01:01' 5

第一个0是partition,中间的时间表示从该时间开始的消息,后面的5是limit,表示最多显示5条消息

六、向指定topic发送一条消息

代码语言:javascript复制
kafka-cli 127.0.0.1:9092 topic1 11 send "key-first" "hello jack!"

11表示string类型的key, string类型的value,key是"key-first", value是"hello jack!"

key-value-type: 0 none, 1 string, 2 int, key-type * 10 value-type (11 string key and value, 1 only string value, 20 only int key)

代码语言:javascript复制
kafka-cli 127.0.0.1:9092 topic1 2 send 999

2表示key为none,value是int类型的999。

七、获取帮助

代码语言:javascript复制
kafka-cli

不带任何参数,会显示帮助信息。另外,在命令行参数个数出错时,也会显示一行错误信息,再在后面显示帮助信息。

0 人点赞