将项目特定的日志信息加载到日志文件中

时间:2010-10-20 08:35:44

标签: log4j slf4j

我正在使用Eclipse,我正在创建一个Web项目。我也使用SLF4J将日志存储在日志文件中。

我将log4j.properties文件放入WEB-INF/classes文件夹。

当我访问登录页面时,所有关联的日志和我的调试语句日志都被加载到日志文件中,但是我希望将特定日志(即项目特定日志)加载到日志文件中而不是其他日志。

在日志文件中我可以看到:

10/20/2010 10:16:24 - DEBUG - org.apache.commons.digester.Digester.sax   
.   
10/20/2010 10:16:24 - DEBUG - org.apache.commons.digester.Digester - [ObjectCreateRule]{resource-config/resource}New org.ajax4jsf.javascript.AjaxScript   
.      
10/20/2010 10:16:24 - DEBUG - org.apache.commons.digester.Digester - [ObjectCreateRule]{resource-config/resource}New    
.    
10/20/2010 10:16:24 - DEBUG - org.apache.commons.digester.Digester.sax
.
10/20/2010 10:16:24 - DEBUG - org.apache.commons.digester.Digester - [ObjectCreateRule]{resource-config/resource}New org.ajax4jsf.javascript.AjaxScript
.
10/20/2010 10:16:24 - DEBUG - org.apache.commons.digester.Digester - [ObjectCreateRule]{resource-config/resource}New 
.

有人可以帮我找出如何将特定项目相关日志存储到日志文件中吗?

2 个答案:

答案 0 :(得分:0)

在log4j.properties文件中包含以下内容:

log4j.logger.com.foo.logingubbins=DEBUG, loginfilelogger

log4j.appender.app=org.apache.log4j.RollingFileAppender
log4j.appender.loginfilelogger.File=c:/logs/login.log
log4j.appender.loginfilelogger.layout=org.apache.log4j.PatternLayout
log4j.appender.loginfilelogger.layout.ConversionPattern=%d [%t] %-5p [%c (%F:%L)] %n \t %m %n

第一行告诉记录器为com.foo.logingubbins使用一个新的记录器,你将它导向一个单独的文件。如果您希望它完全分开,您可能还想在其中添加additivity语句。

log4j manual可以为您提供一些有用的示例,但我必须承认有关可加性的信息有点朦胧。

答案 1 :(得分:0)

  Thanks for reply. I added the folowing steps into log4j.properties file

log4j.logger.org.apache.commons.digester = ERROR log4j.category.se.bilprovningen.prippe = DEBUG,R

现在我可以将项目特定的日志存储到日志文件中。

由于 Arvind的