Spring mvc WebSphere、Log4j和SpringMVC
当服务器启动时,我在控制台中看到所有正确的log4j配置。但是,我没有看到来自spring框架的任何日志消息 另外,我添加了一些输出已定义的记录器的代码,我看到我的spring记录器已定义。为什么我看不到来自spring的任何日志消息Spring mvc WebSphere、Log4j和SpringMVC,spring-mvc,log4j,websphere-7,Spring Mvc,Log4j,Websphere 7,当服务器启动时,我在控制台中看到所有正确的log4j配置。但是,我没有看到来自spring框架的任何日志消息 另外,我添加了一些输出已定义的记录器的代码,我看到我的spring记录器已定义。为什么我看不到来自spring的任何日志消息 Enumeration loggers = Logger.getDefaultHierarchy().getCurrentLoggers(); while( loggers.hasMoreElements()){ Logger logger = (Logg
Enumeration loggers = Logger.getDefaultHierarchy().getCurrentLoggers();
while( loggers.hasMoreElements()){
Logger logger = (Logger) loggers.nextElement();
System.out.println(logger.getName()+","+logger.getLevel());
}
SystemOut O org.springframework,DEBUG
我的web.xml是(log4j/spring部分):
我尝试过的事情:
1) 来自美国的公认答案
2) 我移除了很多我认为可能会干扰log4j的罐子
- 我用slf4j-log4j.jar替换了slf4j-jdk.jar
<appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="conversionPattern" value="%5p %d %C{1} - %m%n" />
</layout>
</appender>
我的log4j.xml(我在JBoss7上使用它)文件中的附带示例:
您需要指定根记录器
<root>
<priority value="info"/>
<appender-ref ref="ConsoleAppender"/>
</root>
此外,正如@Ernestas所说,ConsoleAppender需要
Target
属性。发现缺少的部分是jcl-over-slf4j.jar。一旦我让它工作起来,我就开始撤销我所做的所有其他更改,看看哪些更改是不必要的。最终,这就是我必须做的:
顺便说一句,下面的帖子对识别这些文件很有帮助-我也有同样的问题,我通过添加commons日志的依赖项来解决这个问题。如果这对您也适用,请尝试。下面是我在pom.xml中添加的依赖项
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.3</version>
</dependency>
公用记录
公用记录
1.0.3
<appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="conversionPattern" value="%5p %d %C{1} - %m%n" />
</layout>
</appender>
<?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="consoleAppender" 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 [%t] %-5p %c - %m%n"/>
</layout>
</appender>
<logger name="org.springframework" additivity="false">
<level value="debug"/>
<appender-ref ref="consoleAppender"/>
</logger>
<root>
<level value="WARN"/>
<appender-ref ref="consoleAppender"/>
</root>
</log4j:configuration>
<root>
<priority value="info"/>
<appender-ref ref="ConsoleAppender"/>
</root>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.3</version>
</dependency>