是否可以在 Apache Kafka 中记录所有传入消息

tbo*_*lla 5 apache-kafka

我需要知道是否可以为 Apache Kafka 代理配置日志记录以写入所有生产/消费的主题及其消息。我一直在寻找 log4j.properties 但建议的属性似乎都不能满足我的需要。

提前致谢。

查看 Kafka 生成的日志文件,它们似乎都没有记录不同主题中写入的消息。

更新:不完全是我想要的,但对于任何寻找类似内容的人,我发现: https: //github.com/kafka-lens/kafka-lens它提供了一个友好的 GUI 来查看不同主题的消息。

Mic*_*son 2

我觉得“日志”这个词有些混淆。

当您谈论 log4j 时,我假设您正在谈论我所说的“应用程序日志”。Kafka 不会将其处理的记录写入 application/log4j 日志中。在 Kafka 中,log4j 日志仅用于跟踪错误并提供有关代理正在执行的工作的一些上下文。

另一方面,Kafka 将记录写入其“日志”(Kafka 日志)或从中读取记录。log.dirs它们存储在(默认情况下)指定的路径中/tmp/kafka-logs,并且不能直接读取。如果需要,您可以使用该DumpLogSegments工具读取这些文件,例如:

bin/kafka-run-class.sh kafka.tools.DumpLogSegments \
    -f /tmp/kafka-logs/topic-0/00000000000000000000.log
Run Code Online (Sandbox Code Playgroud)