Posted on 2008-06-25 12:15
Fingki.li 閱讀(298)
評論(0) 編輯 收藏 所屬分類:
About development
最近越發感到日志對于軟件調試的重要,尤其是遠程調試。
Log4j有三個主要的組件:Loggers,Appenders和Layouts.
Loggers:日志類別
Appenders日志要輸出的地方
Layouts日志以何種形式輸出。
1.Loggers 日志類別
Loggers組件在此系統中被分為五個級別:DEBUG、INFO、WARN、ERROR和FATAL。
這五個級別是有順序的,DEBUG < INFO < WARN < ERROR < FATAL
說明:假設你的Logger級別為A,則所有級別大于等于A的方法的參數信息都將輸出到指定位置。
(舉個例子更易懂)如果你的Logger級別為INFO,則所有用.info(somemessage),.warn(somemessage),.error(somemessage),.fatal(somemessage)方法的參數信息都將輸出到指定位置;但調用.debug(somemessage)方法參數信息不會輸出。
2.Appenders 日志要輸出的地方
Log4j日志系統允許把日志輸出到不同的地方,如控制臺(Console)、文件(Files)、根據天數或者文件大小產生新的文件、以流的形式發送到其它地方等等。
org.apache.log4j.ConsoleAppender(控制臺)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天產生一個日志文件)
org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件)
org.apache.log4j.WriterAppender(將日志信息以流格式發送到任意指定的地方)
3.Layouts 日志以何種形式輸出
Layouts提供了四種日志輸出樣式,如根據HTML樣式、自由指定樣式、包含日志級別與信息的樣式和包含日志時間、線程、類別等信息的樣式等等。
org.apache.log4j.HTMLLayout(以HTML表格形式布局)
org.apache.log4j.PatternLayout(可以靈活地指定布局模式)
org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串)
org.apache.log4j.TTCCLayout(包含日志產生的時間、線程、類別等等信息)
log4j的具體使用請參照http://logging.apache.org/log4j/1.2/apidocs/index.html(log4j API)