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