Log4j 由三個重要的組件構成:日誌信息的優先級,日誌信息的輸出目的地,日誌信息的輸出格式。
Log4j 建議只使用四個級別,優先級從高到低分別是ERROR、WARN、INFO、DEBUG。
配置日誌信息輸出目的地Appender
Log4j 提供的appender有以下幾種:
org.apache.log4j.ConsoleAppender(控制檯),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天產生一個日誌文件),
org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件),
org.apache.log4j.WriterAppender(將日誌信息以流格式發送到任意指定的地方)
常用ConsoleAppender,FileAppender,DailyRollingFileAppender
可以輸出到多個終端log4j.logger.DAO=DEBUG,A2,A4
配置日誌信息的格式(佈局)
Log4j 提供的layout有以下幾種:
org.apache.log4j.HTMLLayout(以HTML 表格形式佈局),
org.apache.log4j.PatternLayout(可以靈活地指定佈局模式),
org.apache.log4j.SimpleLayout(包含日誌信息的級別和信息字符串),
org.apache.log4j.TTCCLayout(包含日誌產生的時間、線程、類別等等信息)
下面上例子
#intf log
log4j.category.com.yan.intf=INFO, intf
log4j.additivity.com.yan.intf=false
log4j.appender.intf=org.apache.log4j.ConsoleAppender
#log4j.appender.intf=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.intf.File=/jeeLogs/httpClientLogs/intf/Intf.log
#log4j.appender.intf.DatePattern='.'yyyyMMdd'.log'
log4j.appender.intf.layout=org.apache.log4j.PatternLayout
log4j.appender.intf.layout.ConversionPattern=%d %p - <%m>%n