快速业务通道

Log4j配置文件以及配置方法 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
如:%d{yyy MMM dd HH:mm:ss , SSS},输出类似:2002年10月18日  22 : 10 : 28 , 921     %l  输出日志事件的发生位置,包括类目名、发生的线程,以及在代码 中的行数。举例:Testlog4.main(TestLog4.java: 10 ) 

2. 在代码中初始化Logger:

1)在程序中调用BasicConfigurator.configure()方法:给根记录器增加一个 ConsoleAppender,输出格式通过PatternLayout设为"%-4r [%t] %-5p %c %x - %m%n",还有根记录器的默认级别是Level.DEBUG.

2)配置放在文件里,通过命令行参数传递文件名字,通过 PropertyConfigurator.configure(args[x])解析并配置;

3)配置放在文件里,通过环境变量传递文件名等信息,利用log4j默认的初始 化过程解析并配置;

4)配置放在文件里,通过应用服务器配置传递文件名等信息,利用一个特殊 的servlet来完成配置。

3. 为不同的 Appender 设置日志输出级别:

当调试系统时,我们往往注意的只是异常级别的日志输出,但是通常所有级别 的输出都是放在一个文件里的,如果日志输出的级别是BUG!?那就慢慢去找吧。

这时我们也许会想要是能把异常信息单独输出到一个文件里该多好啊。当然可 以,Log4j已经提供了这样的功能,我们只需要在配置中修改Appender的 Threshold 就能实现,比如下面的例子:

[配置文件]

### set log levels ###

log4j.rootLogger = debug , stdout , D , E

### 输出到控制台 ###

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

### 输出到日志文件 ###

log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j.appender.D.File = logs/log.log log4j.appender.D.Append = true log4j.appender.D.Threshold = DEBUG ## 输出DEBUG级别以上的日志 log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ] %m%n

### 保存异常信息到单独文件 ###

log4j.appender.D = org.apache.log4j.DailyRollingFileAppender

 log4j.appender.D.File = logs/error.log ## 异常日志文件名 log4j.appender.D.Append = true log4j.appender.D.Threshold = ERROR ## 只输出ERROR级别以上的日志!!! log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ] %m%n

Log4j配置文件以及配置方法(3)

时间:2011-07-08 csdn博客 newhappy

[代码中使用]

 public  class TestLog4j  {    public  static  void main(String[] args)  {      PropertyConfigurator.configure( " D:/Code/conf/log4j.properties " );      Logger logger = Logger.getLogger(TestLog4j. class );      logger.debug( " debug " );      logger.error( " error " );    } }

运行一下,看看异常信息是不是保存在了一个单独的文件error.log中。

4、对不同的包设置不同输出信息级别

eg:

打印OppenSessionInViewFilter中debug级别信息方法:

log4j.logger.org.springframework.orm.hibernate3.support.OpenSessionI nViewFilter=debug

打印Struts标签中warn级别信息的方法:

log4j.logger.org.apache.struts.util=WARN

原理:

Suppose  we  are  no  longer  interested  in  seeing  the  outpu

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号