如何确定 Kafka 消费者的偏移量

How to determine a Kafka consumer's offset

我们遇到了一个问题,Kafka 消费者似乎没有收到发布到主题的消息。 (我说 出现 是因为我还没有深究这个问题,我可能是错的。)

我正在为 Apache Kafka 使用 Spring,我的消费者实际上是一个用 @KafkaListener 注释的方法。

这个问题是间歇性的,我无法重新创建它。

有没有办法让我查看 Kafka 代理的日志,或者任何其他工具来帮助我找出消费者的偏移量?我想要具体的证据证明我的消费者是否收到消息。

看看 kafka-consumer-groups 工具,它可用于检查消费者的偏移量和滞后(消费者必须在您 运行 此命令时处于活动状态)。

./kafka-consumer-groups --bootstrap-server 127.0.0.1:9092 --new-consumer --describe --group console-consumer-55936

GROUP                          TOPIC                          PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             OWNER
console-consumer-55936         test                           0          6               6               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           1          1               1               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           2          1               1               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           3          1               1               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           4          2               2               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           5          1               1               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           6          1               1               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           7          2               2               0               consumer-1_/192.168.0.83
console-consumer-55936         test                           8          1               1               0               consumer-1_/192.168.0.83

这应该可以让您跟踪是否实际消耗了任何东西。

除了使用另一个正确且完全有效的答案中描述的 ./kafka-consumer-groups 之外,您还可以使用 Windows GUI 应用程序,它向您显示有关 Consumer_groups 的相同信息以及他们的 offset/lag:

http://www.kafkatool.com/download.html

Apache Kafka 的集群管理器(以前称为 Kafka 管理器)显示消费者偏移量和消费者滞后:

但是详细视图还显示了分区的详细偏移量:

CMAK: Cluster Manager on github

它有很多功能可以管理和监控多个kafka集群, 我们用了很多年,很开心。

正在积极开发中,支持最新版本的kafka。

比kafka命令行运行重,但是docker makes it much easier to setup