如何获取存储在Zookeeper中的偏移量

时间:2019-02-05 18:57:55

标签: apache-kafka

需要为我们的应用程序(卡夫卡0.10)生成消费者滞后度量标准,其中偏移量存储在zookeeper中。寻找Java API或其他方式来获取存储在zookeeper中的偏移量。

2 个答案:

答案 0 :(得分:0)

如果从命令行尝试,则可以通过以下方式使用kafka-consumer-groups.sh脚本。

bin/kafka-consumer-groups.sh --bootstrap-server <broker> --describe --group <group-name>

它将以以下方式返回数据:

    TOPIC       PARTITION  CURRENT-OFFSET  LOG-END-OFFSET      LAG        CONSUMER-ID                                       HOST                           CLIENT-ID
testtopic-1         0          13164704        13164773        69         test-consumer-bf8d1655-63a6-4061-b680-0f11cdf182e5/100.96.67.0                     test-consumer              
testtopic-1         1          13161581        13161650        69         test-consumer-agent-bf8d1655-63a6-4061-b680-0f11cdf182e5/100.96.67.0               test-consumer   
testtopic-1         2          12229509        12229578        69         test-consumer-bf8d1655-63a6-4061-b680-0f11cdf182e5/100.96.67.0                     test-consumer
testtopic-1         3          86              86              0          test-consumer-agent-bf8d1655-63a6-4061-b680-0f11cdf182e5/100.96.67.0               test-consumer

如果您使用的是Java,则可以使用以下AdminClient.describeConsumerGroups方法:

http://kafka.apache.org/20/javadoc/org/apache/kafka/clients/admin/AdminClient.html#describeConsumerGroups-java.util.Collection-

答案 1 :(得分:0)

感谢Nishu的建议。由于我们正在寻找存储在Zookeeper中的偏移量,因此我们需要使用 bin / kafka-consumer-groups.sh --zookeeper --describe --group

相应的Scala API在

的核心实现中可用

ConsumerGroupCommand.scala