來自:log4j格式詳解(轉(zhuǎn))
** log4j.rootLogger=日志級(jí)別厌殉,appender1, appender2, ….**
日志級(jí)別:ALL<DEBUG<INFO<WARN<ERROR<FATAL<OFF,不區(qū)分大小寫
注意猴贰,需在控制臺(tái)輸入和蚪,只需將其中一個(gè)appender定義為stdout即可
注意冈敛,rootLogger默認(rèn)是對(duì)整個(gè)工程生效
注意遭铺,如果只想對(duì)某些包操作搀绣,那么:log4j.logger.com.hutu=info, stdout栋艳,表示該日志對(duì)package com.hutu生效
注意恰聘,這樣做可以區(qū)分dev/線上,也可以減小性能影響:if(log.isDebugEnabled()){log.debug();}
** log4j.appender.appender1=org.apache.log4j.日志輸出到哪兒**
ConsoleAppender(控制臺(tái))
FileAppender(文件)
DailyRollingFileAppender(每天產(chǎn)生一個(gè)日志文件)
RollingFileAppender(文件大小到達(dá)指定尺寸時(shí)產(chǎn)生一個(gè)新的文件)
WriteAppender(將日志信息以流格式發(fā)送到任意指定的地方)
JDBCAppender(將日志信息保存到數(shù)據(jù)庫中)
** log4j.appender.appender1.File=文件目錄及文件**
${user.home}/logs/...
** log4j.appender.appender1.MaxFileSize=最大文件大小**
** log4j.appender.appender1.MaxBackupIndex=備份文件個(gè)數(shù)**
其中吸占,appender1是在第一行定義過的晴叨;
文件目錄及文件,例如矾屯,/home/admin/logs/hutudan.log
最大文件大小兼蕊,例如,100KB
備份文件個(gè)數(shù)件蚕,例如孙技,1
** log4j.appender.ServerDailyRollingFile.DatePattern=日志后綴格式**
例如,'.'yyyy-MM-dd
** log4j.appender.appender1.layout=org.apache.log4j.日志布局格式**
HTMLLayout(以HTML表格形式布局)
SimpleLayout(包含日志信息的級(jí)別和信息字符串)
TTCCLayout(包含日志產(chǎn)生的時(shí)間排作,執(zhí)行緒牵啦,類別等信息)
PatternLayout(可以靈活的指定布局格式,常用)
** log4j.appender.appender1.layout.ConversionPattern=日志輸出格式**
例如妄痪,%d - %m%n或%d{yyyy-MM-dd HH:mm:ss} %p [%c] %m%n
**%c **輸出日志信息所屬的類的全名
%d 輸出日志時(shí)間點(diǎn)的日期或時(shí)間哈雏,默認(rèn)格式為ISO8601,也可以在其后指定格式,比如:%d{yyy-M-dd HH:mm:ss }裳瘪,輸出類似:2002-10-18- 22:10:28
%f 輸出日志信息所屬的類的類名
%l 輸出日志事件的發(fā)生位置土浸,即輸出日志信息的語句處于它所在的類的第幾行
%m 輸出代碼中指定的信息,如log(message)中的message
%n 輸出一個(gè)回車換行符彭羹,Windows平臺(tái)為“rn”黄伊,Unix平臺(tái)為“n”
%p 輸出優(yōu)先級(jí),即DEBUG皆怕,INFO毅舆,WARN,ERROR愈腾,F(xiàn)ATAL。如果是調(diào)用debug()輸出的岂津,則為DEBUG虱黄,依此類推
%r 輸出自應(yīng)用啟動(dòng)到輸出該日志信息所耗費(fèi)的毫秒數(shù)
%t 輸出產(chǎn)生該日志事件的線程名
** log4j.appender.ServerDailyRollingFile.Append=true**
例如,不解釋吮成,追加往后寫便是
** 總結(jié)一下:**
Logger類:完成日志記錄橱乱,設(shè)置日志信息級(jí)別
Appender類:決定日志去向,終端粱甫、DB泳叠、硬盤
Layout類:決定日志輸出的樣式,例如包含當(dāng)前線程茶宵、行號(hào)危纫、時(shí)間