2012-06-05 35 views
7

我想关闭Spring 3.1的log4j日志记录,同时为我自己的代码进行调试。如何关闭Spring 3调试日志记录?

我试图坚持这一行到我的log4j.properties:

log4j.category.org.springframework = WARN 

为了得到这个:

# Root Logger Setup: Includes the level of reporting and appenders -> where 
#      log messages get sent            
log4j.rootLogger       = DEBUG,ca,fa 

log4j.category.org.springframework = WARN 

#ca - Console Appender - Send messages to the console 
log4j.appender.ca       = org.apache.log4j.ConsoleAppender 
log4j.appender.ca.layout     = org.apache.log4j.PatternLayout 
log4j.appender.ca.layout.ConversionPattern = [acme]: [%-5p] - %d{yyyy-MMM-dd HH:mm:ss} - %c{1}:%M(): %m%n 



#fa - File Appender - Send messages to a log file 
log4j.appender.fa       = org.apache.log4j.RollingFileAppender 
log4j.appender.fa.File      = acme.log 
log4j.appender.fa.MaxFileSize    = 100KB 
log4j.appender.fa.MaxBackupIndex    = 10 
log4j.appender.fa.Threshold     = DEBUG 
log4j.appender.fa.layout      = org.apache.log4j.PatternLayout 
log4j.appender.fa.layout.ConversionPattern = [%-5p] - %d{yyyy-MMM-dd HH:mm:ss} - %c{2}:%M(): %m%n 

没有运气,虽然切断从春天输出的调试。

预先感谢任何帮助

史蒂夫

回答

1

我想通了这一点。

在我的classpath中,我有一个目录C:\ Classes,为了方便起见,我正在试验一些东西。我在那里有另一个log4.properties文件,它取代了我的WAR中打包的文件,使得它看起来像下面的技术不起作用。我在我的C:\ Classes中重命名了log4.properties,一切都很好。

感谢大家一起看看,感谢Spring Source的人们做了这些必要的工作。我很高兴知道,当我需要调试时,我可以轻松获得广泛的调试级别,而不是仅仅获取黑盒子。

7

是否全部到位的依赖呢?

1.3.2.3使用Log4J的

很多人使用Log4j作为配置和管理目的的日志框架。它的效率和稳定性,实际上是我们在构建和测试Spring时在运行时使用的。 Spring还提供了一些用于配置和初始化Log4j的实用程序,因此它在某些模块中对Log4j具有可选的编译时间依赖性。

要使Log4j使用默认的JCL依赖项(commons-logging),您只需将Log4j放在类路径中,并为其提供一个配置文件(log4j.properties或log4j.xml类路径)。所以对于Maven用户,这是你的依赖声明:

<dependencies> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>3.0.0.RELEASE</version> 
     <scope>runtime</scope> 
    </dependency> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.14</version> 
     <scope>runtime</scope> 
    </dependency> 
</dependencies> 

这里是一个示例log4j.properties用于登录到控制台:

log4j.rootCategory=INFO, stdout 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{2}:%L - %m%n 

log4j.category.org.springframework.beans.factory=DEBUG 
+1

并确保在类路径下没有log4j.xml或log4j.properties文件 – Neron