尽管isDebugEnabled为true,但控制台中未显示log4j调试消息



我在项目中使用以下代码用log4j 记录调试消息

private static final Logger LOG = Logger.getLogger(MyClass.class)
// ...
if(LOG.isDebugEnabled()) {
    LOG.debug("my log message");
}

我可以通过在写调试消息的行添加一个断点来确认我的log4j配置是正确的,即LOG.isDebugEnabled()确实返回true。有趣的是,我的调试消息没有显示在IDE(IntelliJ(的控制台中,但是当将LOG.debug()更改为LOG.info()时,信息消息会按预期记录。

为了找出这里出了什么问题,我应该寻找什么想法吗?

编辑:这是我的log4j.properties文件

log4j.appender.Stdout=org.apache.log4j.ConsoleAppender
log4j.appender.Stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.Stdout.layout.conversionPattern=%-5p [%d{dd.MM.yy HH:mm:ss}] %C{1} - %m [thread: %t]n
log4j.appender.Stdout.threshold=info
log4j.appender.StandaloneFile=org.apache.log4j.RollingFileAppender
log4j.appender.StandaloneFile.File=logs/standalone.log
log4j.appender.StandaloneFile.MaxFileSize=5MB
log4j.appender.StandaloneFile.MaxBackupIndex=20
log4j.appender.StandaloneFile.layout=org.apache.log4j.PatternLayout
log4j.appender.StandaloneFile.layout.ConversionPattern=%-5p [%d{dd.MM.yy HH:mm:ss}] %C{1} - %m [thread: %t]n
log4j.appender.StandaloneFile.threshold=info
log4j.rootLogger=info, Stdout, StandaloneFile
log4j.logger.com.myPacke.package1=info, Stdout, StandaloneFile
log4j.logger.com.myPacke.package2=DEBUG
log4j.appender.Stdout.threshold=info

应为:

log4j.appender.Stdout.threshold=debug

您只需将控制台阈值设置为info,就不会得到调试级别的日志。

请注意,正如@Stephen C所评论的,您还将RollingFileAppender阈值设置为info。

确保您的配置具有以下appender。。。我们使用了log4j.xml,所以我从xml 添加

<appender name="console" class="org.apache.log4j.ConsoleAppender">
    <param name="Target" value="System.out" />
    <param name="Threshold" value="info" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%-5p: %c - %m%n" />
    </layout>
</appender>
<appender name="logfile" class="org.apache.log4j.RollingFileAppender">
    <param name="File" value="log/dcm_migration.log" />
    <param name="Append" value="false" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d  %-5p  [%c{1}] %m %n" />
    </layout>
</appender>

最新更新