本地编写生产者运行后,报错:
log4j:WARN No appenders could be found for logger (kafka.utils.VerifiableProperties).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.
at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:91)
at kafka.producer.Producer.send(Producer.scala:77)
at kafka.javaapi.producer.Producer.send(Producer.scala:33)
at com.jun.kafkaProducer.kafkaProducer.main(kafkaProducer.java:31)
Process finished with exit code 1
解决办法:
一开始尝试把代码中的配置文件
//设置broker对应的主机
props.put("metadata.broker.list", "kafka01:9092");
修改为
props.put("metadata.broker.list", "kafka01:9092");
即把hostname修改为ip,改完后还不行。
后来把C:\Windows\System32\drivers\etc\hosts里的映射文件加上就ok了,
可能是props.put(“metadata.broker.list”, “kafka01:9092”);只能是houstname吧,不让用ip吧