java – Kafka Consumer将过多的DEBUG语句输出到控制台(ecilpse)
作者:互联网
我正在运行一些来自http://www.javaworld.com/article/3060078/big-data/big-data-messaging-with-kafka-part-1.html?page=2的示例代码,并且kafkaconsumer正在根据需要从主题中消耗,但每次轮询都会导致许多调试日志的打印(到标准输出),这是我不想要的.
我已经尝试在/config/log4j.properties中将所有INFO和DEBUG更改为ERROR(甚至确实是grep以确保),特别是设置log4j.logger.kafka = ERROR,kafkaAppender,但问题仍然存在.我提到了How to configure logging for Kafka producers?,并采用了那里的解决方案,但消费者的情况可能也不同?
DEBUG消息都具有类似的格式:
[Thread-0] DEBUG org.apache.kafka.clients.consumer.internals.Fetcher - Sending fetch for partitions... to broker... (id: 0 rack: null)
并且以每秒10左右的速度出现(将轮询参数更改为1000甚至10000并没有帮助,我试过)
真的很感谢任何专家的帮助.提前致谢!
编辑:不确定是否重要,但我添加了BasicConfigurator.configure();到我的主要方法,解决之前发生的一些其他错误,阻止消费者甚至开始.
解决方法:
只需修改chatty类的日志记录级别(聊天交互).
因为在日志中,您会看到源自org.apache.kafka.clients.consumer.internals.Fetcher的日志条目,您只需通过向log4j.properties添加以下行来调整该记录器的日志记录级别:
log4j.logger.org.apache.kafka.clients.consumer.internals.Fetcher=WARN
…或任何更广泛的捕获记录器,因为它们是名称间隔:
# adjusting logging for entire Kafka
log4j.logger.org.apache.kafka=WARN
希望这可以帮助
标签:kafka-consumer-api,java,logging,apache-kafka,log4j 来源: https://codeday.me/bug/20190724/1523044.html