2015-09-21 10 views
10

Muszę znaleźć sposób, aby poprosić Kafkę o listę tematów. Wiem, że mogę to zrobić za pomocą skryptu kafka-topics.sh zawartego w katalogu bin\. Kiedy już będę mieć tę listę, potrzebuję wszystkich konsumentów na temat. Nie mogłem znaleźć skryptu w tym katalogu ani klasy w bibliotece kafka-consumer-api, która pozwala mi to zrobić.Lista konsumentów Kafki

Powodem tego jest konieczność określenia różnicy między offsetem tematu a przesunięciami konsumentów.

Czy istnieje sposób, aby to osiągnąć? Czy muszę wdrożyć tę funkcję u każdego z moich klientów?

Odpowiedz

2

Kafka przechowuje wszystkie informacje w zookeeper. Możesz zobaczyć wszystkie związane z tematem informacje pod brokerów-> tematy. Jeśli chcesz programowo uzyskać wszystkie tematy, możesz to zrobić za pomocą Zookeeper API.

jest wyjaśnione szczegółowo w poniższych linków Tutorialspoint, Zookeeper Programmer guide

1

Konsumenci wysokiego poziomu są zarejestrowani w Zookeeper, więc możesz pobrać listę z ZK, podobnie jak kafka-topics.sh pobiera listę tematów. Nie sądzę, że istnieje sposób na zbieranie wszystkich konsumentów; każda aplikacja wysyłająca w kilku zapytaniach o konsumpcję jest w rzeczywistości "konsumentem" i nie można stwierdzić, czy już to zrobiono.

Po stronie konsumenta jest dostępna metryka JMX w celu monitorowania opóźnienia: http://docs.confluent.io/1.0.1/kafka/monitoring.html#consumer-metrics. Ponadto istnieje Burrow do monitorowania opóźnień.

21

Używaj kafka-consumer-groups.sh

Na przykład

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

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

powinniśmy używać --zookeeper nie --bootstrap-server –

+0

0.9.0.0 0.9.0.0 wersja –

+1

ale nie jest starożytna wersja Kafka :) –

7

można to wykorzystać do 0.9.0.0. wersja kafka

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

aby zobaczyć utworzone grupy. Spowoduje to wyświetlenie wszystkich nazw grup konsumenckich.

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

Aby wyświetlić szczegóły

GROUP, TOPIC, PARTITION, CURRENT OFFSET, LOG END OFFSET, LAG, OWNER 
Powiązane problemy