Не удалось найти приложения для регистратора (org.apache.kafka.clients.consumer.ConsumerConfig)

Я пытаюсь подключить Apache Kafka к Apache Flink, создав Kafka Consumer в Scala. Это мой потребительский код:

val properties = new Properties()
properties.setProperty("bootstrap.servers", "localhost:9092")
properties.setProperty("zookeeper.connect", "localhost:2181")
properties.setProperty("group.id", "test")

val env = StreamExecutionEnvironment.getExecutionEnvironment
val stream = env
            .addSource(new FlinkKafkaConsumer09[String]("test", new  SimpleStringSchema(), properties))
            .print
env.enableCheckpointing(5000)

Когда я запускаю эту программу, я получаю предупреждения от log4j, и программа завершается, вывод не отображается. Мой Kafka Producer запущен и работает.

log4j:WARN No appenders could be found for logger (org.apache.kafka.clients.consumer.ConsumerConfig).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

person Piyush Shrivastava    schedule 21.03.2016    source источник
comment
Вы запускаете это из IDE или на внешней установке Flink. В случае внешней установки вы проверяли файлы журналов диспетчера заданий и диспетчера задач? Потоковые программы Flink печатают в ./log/*out файлы диспетчеров задач.   -  person Fabian Hueske    schedule 21.03.2016
comment
@FabianHueske файлы журнала не создаются. Я запускаю это из Eclipse.   -  person Piyush Shrivastava    schedule 21.03.2016


Ответы (1)


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

Причина, по которой вывод не производится, заключается в том, что отсутствует вызов env.execute(), поэтому задание никогда не запускается.

person Robert Metzger    schedule 21.03.2016
comment
Работал! Можете ли вы сказать мне, как добавить log4j в путь к классам? - person Piyush Shrivastava; 21.03.2016
comment
Мой ответ на самом деле неточен: проблема с log4j заключается в том, что в вашем пути к классам, скорее всего, нет файла конфигурации. Чтобы исправить это, добавьте папку ресурсов и поместите в нее файл log4j.properties (убедитесь, что ваша среда IDE правильно распознает папку и добавляет файл в путь к классам). Вы можете использовать этот файл в качестве справки: github.com/apache/flink/blob/master/flink-streaming-connectors/ - person Robert Metzger; 21.03.2016