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

控制台输出大量DEBUG日志如何关闭?配置无效求排查

问题原因及解决方案

核心问题

你的日志输出显示当前使用Log4j2作为日志实现(org.jboss.logging.Log4j2LoggerProvider),但你尝试的两种配置方式都是针对Spring Boot默认日志框架(如SLF4J+Logback)的,对Log4j2不生效,所以DEBUG日志依然会输出。

具体解决方法

方法1:添加Log4j2专属配置文件

在项目src/main/resources目录下创建log4j2.xml配置文件,指定对应包的日志级别:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <!-- 配置Hibernate日志级别为INFO -->
        <Logger name="org.hibernate" level="INFO" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
        <!-- 配置Spring框架日志级别为INFO -->
        <Logger name="org.springframework" level="INFO" additivity="false">
            <AppenderRef ref="Console"/>
        </Logger>
        <!-- 根日志级别设为INFO -->
        <Root level="INFO">
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

保存后重启项目,DEBUG日志会被自动过滤。

方法2:使用Log4j2专属系统参数

如果不想添加配置文件,直接替换运行参数为Log4j2的格式:

-Dlog4j2.logger.org.hibernate=INFO -Dlog4j2.logger.org.springframework=INFO -Dlog4j2.rootLogger.level=INFO

额外说明

你hibernate.cfg.xml里的show_sql=true和format_sql=true是独立的SQL打印配置,和日志级别无关。如果不想看到SQL输出,将这两个属性改为false即可;仅关闭DEBUG日志无需修改这两项。

内容的提问来源于stack exchange,提问作者стасевич

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 06:25:19