2015-09-21 3 views
10

Мне нужно узнать, как задать вопрос Кафке. Я знаю, что могу сделать это, используя сценарий kafka-topics.sh, включенный в каталог bin\. Как только у меня есть этот список, мне нужно, чтобы все потребители по теме. Я не мог найти сценарий в этом каталоге, а также класс в библиотеке kafka-consumer-api, который позволяет мне это делать.Список потребителей Кафки

Причина в том, что мне нужно выяснить разницу между смещением темы и смещениями потребителей.

Есть ли способ достичь этого? Или мне нужно реализовать эту функциональность у каждого из моих потребителей?

ответ

2

Kafka хранит всю информацию в zookeeper. Вы можете просмотреть всю информацию о теме, относящуюся к брокеры-> темы. Если вы хотите, чтобы все темы были программными, вы можете сделать это с помощью Zookeeper API.

Это объясняется подробно ниже ссылки Tutorialspoint, Zookeeper Programmer guide

1

Пользователи высокого уровня зарегистрированы в Zookeeper, поэтому вы можете получить список из ZK, так же как и kafka-topics.sh выбирает список тем. Я не думаю, что есть способ собрать все потребителей; любое приложение, отправляющее несколько запросов на потребление, на самом деле является «потребителем», и вы не можете сказать, выполнены ли они уже.

На стороне потребителя имеется метрика JMX, подвергнутая мониторингу задержек: http://docs.confluent.io/1.0.1/kafka/monitoring.html#consumer-metrics. Кроме того, для мониторинга запаздывания существует Burrow.

21

Используйте kafka-consumer-groups.sh

Например

bin/kafka-consumer-groups.sh --list --bootstrap-server localhost:9092 

bin/kafka-consumer-groups.sh --describe --group mygroup --bootstrap-server localhost:9092 
+2

мы должны использовать --zookeeper не --bootstrap-сервер –

+0

0.9.0.0 версия –

+1

но 0.9.0.0 не древняя версия Кафка :) –

7

вы можете использовать это для 0.9.0.0. версия kafka

./kafka-consumer-groups.sh --list --zookeeper hostname:potnumber 

для просмотра групп, которые вы создали. Это отобразит все имена групп потребителей.

./kafka-consumer-groups.sh --describe --zookeeper hostname:potnumber --describe --group consumer_group_name 

Чтобы просмотреть детали

GROUP, TOPIC, PARTITION, CURRENT OFFSET, LOG END OFFSET, LAG, OWNER