Log4J

[color=red]Log4J[/color]是Apache的一个开放源代码的项目,通过使用Log4j可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是Socket服务器、NT的事件记录器、UNIX Syslog守护进程等;也可以控制每一条日志的输出格式。通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。
最令人兴奋的是,这些可以通过一个配置文件来灵活地进行设置,而不需要修改应用的代码。
此外,通过Log4j其他语言的接口,可以在C,C++,Net,和PL/SQL程序中使用LOG4j,其语法和用法与在JAVA程序中一样,使多语言分布式系统得到一个统一一致的日志组件模块。而且各种第三方扩展软件,可以很方便地将LOG4j集成到j2ee,jini甚至是SNMP应用中。
在这里使用LOG4j的另外一个原因是它是前面所介绍的Commons Logging组件的一个实现工具,也就是说在应用程序中只要使用commons logging 组件所提供的公共的日志处理方法,就可以方便地通过log4j来实现具体的日志输出。
由于在前面已经介绍了Commons Logging组件的方法,在这里所要讲解的关键问题是如何配置LOG4j.
LOG4j的配置信息包括以下三方面的内容:日志信息的优先级、日志信息的输出目的地和日志信息的输出格式。日志信息的优先级从高到低有FATAL,ERROR,WARN,INFO和DEBUG共5个级别,分别用来指定这条日志信息的重要程度。日志信息的输出目的地指定了日志将打印到控制台还是文件中,而输出格式则控制了日志信息的显示内容。
Log4j支持两种配置文件格式,一种是XML格式的文件,一种是JAVA属性文件(键=值)。
下面介绍使用java属性文件作为配置文件的方法。
配置根Logger, 其配置的语法为:
Log4j.rootLogger = [level], appenderName, appenderName…….
其中,level 是日志记录的优先级,可以使用的值为OFF,FATAL,.ERROR,WARN,INFO,DEBUG.ALL
或者是自定义的级别。
其中OFF表示关闭输出日志,ALL表示输出所有的日志信息。
后面的参数appenderName用来指定日志信息输出到哪个地方,可以同时指定多个输出目的地。根据用户的不同需求,还可以定义不同的LOGGER,并且不同的logger可以使用不同的日志输出级别和不同的日志输出的目的地。
配置日志信息输出目的地Appender,其语法为:
[color=darkred]Log4j.appender.appenderName = fully.qualified.name.of.appender.class
Log4j.appender.appenderName.option1 = value1
……..
Log4j.appender.appenderName.option = valueN[/color]其中的log4j.appender.appenderName用于配置Appender的类型,而后面的参数可以用来配置所使用的Appender的参数值。由于使用的Appender不同需要配置的参数是不同的。
Log4j提供一系列默认的Appender,
如下:
Org.apache.log4j.ConsoleAppender(控制台)
Org.apache.log4j.FileAppender(文件)
Org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
Org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
Org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)


配置日志信息的格式(布局)其语法为:
[color=darkred]Log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
Log4j.appender.appenderName.layout.option1 = value1
…..
Log4j.appender.appenderName.layout.option = valueN[/color]其中log4j.appender.appenderName.layout参数用于指定所使用的日志信息的布局类。
后面的参数用于配置该布局类初始化时的参数。具体参数的数量依赖于所使用的布局类。
同样,log4j也提供了一些常用的布局类,有以下几种:
Org.apache.log4j.HTMLLayout (以HTML表格形式布局)
Org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
Org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
Org.apache.log4j.TTCCLayout(包含日产生的时间,线程,类别等信息)

清单log4j的配置
[color=darkred]Log4j.rootLogger=ERROR,CONSOLE
Log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
Log4j.appender.CONSOLE.Target=System.out
Log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
Log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d -%c-%-4r[%t]%-5p %c %x - %m%n[/color]
这个配置文件(log4j.properties)应该放在项目的class目录中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值