我有一个使用Spring 4.2.5和log4j 2.1的Web应用程序(使用maven创建)
log4j配置文件位于:
/proj/src/main/resources/log4j2.xml
看起来像log4j设置正确,我能够很好地看到我的类中的日志(com.my.project.classes)
当我在我的类中使用log4j记录器时:
private static Logger logger = LogManager.getLogger(MyController.class);
问题是我无法看到来自org.springframework的日志消息,
我看到文件和目录都创建了C:/tmp/log2/Log.html和C:/tmp/log1/Log.html
但只有C:/tmp/log1/Log.html会有消息 - 其他log / html文件将保持为空
我做错了什么?
这是我的log4j2.xml:
<Property name="fileName">C:/tmp/log1/Log.html</Property>
<Property name="fileName2">C:/tmp/log2/Log.html</Property>
...
<RollingFile name="MyRollingFile" fileName="${fileName}" filePattern="${fileNamePattern}">
<HTMLLayout charset="UTF-8" pattern="${logPattern}"/>
<Policies>
<TimeBasedTriggeringPolicy/>
<SizeBasedTriggeringPolicy size="10MB"/>
</Policies>
<DefaultRolloverStrategy max="10"/>
</RollingFile>
<RollingFile name="MyRollingFile2" fileName="${fileName2}" filePattern="${fileNamePattern}">
<HTMLLayout charset="UTF-8" pattern="${logPattern}"/>
<Policies>
<TimeBasedTriggeringPolicy/>
<SizeBasedTriggeringPolicy size="10MB"/>
</Policies>
<DefaultRolloverStrategy max="10"/>
</RollingFile>
<Logger name="com.my.project.classes" level="debug" additivity="false">
<AppenderRef ref="MyRollingFile"/>
</Logger>
<Logger name="org.springframework" level="debug" additivity="false">
<AppenderRef ref="MyRollingFile2"/>
</Logger>
答案 0 :(得分:0)
Spring使用Apache Commons Logging。为了查看Spring的日志事件,您需要包含log4j-jcl jar。