如何为Tomcat设置Spring日志

Him*_*dav 4 spring log4j spring-mvc

使用Spring MVC而没有Spring日志使得调试变得困难.我已经阅读了关于这个问题的其他几篇文章,似乎没有人帮助我. log4j.propertiessrc文件夹中.slf4j-api-1.5.11,slf4j-log4j12-1.5.11,slf4j-simple-1.5.11,commons-logging-1.1.jarlog4j-1.2.16.jar罐子在classpath.
Log4j的内容是:

log4j.rootLogger=INFO, console


# Console appender
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
log4j.throwableRenderer=org.apache.log4j.EnhancedThrowableRenderer
Run Code Online (Sandbox Code Playgroud)

但我在控制台中看不到任何Spring日志.

注意:使用Spring 3.1

Sit*_*hsu 10

删除commons-logging-1.1.jar并添加jcl-over-slf4j-1.5.11.jar,因为您需要所有日志记录调用通过slf4j然后由log4j处理.

此外,您需要在log4j.properties中为spring添加记录器,如下所示.log4j.properties需要最终进入tomcat/webapps/<application>/WEB-INF/classes.

#Spring Framework
log4j.logger.org.springframework=INFO
log4j.logger.org.springframework.oxm=INFO
log4j.logger.org.springframework.transaction=WARN
Run Code Online (Sandbox Code Playgroud)

Maven依赖项需要包含类似于以下的条目(取自使用SLF4J部分).
请注意排除commons-logging和包含jcl-over-slf4j.

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>3.1.2.RELEASE</version>
  <scope>runtime</scope>
  <exclusions>
     <exclusion>
       <groupId>commons-logging</groupId>
       <artifactId>commons-logging</artifactId>
     </exclusion>
  </exclusions>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>jcl-over-slf4j</artifactId>
  <version>1.7.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-log4j12</artifactId>
  <version>1.7.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <groupId>log4j</groupId>
  <artifactId>log4j</artifactId>
  <version>1.2.14</version>
  <scope>runtime</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)