Я пытаюсь запустить DoctorKafka , чтобы решить, был ли это правильный выбор для брокеров балансировки нагрузки в Kafka.
Я изо всех сил пытался запустить сборщик метрик Kafka на брокере . У меня есть кластер Kafka, работающий локально с 3 брокерами на локальном хосте (на портах 9092-9094)
Это команда, которую я использую для запуска, сохраненного в start. sh file.
java -server \
-Dlog4j.configurationFile=file:../config/log4j2.xml \
-cp lib/*:kafkastats-0.2.4.9.jar \
com.pinterest.doctorkafka.stats.KafkaStatsMain \
-broker 127.0.0.1:9092 \
-jmxport 9999 \
-topic brokerstats \
-zookeeper 127.0.0.1:2181/cluster1 \
-uptimeinseconds 3600 \
-pollingintervalinseconds 60 \
-ostrichport 2051 \
-tsdhostport localhost:18126 \
-kafka_config ~/oss/kafka/config/server1.properties \
-producer_config ~/oss/kafka/config/producer1.properties \
-primary_network_ifacename eth0
Итак, когда я запускаю:
sudo ./start.sh
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
zkUrl:127.0.0.1:2181/cluster1
secPro:PLAINTEXT
brokerStr:null
Exception in thread "main" java.lang.NullPointerException
at java.util.Hashtable.put(Hashtable.java:460)
at com.pinterest.doctorkafka.util.OperatorUtil.createKafkaProducerProperties(OperatorUtil.java:239)
at com.pinterest.doctorkafka.stats.KafkaAvroPublisher.<init>(KafkaAvroPublisher.java:62)
at com.pinterest.doctorkafka.stats.KafkaStatsMain.main(KafkaStatsMain.java:135)
Список брокеров пуст. Когда я использую оболочку zookeeper напрямую, я отлично получаю 3 активных брокера.
bin/zookeeper-shell.sh localhost:2181
ls /brokers/ids
[1, 2, 3]
Я поднял проблему также в github. Может ли кто-нибудь попробовать DoctorKafka и посмотреть, что я здесь делаю не так? Любая помощь / указатели действительно приветствуются! Заранее спасибо.