log4j的配置详解

http://blog.csdn.net/liangbinny/article/details/38069711

引用


例子如下:

log4j.rootLogger=INFO, Console

.......


#log4j for QUEUE
log4j.logger.Q=INFO,queue
log4j.additivity.Q=false


log4j.appender.queue=org.apache.log4j.RollingFileAppender
log4j.appender.queue.File=logs/mcc-app-queue.log
log4j.appender.queue.DatePattern='-'yyyy-MM-dd-HH-mm'.txt'
log4j.appender.queue.MaxFileSize=20480KB
log4j.appender.queue.MaxBackupIndex=200
log4j.appender.queue.layout=org.apache.log4j.PatternLayout
log4j.appender.queue.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %p %C.%M(%L) : %m%n


解释:
Q是log名,queue是append
log4j.additivity.Q=false这行的意思是不继承root,即不打印在控制台上,根据自己定义的append(queue)打印
RollingFileAppender是连续文件打印方式,
MaxFileSize指定20M新生成一个日志文件
MaxBackupIndex生成的最大日志文件索引是200个,即最多会保存200个日志文件

%d{yyyy-MM-dd HH:mm:ss} %p %C.%M(%L) : %m%n 日志打印格式,具体说明如下:

%d{yyyy-MM-dd HH:mm:ss}是打印时间格式

%p是打印日志级别,如:info,warn,error

%C是打印完全类名(包含包路径),如:com.test.Test
%M是方法名,如:sayHello
%C.%M配置的话,打印出来就是 com.test.Test.sayHello

%L是打印日志所在的行数,(%L),即(104),表示104行

%m就是要打印的内容了,如:log.info("xxxx"),那%m就是xxx了

%n是输出一个空行。

如果是log.info("xxx").  那么按照%d{yyyy-MM-dd HH:mm:ss} %p %C.%M(%L) : %m%n 格式,打印出来的内容就是
2014-07-23 19:44:42 INFO com.test.Test.sayHello(135) : xxx




猜你喜欢

转载自dannyhz.iteye.com/blog/2408789
今日推荐