struts 日誌包(學習筆記)
使用log日誌的實現。 好久前的了,忘記發了上來。剛剛看到,忘記發了。補上吧
[@more@]常用的日誌實現
1.NoOpLog日誌器:org.apache.commons.logging.impl.NoOpLog
2. SimpleLog日誌器:org.apache.commons.logging.impl.SimpleLog 把日誌訊息輸出到標準的系統錯誤流System.err,在SimpleLog初始化的過程中,從名為“simplelog.properties”的屬性檔案中讀取以下屬性:
org.apache.commones.logging.simplelog.defaultlog 為SimpleLog 的所有例項數值預設日誌級別。fatal,error,warn,info,debug ,trace 預設為info
org.apache.commons.logging.simplelog.showShortLogname 預設true, 表在輸出的日誌訊息中包含當前日誌器例項的簡寫名字。
org.apache.commons.logging.simplelog.showdatetime 預設false true:表在輸出的日誌訊息中應包含當前時間資訊。
3.Log4J日誌器 Logger:負責生成日誌。Appender:日誌訊息輸出的目的地。
Layout:指定日誌訊息的輸出格式。
通用日誌介面的配置
準備JAR檔案
在commons-logging.properties屬性檔案中指定日誌器
為特定的日誌器設定日誌級別、輸出格式和輸出地點等屬性。
SimpleLog : org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
採用SimpleLog,其日誌輸出地點是固定的,為System.err,無需配置,可以在simplelog.properties屬性檔案中設定日誌級別
org.apache.commons.logging.simplelog.defaultlog=info
Log4J: : org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
1、定義配置檔案
首先使用配置檔案將使我們的應用程式更加靈活配置log日誌輸出方式包括輸出優先順序、輸出目的地、輸出格式。Log4j支援兩種配置檔案格式,一種是XML格式的檔案,一種是Java特性檔案log4j.properties(鍵=值)。下面將介紹使用log4j.properties檔案作為配置檔案的方法:
①配置根Logger,其語法為:0
log4j.rootLogger = [ level ] , appenderName, appenderName, …
其中,level 是日誌記錄的優先順序,分為OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者自定義的級別。Log4j建議只使用四個級別,優先順序從高到低分別是ERROR、WARN、INFO、DEBUG。透過在這裡定義的級別,您可以控制到應用程式中相應級別的日誌資訊的開關。比如在這裡定義了INFO級別,則應用程式中所有DEBUG級別的日誌資訊將不被列印出來。 appenderName就是指定日誌資訊輸出到哪個地方。可同時指定多個輸出目的地。
②配置日誌資訊輸出目的地Appender,其語法為:
log4j.appender.appenderName = fully.qualified.name.of.appender.class log4j.appender.appenderName.option1 = value1 … log4j.appender.appenderName.option = valueN
其中,Log4j提供的appender有以下幾種: org.apache.log4j.ConsoleAppender(控制檯), org.apache.log4j.FileAppender(檔案), org.apache.log4j.DailyRollingFileAppender(每天產生一個日誌檔案), org.apache.log4j.RollingFileAppender(檔案大小到達指定尺寸的時候產生一個新的檔案), org.apache.log4j.WriterAppender(將日誌資訊以流格式傳送到任意指定的地方)
③配置日誌資訊的格式(佈局),其語法為:
log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class log4j.appender.appenderName.layout.option1 = value1 … log4j.appender.appenderName.layout.option = valueN
其中,Log4j提供的layout有以下幾種: org.apache.log4j.HTMLLayout(以HTML表格形式佈局), org.apache.log4j.PatternLayout(可以靈活地指定佈局模式), org.apache.log4j.SimpleLayout(包含日誌資訊的級別和資訊字串), org.apache.log4j.TTCCLayout(包含日誌產生的時間、執行緒、類別等等資訊)
Log4J採用類似C語言中的printf函式的列印格式格式化日誌資訊,列印引數如下: %m 輸出程式碼中指定的訊息
%p 輸出優先順序,即DEBUG,INFO,WARN,ERROR,FATAL %r 輸出自應用啟動到輸出該log資訊耗費的毫秒數 %c 輸出所屬的類目,通常就是所在類的全名 %t 輸出產生該日誌事件的執行緒名 %n 輸出一個回車換行符,Windows平臺為“rn”,Unix平臺為“n” %d 輸出日誌時間點的日期或時間,預設格式為ISO8601,也可以在其後指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},輸出類似:2002年10月18日 22:10:28,921 %l 輸出日誌事件的發生位置,包括類目名、發生的執行緒,以及在程式碼中的行數。舉例:Testlog4.main(TestLog4.java:10)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/118026/viewspace-808312/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Go學習筆記-Zap日誌Go筆記
- Struts學習筆記zz筆記
- Laravel8學習筆記-日誌元件Laravel筆記元件
- redo日誌檔案學習筆記(一)筆記
- Spring Boot 學習筆記(5):日誌配置Spring Boot筆記
- win8 學習筆記二 輸出日誌筆記
- struts2學習筆記系列(一)筆記
- UI自動化學習筆記- 日誌相關操作UI筆記
- struts 國際化(yunchat-學習筆記)筆記
- go 閉包學習筆記Go筆記
- Oracle DBA學習日記筆記Oracle筆記
- 學習日誌
- Python學習筆記 - 閉包Python筆記
- java學習筆記(包裝類)Java筆記
- .Net Core 學習筆記1——包、元包、框架筆記框架
- 風中葉之struts2學習筆記一筆記
- 3月23日學習筆記筆記
- 3月25日學習筆記筆記
- 2月15日,學習筆記筆記
- 日誌框架學習框架
- muduo網路庫學習筆記(8):高效日誌類的封裝筆記封裝
- Struts2學習筆記(一)初識Strut2筆記
- 【防忘筆記】Spring+Struts2古董框架學習筆記Spring框架
- 【轉】oracle學習筆記(三)之檢查Oracle的告警日誌檔案Oracle筆記
- Vue知乎日報的學習筆記Vue筆記
- 登入抓包逆向分析學習筆記筆記
- Java小白的學習日記一(自用筆記)Java筆記
- Git 學習日誌1Git
- 11.3 學習日誌
- java學習筆記--輸出本月日曆Java筆記
- 拉格朗日插值學習筆記筆記
- 記錄 | 實習日誌 9
- Bullet 學習筆記之 BugList 生產日記筆記
- 【Go】Go語言學習筆記-3-包Go筆記
- 【安卓筆記】崩潰日誌收集安卓筆記
- 7.管理重做日誌(筆記)筆記
- 小白學習如何打日誌
- Vipper日誌庫的學習