- 使用 kafka-run-class 指令,获取topic的最小offset和最大offset
- #查看各个分区的最小offset(这个意思就是,这个offset之前的消息已经被清除了,现在consumer是从这个offset之后开始消费):
bash
./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic topic的名字 --time -2
- #查看各个分区的最大offset(这个意思就是,producer下一次写入信息时的offset):
bash
./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic topic的名字 --time -1
- 获取最近N条数据,offset = MaxOffset - N;比如想要获取最近10条数据,根据上一步的命令得到:MaxOffset为3639,那么offset则为:3639 - 2 = 3637
bash
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic xxx --property print.key=true --partition 0 --offset 3637
- 查看最近几条的数据
bash
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic <topic_name> --from-beginning --max-messages <num_messages>