Java 无法打印文件中的调试语句

Java 无法打印文件中的调试语句,java,Java,我在java应用程序中使用log4j来记录消息。log4j-1.2.17.jar是使用的jar文件。下面是日志文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>

我在java应用程序中使用
log4j
来记录消息。
log4j-1.2.17.jar
是使用的jar文件。下面是日志文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>

        <appender name="console" class="org.apache.log4j.ConsoleAppender">
            <param name="Target" value="System.out" />
            <param name="Threshold" value="debug" />
            <layout class="org.apache.log4j.PatternLayout">
                 <param name="ConversionPattern" value="%d %-5p %c{1}:%L %m %n" />
            </layout>
        </appender>

        <appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
            <param name="Threshold" value="INFO" />
            <param name="Threshold" value="debug" />
            <param name="maxFileSize" value="10MB" />
            <param name="maxBackupIndex" value="10" />
            <param name="file" value="D/logs/projectLog.log"/>
            <param name="append" value="true" />
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L %m %n" />
            </layout>
        </appender>

    <root>
        <priority value="info"></priority>
        <appender-ref ref="fileAppender" />
    </root>

</log4j:configuration>

在我的日志文件中,我只能看到正在打印的信息和错误消息。调试语句在哪种情况下打印?如何使日志语句打印调试语句?任何建议都会很有帮助。

将根目录的优先级值从“info”更改为“debug”:


这将配置根日志记录器,以便将级别为“DEBUG”或更高的日志消息发送到appender“fileAppender”。然后,“fileAppender”可以设置它想要记录的阈值(调试、信息、警告等)


注意:appender的“threshold”参数是可选的。如果省略它,appender将以根记录器定义的级别进行日志记录。如果有多个附加器,则可以使用“阈值”。例如:控制台appender的DEBUG和文件appender的INFO。

检查logging.properties文件。在这里,您可以将日志记录级别设置为DEBUG。在上面的fileAppender xml blurb中,“Threshold”参数设置了两次。一个设置为INFO,另一个设置为debug。可能是“信息”覆盖了“调试”?@MonicaGranbois-这是我的试用版,最初我只使用过一次,但我仍然看不到日志文件中打印的调试消息。请尝试使用大写的debug或TRACE
LOGGER.info("In TestMVCController, logger info");
System.out.println("is debug enabled" +  LOGGER.isDebugEnabled());//always false even when server is started in debug mode
LOGGER.debug("In TestMVCController, logger debug");
LOGGER.error("In TestMVCController, logger errror");
<root>
    <priority value="debug"></priority>
    <appender-ref ref="fileAppender" />
</root>