一个简单的log4j配置如下:
log4j.rootLogger=DEBUG, 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=%d [%t] %-5p - %m%n
例子里设置显示的pattern里的%d表示显示日期。除了简单实用%d外,我们也可以自定义日期的格式。
SimpleDateFormat格式
在%d后使用{}表示日期的格式,如果使用了SimpleDateFormat格式,可以设置如下:
log4j.rootLogger=DEBUG, 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=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] %-5p - %m%n
yyyy:年份
MM:月份
dd:日期
HH:时
mm:分
ss:秒
SSS:毫秒
ISO8601 格式
%d后的{}里设置值为ISO8601,那么使用的是ISO8601格式:
log4j.rootLogger=DEBUG, 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=%d{ISO8601} [%t] %-5p - %m%n
DateTime格式
除了使用SimpleDateFormat设置日期格式外,也可以使用log4j内置的org.apache.log4j.helpers.DateTimeDateFormat类来显示格式,只需要把%d后{}里的值设置为DATE即可:
log4j.rootLogger=DEBUG, 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=%d{DATE} [%t] %-5p - %m%n
AbsoluteTime 格式
如果只显示时间,不需要日期可以使用绝对时间格式,%d后{}的值设置为ABSOLUTE,它会调用org.apache.log4j.helpers.AbsoluteTimeDateFormat:
log4j.rootLogger=DEBUG, 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=%d{ABSOLUTE} [%t] %-5p - %m%n