paip.log4j 日志系统 参数以及最佳实践
paip.log4j 日志系统 参数以及最佳实践
%d{yyyy-MM-dd HH:mm:ss} [thrd:%t] %5p loger:%c (%C.%M.%L) - %m%n
2013-12-27 15:45:42 [thrd:main] INFO loger:full_cb20 (homi.testC3p0.method1(testC3p0.java:28)) - nbpos
作者Attilax 艾龙, EMAIL:1466519819@qq.com
来源:attilax的专栏
地址:http://blog.csdn.net/attilax
---------格式名 含义
%c 输出日志logger
%C 大写C,类名。。
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28
%f 输出日志信息所属的类的类名
%l 输出日志事件发生位置,类+方法+文件+行号 homi.testC3p0.method1(testC3p0.java:28)
%L 大写L,行号。
%m 输出代码中指定的信息,如log(message)中的message
%M 大写M,方法名。。
%n 输出一个回车换行符,Windows平台为“
”,Unix平台为“
”
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
%r 输出自应用启动到输出该日志信息所耗费的毫秒数
%t 输出产生该日志事件的线程名
%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。
可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如:
1)%20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。
2)%-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。
3)%.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截
4)%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边较远输出的字符截掉。
//////////关闭某个logger。。
log4j.logger.full_cb20=error
----代码调用
Logger logger = Logger
.getLogger("full_cb20");
logger.info("nbpos");
//////////
3. 为不同的 Appender 设置日志输出级别:
当调试系统时,我们往往注意的只是异常级别的日志输出,但是通常所有级别的输出都是放在一个文件里的,如果日志输出的级别是BUG!?那就慢慢去找吧。
这时我们也许会想要是能把异常信息单独输出到一个文件里该多好啊。当然可以,Log4j已经提供了这样的功能,我们只需要在配置中修改Appender的Threshold 就能实现,比如下面的例子:
log4j.appender.D.Threshold = DEBUG ## 输出DEBUG级别以上的日志
Threshold=DEBUG:指定日志消息的输出最低层次。
参考
配置Log4j(很详细) - 阿铮的箩筐 - 博客频道 - CSDN.NET.htm