標籤:
轉自:http://www.blogjava.net/wilesun/archive/2007/10/30/156999.html
Log4j建議只使用四個層級,優先順序從高到低分別是ERROR、WARN、INFO、DEBUG
#這裡定義能顯示到的最低層級,若定義到INFO層級,則看不到DEBUG層級的資訊了~!
log4j.rootLogger=DEBUG
#將DAO層log記錄到DAOLog,allLog中
log4j.logger.DAO=DEBUG,A2,A4
#將邏輯層log記錄到BusinessLog,allLog中
log4j.logger.Businesslog=DEBUG,A3,A4
#A1--列印到螢幕上
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-5p [%t] %37c %3x - %m%n
#A2--列印到檔案DAOLog中--專門為DAO層服務
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.file=DAOLog
log4j.appender.A2.DatePattern=‘.‘yyyy-MM-dd
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
#A3--列印到檔案BusinessLog中--專門記錄邏輯處理層服務log資訊
log4j.appender.A3=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A3.file=BusinessLog
log4j.appender.A3.DatePattern=‘.‘yyyy-MM-dd
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
#A4--列印到檔案alllog中--記錄所有log資訊
log4j.appender.A4=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A4.file=alllog
log4j.appender.A4.DatePattern=‘.‘yyyy-MM-dd
log4j.appender.A4.layout=org.apache.log4j.PatternLayout
log4j.appender.A4.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
#Appender的使用
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.file=demo
log4j.appender.A2.DatePattern=‘.‘yyyy-MM-dd
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%m%n
#Layout的配置
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
ConversionPattern參數的格式含義
格式名 含義
%c 輸出日誌資訊所屬的類的全名
%d 輸出日誌時間點的日期或時間,預設格式為ISO8601,也可以在其後指定格式,比如:%d{yyy-MM-dd HH:mm:ss },輸出類似:2002-10-18- 22:10:28
%f 輸出日誌資訊所屬的類的類名
%l 輸出日誌事件的發生位置,即輸出日誌資訊的語句處於它所在的類的第幾行
%m 輸出代碼中指定的資訊,如log(message)中的message
%n 輸出一個斷行符號分行符號,Windows平台為“rn”,Unix平台為“n”
%p 輸出優先順序,即DEBUG,INFO,WARN,ERROR,FATAL。如果是調用debug()輸出的,則為DEBUG,依此類推
%r 輸出自應用啟動到輸出該日誌資訊所耗費的毫秒數
%t 輸出產生該日誌事件的線程名
#1 定義了兩個輸出端
log4j.rootLogger = INFO, A1, A2,A3
#2 定義A1輸出到控制器
log4j.appender.A1 = org.apache.log4j.ConsoleAppender
#3 定義A1的配置模式為PatternLayout
log4j.appender.A1.layout = org.apache.log4j.PatternLayout
#4 定義A1的輸出格式
log4j.appender.A1.layout.ConversionPattern = %-4r [%t] %-5p %c - %m%n
#5 定義A2輸出到檔案
log4j.appender.A2 = org.apache.log4j.RollingFileAppender
#6 定義A2要輸出到哪一個檔案
log4j.appender.A2.File = F:nepalonclassesexample3.log
#7 定義A2的輸出檔案的最大長度
log4j.appender.A2.MaxFileSize = 1KB
#8 定義A2的備份檔案數
log4j.appender.A2.MaxBackupIndex = 3
#9 定義A2的配置模式為PatternLayout
log4j.appender.A2.layout = org.apache.log4j.PatternLayout
#10 定義A2的輸出格式
log4j.appender.A2.layout.ConversionPattern = %d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n
log4j的ConversionPattern參數的格式含義-轉