2017-04-02 4 views
2

Ich verwende 0.10.2 Version. Ich mag nicht jeder Kafka Java-API wissen, kann die Offset-Informationen holen wie mit:kafka-consumer-groups.sh entspricht?

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

Da ich in meiner Anwendung all diese Informationen angezeigt werden soll Offset ohne Verwendung der CLI.

Antwort

2

Ich glaube nicht, dass es im Java-Client eine Entsprechung gibt; Ich habe mir nur dieses Skript angeschaut und es ruft eine Scala-Klasse ConsumerGroupCommand auf.

Ich bin nicht vertraut mit Scala, aber es sieht aus wie diese Klasse nicht die internen Klassen (z. B. ZkConsumerGroupService), die den Befehl implementieren, so dass es nicht wie es aus einer Benutzer-App aufgerufen werden kann .

Sieht so aus, als ob es sowieso direkt in stdout schreibt, anstatt ein Objekt mit den Ergebnissen zu erzeugen.

Ich nehme an, Sie es und Capture stdout laufen konnte ...

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

Oder würden Sie eine Reihe von Code aus dieser Klasse heben müssen.

+0

ja, stimme zu. Danke Gary :) –