kafka-consumer-groups.sh 等效?

kafka-consumer-groups.sh equivalent?

我使用的是0.10.2版本。我想知道是否有任何 Kafka java API 可以获取偏移信息,例如使用:

./bin/kafka-consumer-groups.sh --bootstrap-server 192.168.0.28:9092 --describe --group test

因为我想在不使用 CLI 的情况下在我的应用程序中显示所有这些偏移量信息。

我认为 Java 客户端中没有等效项;我刚刚查看了那个脚本,它调用了一个 scala class ConsumerGroupCommand.

我不熟悉 scala,但看起来 class 没有公开实现命令的内部 classes(例如,ZkConsumerGroupService)所以它看起来不像可以从用户应用程序调用。

看起来它无论如何都直接写入标准输出,而不是生成一个包含结果的对象。

我想你可以 运行 它并捕获标准输出...

ConsumerGroupCommand.main(new String[] {"--bootstrap-server", "localhost:9092", 
            "--describe",
            "--group", "test"});

或者,您必须从中提取一堆代码 class。