【问题标题】:How to determine a Kafka consumer's offset如何确定 Kafka 消费者的偏移量
【发布时间】:2017-07-22 00:41:51
【问题描述】:

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

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

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

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

【问题讨论】:

  • 代理的日志(即日志文件)中没有任何内容包含此信息。请参阅 Sönke Liebau 的回答,了解如何找到您正在寻找的信息。

标签: apache-kafka spring-kafka


【解决方案1】:

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

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

CMAK: Cluster Manager on github

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

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

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

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

      查看 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 是 Kafka 更新版本的一部分吗?我们使用的是 2.11-0.9.0.1。
      • 据我所知,这是在0.9.0.0 中介绍的,因此您应该可以使用。
      • 啊,他们好像错过了为此创建.bat 文件版本。我在本地创建了自己的 (as someone has since added this to the project)。再次感谢您。
      • 来自输出:The [new-consumer] option is deprecated and will be removed in a future major release.The new consumer is used by default if the [bootstrap-server] option is provided.
      猜你喜欢
      • 1970-01-01
      • 2019-04-04
      • 1970-01-01
      • 2019-01-19
      • 2022-11-13
      • 1970-01-01
      • 2017-01-01
      • 1970-01-01
      • 2015-11-30
      相关资源
      最近更新 更多