You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 2.0中如何关闭Kafka ProducerConfig配置日志输出?

解决Spring Boot 2.0下Kafka ProducerConfig日志输出问题

我之前也碰到过这个烦人的问题——Kafka客户端在初始化Producer的时候,总会默认打印一堆INFO级别的ProducerConfig配置详情,在Spring Boot环境下如果没针对性配置日志规则,这个日志会每次发送消息都跳出来。下面给你几种可行的解决方法:

方法一:直接通过Spring Boot配置文件调整

这是最简单的方式,不需要修改日志框架的配置文件,直接在application.yml或者application.properties里添加日志级别配置:

使用application.yml

logging:
  level:
    org.apache.kafka.clients.producer.ProducerConfig: WARN

使用application.properties

logging.level.org.apache.kafka.clients.producer.ProducerConfig=WARN

原理很简单:我们把org.apache.kafka.clients.producer.ProducerConfig这个类的日志级别从默认的INFO调高到WARN(或者你也可以设为ERROR),这样INFO级别的配置详情日志就会被过滤掉。如果之后需要排查Kafka生产者的配置问题,再把级别改回INFO就行。

方法二:通过Logback配置文件定制

如果你项目里用的是Logback作为日志框架(Spring Boot默认就是Logback),可以在logback-spring.xml(或者logback.xml)里添加专门的logger规则:

<configuration>
    <!-- 其他原有配置 -->
    
    <logger name="org.apache.kafka.clients.producer.ProducerConfig" level="WARN" additivity="false">
        <appender-ref ref="CONSOLE"/> <!-- 这里替换成你实际使用的appender名称,比如FILE等 -->
    </logger>
</configuration>

设置additivity="false"是为了避免这个类的日志被父logger重复处理,确保只按照你指定的规则输出。

方法三:通过Log4j2配置文件定制

如果你的项目用的是Log4j2作为日志框架,在log4j2-spring.xml(或者log4j2.xml)里添加如下配置:

<Configuration>
    <!-- 其他原有配置 -->
    
    <Logger name="org.apache.kafka.clients.producer.ProducerConfig" level="WARN" additivity="false">
        <AppenderRef ref="Console"/> <!-- 对应你项目中的appender -->
    </Logger>
</Configuration>

这样同样可以抑制ProducerConfig的INFO级日志输出。

内容的提问来源于stack exchange,提问作者stalary

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:15:48