Log4j的使用总结!(精品收藏)
1 关于log4j的文章---粗略看了一遍,不错!
出处给忘了好像是下面这个:
http://dev2dev.bea.com.cn/bbs/servlet/d2dservlet/download/124-14026-77822-650/深入学习log4j.pdf
深入学习log4j
李翔
内容:
一,log4j配置文件的学习
二,log4j数据库
三,log4j封装
一,log4j配置文件学习:
log4j支持两种配置文件格式,一种是xml格式的文件,一种是java特性文件(键=值).
下面我们首先介绍使用java特性文件做为配置文件的方法:
分析一个配置文件log4j.properties
log4j.rootcategory=debug, stdout, r
log4j.appender.stdout=org.apache.log4j.consoleappender
log4j.appender.stdout.layout=org.apache.log4j.patternlayout
# pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.conversionpattern=%5p [%t] (%f:%l) - %m%n
log4j.appender.r=org.apache.log4j.rollingfileappender
log4j.appender.r.file=example.log
log4j.appender.r.maxfilesize=100kb
# keep one backup file
log4j.appender.r.maxbackupindex=1
log4j.appender.r.layout=org.apache.log4j.patternlayout
log4j.appender.r.layout.conversionpattern=%p %t %c - %m%n
说明:
①log4j.rootcategory = [ level ] , appendername, appendername,
其中,level 是日志记录的优先级,分为off,fatal,error,wa r n,info,debug,
all或者您定义的级别.log4j建议只使用四个级别,优先级从高到低分别是error,
wa r n,info,debug.通过在这里定义的级别,您可以控制到应用程序中相应级别的日
志信息的开关.比如在这里定义了info级别,则应用程序中所有debug级别的日志信息
将不被打印出来.appendername就是指定日志信息输出到哪个地方.您可以同时指定多个
输出目的地.
②配置日志信息输出目的地appender,其语法为
log4j.appender.appendername = fully.qualified.name.of.appender.class
log4j.appender.appendername.option1 = value1
log4j.appender.appendername.option = valuen
其中,log4j提供的appender有以下几种:
org.apache.log4j.consoleappender(控制台),
org.apache.log4j.fileappender(文件),
org.apache.log4j.dailyrollingfileappender(每天产生一个日志文件),
org.apache.log4j.rollingfileappender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.writerappender(将日志信息以流格式发送到任意指定的地方)
③配置日志信息的格式(布局),其语法为:
log4j.appender.appendername.layout = fully.qualified.name.of.layout.class
log4j.appender.appendername.layout.option1 = value1
log4j.appender.appendername.layout.option = valuen
其中,log4j提供的layout有以下几种:
org.apache.log4j.htmllayout(以html表格形式布局),
org.apache.log4j.patternlayout(可以灵活地指定布局模式),
org.apache.log4j.simplelayout(包含日志信息的级别和信息字符串),
org.apache.log4j.ttcclayout(包含日志产生的时间,线程,类别等等信息)
④log4j采用类似c语言中的printf函数的打印格式格式化日志信息,打印参数如下:
%m 输出代码中指定的消息
%p 输出优先级,即debug,info,wa r n,error,fatal
%r 输出自应用启动到输出该log信息耗费的毫秒数
%c 输出所属的类目,通常就是所在类的全名
%t 输出产生该日志事件的线程名
%n 输出一个回车换行符,windows平台为" ",unix平台为" "
%d 输出日志时间点的日期或时间,默认格式为iso8601,也可以在其后指定格式,
比如:%d{yyy mmm dd hh:mm:ss,sss},输出类似:2002年10月18日 22:10:28,921
%l 输出日志事件的发生位置,包括类目名,发生的线程,以及在代码中的行数.
对上面log4j.properties配置文件的一个应用;
Tag: Log4j