Kafka跟踪消费者进度

时间:2018-11-07 16:23:42

标签: apache-kafka kafka-consumer-api

我有一个Kafka主题和四个消费群体。在每个组中,可以有不同数量的节点使用。不同群体的消费速度可能不同,有些群体可能落后,但我想知道这种情况是否发生以及落后多远。我想跟踪每个小组在使用该主题方面的距离。我可以获取每个使用者的偏移量并将其写入指标吗?否则偏移量不是一个很好的指示,因为它在各个分区之间可能有所不同,因此我需要做一些不同的事情。顺便说一下,会有很多分区。

还有其他事情我可以做,但是如果有更简单的方法,我宁愿不更改有效负载以添加计数器或时间戳吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您要测量消费者滞后。有几种获取此信息的方法,包括(但不限于):

  • 监视的外部服务,您可以直接查询-https://github.com/linkedin/Burrow
  • Kafka附带了可显示此信息的命令行实用程序。具体来说, kafka-consumer.groups.sh 具有一个--offsets选项,该选项将显示最新主题以及消费者滞后时间。
  • 您可以以编程方式查询Kafka以获取最新的偏移量以及每个消费者组的最新消耗的偏移量。