log4j的配置之簡單使它遍及於越來越多的應用中了:log4j配置檔案實現了輸出到控制台、檔案、回滾檔案、傳送日誌郵件、輸出到資料庫日誌表、自定義標籤等全套功能。擇其一二使用就夠用了,
1、配置根logger:
level:日誌的級別,指定這條日誌資訊的重要性。分為all < debug < info < warn 一般常用的為
debug , info ,warn ,error四種,分別對應logger類的四種方法
debug(object message ) ;
info(object message ) ;
warn(object message ) ;
error(object message ) ;
如果設定級別為info,則優先順序大於等於info級別(如:info、warn、error)的日誌資訊將可以被輸出,
小於該級別的如:debug將不會被輸出
可以配置多個輸出目的地。
2、配置log輸出目的地:(每天產生乙個日誌檔案)
3、log資訊的格式:
org.apache.log4j.htmllayout(html**形式)
org.apache.log4j.******layout(簡單格式的日誌,只包括日誌資訊的級別和指定的資訊字串,如:debug - hello)
org.apache.log4j.ttcclayout(日誌的格式包括日誌產生的時間、執行緒、類別等等資訊)
org.apache.log4j.patternlayout(靈活地自定義日誌格式)
當使用org.apache.log4j.patternlayout來自定義資訊格式時,可以使用
%c 輸出所屬類的全名,可寫為 %c ,num類名輸出的範圍 如:"com.sun.aaa.classb", %c將使日誌輸出輸出範圍為:aaa.classb
%d 輸出日誌時間其格式為 可指定格式 如 %d等
%l 輸出日誌事件發生位置,包括類目名、發生執行緒,在**中的行數
%n 換行符
%m 輸出**指定資訊,如info(「message」),輸出message
%p 輸出日誌的優先順序,即 fatal ,error 等
%r 輸出從啟動到顯示該條日誌資訊所耗費的時間(毫秒數)
%t 輸出產生該日誌事件的執行緒名
4、同時使用commons-logging和log4j
1)首先在classpath下尋找自己的配置檔案commons-logging.properties,如果找到,則使用其中定義的
log實現類
2)如果找不到commons-logging.properties檔案,則在查詢是否已定義系統環境變數
org.apache.commons.logging.log,找到則使用其定義的log實現類
3)否則,檢視classpath中是否有log4j的包,如果發現,則自動使用log4j作為日誌實現類
4)否則,使用jdk自身的日誌實現類(jdk1.4以後才有日誌實現類)
5)否則,使用commons-logging自己提供的乙個簡單的日誌實現類******log
5.多個日誌檔案(log4j.rootlogger=info, a1 ,a2)
附例:(log4j.properties)
例1:
log4j.rootlogger=debug, stdout
例2:#指定根logger,及日誌輸出級別,大於等於該級別的日誌將被輸出( debug < info < warn < error < fatal ) 設為off可以關閉日誌
log4j.rootlogger=debug, a1,a2
#指定log輸出目的,這裡設為輸出日誌到指定目錄的檔案my.log中
#指定日誌資訊的格式
#把a2輸出到控制台
#還可以單獨指定輸出某個包的日誌級別
#log4j.logger.com.study.hellolog4j=info
log4j全面配置
log4j配置檔案實現了輸出到控制台 檔案 回滾檔案 傳送日誌郵件 輸出到資料庫日誌表 自定義標籤等全套功能。log4j.rootlogger debug,console,dailyfile,im log4j.additivity.org.apache true 控制台 console 日誌檔案 l...
關於log4j的配置問題
每次開啟tomcat控制台的時候,總是會出現初始化log4j的提示,今天決心把問題解決掉。在web inf classes 中新建 log4j.properties 檔案,加入以下 便能實現將錯誤資訊在後台顯示並寫入到日誌檔案 jkpt two.log 中 log4j.rootlogger erro...
關於log4j知識
log4j的作用 log4j是乙個日誌輸出的外掛程式專門用來進行日誌管理的,根據我的理解就是用來執行我們用來檢測程式bug的system.out.println 語句的,不過更為簡潔,格式也更好判斷,利用相關的符號,可以精確到某一行的問題點。log4j有兩種使用的形式,一種是利用我們建立的log4j...