如何在java中的kafka中获取消费者组的消费者延迟

Sau*_*abh 3 java apache-kafka kafka-consumer-api confluent-platform

我想知道使用 java 的消费者组的消费者滞后。我尝试过使用

kafka-consumer-groups --describe --bootstrap-server localhost:9092 --group MyGroupName
Run Code Online (Sandbox Code Playgroud)

并且滞后是可见的。

我如何在 Java 中执行此操作?

我尝试过使用org.apache.kafka.clients.admin.AdminClient,但无法获得每个消费者组的延迟。

我在用 confluent 5.0.1 which has kafka 2.0.1 org.apache.kafka - kafka-clients - 2.0.1

Kat*_*ova 7

滞后大约为endOffset-currentOffset. 您可以使用

AdminClient.listConsumerGroupOffsets("MyGroupName").partitionsToOffsetAndMetadata()
Run Code Online (Sandbox Code Playgroud)

获取该组的当前偏移量。要获取结束偏移量,您需要为主题创建 KafkaConsumer 并使用

KafkaConsumer.endOffsets(partitions)
Run Code Online (Sandbox Code Playgroud)