Java 关于log4j2.0配置

Java 关于log4j2.0配置,java,log4j2,Java,Log4j2,我试图在一个项目中使用log4j2进行日志记录。我的名为log4j2.xml的conf文件直接位于java项目下,我在类路径中有必要的JAR。 当我使用下面的conf文件测试日志记录是否正常工作时,我只看到错误消息,尽管我也希望看到信息消息。有人知道这里有什么问题吗 log4j2.xml <?xml version="1.0" encoding="UTF-8"?> <configuration> <properties> <pro

我试图在一个项目中使用log4j2进行日志记录。我的名为log4j2.xml的conf文件直接位于java项目下,我在类路径中有必要的JAR。 当我使用下面的conf文件测试日志记录是否正常工作时,我只看到错误消息,尽管我也希望看到信息消息。有人知道这里有什么问题吗

log4j2.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <properties>
        <property name="servicename">m2mp_checker</property>
        <property name="patternTime">%d{yyyy-MM-dd HH:mm:ss.SSS} | %-5.5p | %-10.10t | %-20.20C:%-5.5L | %msg%n</property>
        <property name="patternNoTime">%-5.5p | %-10.10t | %-20.20C:%-5.5L | %msg%n</property>
    </properties>
    <appenders>
        <Console name="console" target="SYSTEM_OUT">
            <PatternLayout pattern="${patternTime}"/>
        </Console>
    </appenders>
    <loggers>
        <root level="INFO">
            <appender-ref ref="console"/>
        </root>
    </loggers>
</configuration>
输出:

11:27:45.873 [main] ERROR test.Tester - error

我想你忘了设置
${patternTime}


如下设置:
System.setProperty(“patternTime”,即您的\u patternTime)

最终解决了它。问题是log4j没有加载我的配置文件(log4j2.xml)并使用默认配置,我想这会将记录器设置为错误级别。感谢您的回复。

上传您的源代码,您可以在其中调用logger.info(“info”);好的,我做了。顺便说一句,当我调试时,我看到logger.info行正在工作,但是因为logger.isInfoEnabled()为此返回false没有日志写入内容。好的,你正在日志文件中写入消息吗?“patternTime”在log4j2.xml的属性部分中,我已经用%d{yyyyy-MM-dd HH:MM:ss.SSS}定义了patternTime|%-5.5p |%-10.10t |%-20.20C:%-5.5L |%msg%n.那么这条线做什么?
11:27:45.873 [main] ERROR test.Tester - error