应用程序日志保存在kafka代理上的哪里?

时间:2019-06-11 11:48:43

标签: apache-kafka

我想这取决于我的配置,但是如何在kafka代理中找到应用程序日志。我想查看警告和错误消息,可能是由于尝试连接失败而导致的。

如果没有默认位置,那么哪个配置定义了位置?

请注意,我并不是指存储消息的实际kafka日志。这种命名使Google很难找到我想要的东西!

1 个答案:

答案 0 :(得分:2)

如果您想查看代理日志,因为Kafka使用Log4j,您可以查看kafka default one使用的log4j.properties。

我不会描述整个文件,但是以下几行显示日志已打印在stdout上,并且日志已附加到文件$ {kafka.logs.dir} /server.log中。 kafka.logs.dir的值是在启动(default one)时从server.properties加载的。

log4j.rootLogger=INFO, stdout, kafkaAppender

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c)%n

log4j.appender.kafkaAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.kafkaAppender.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
log4j.appender.kafkaAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.kafkaAppender.layout.ConversionPattern=[%d] %p %m (%c)%n

但是,取决于您为什么无法连接到代理,您可能永远不会在代理端看到日志,而应该查看客户端的日志(kafka也使用log4j)。