Background: I have searched for a while online, and through the files located in the kafka/logs directory, trying to find where kafka writes log output to in order to debug the SimpleProducer I wrote. My producer is almost identical to the simple producer located here
https://cwiki.apache.org/confluence/display/KAFKA/0.8.0+Producer+Example except for I'm using Protobuffers instead of Strings to publish data to a cluster. I'm receiving the following error when I try to run the SimpleProducer Exception in thread "main" kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries. at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:90) at kafka.producer.Producer.send(Producer.scala:76) at kafka.javaapi.producer.Producer.send(Producer.scala:33) at stream.SimpleProducer.send(Unknown Source) at stream.SimpleProducer.main(Unknown Source) I know this isn't a network problem, because I ran the console-producer and successfully published data to the same broker that my Simple Producer is trying to publish to. I now want to try to debug this error. Question: Where would my Simple Producer write info about its startup and eventual error, such that I can read it and try to reason as to why it failed? If it produces no log data on its own, what is the best way to write this data to a somewhere where I can use it to debug? I've noticed that log4j, which I understand is a often-used library for logging in Java, came with my kafka download. Am I supposed to use log4j for this info? I do not know very much about log4j, so any info on how to get this setup would also be appreciated. -Alex