log4j三個組件
通常,我們都提供一個名為 log4j.properties的文件,在第一次調用到Log4J時,Log4J會在類路徑
(../web-inf/class/當然也可以放到其它任何目錄,只要該目錄被包含到類路徑中即可)中定位這個文件,并讀入
這個文件完成的配置。這個配置文件告 訴Log4J以什么樣的格式、把什么樣的信息、輸出到什么地方。
Log4j有三個主要的組件:Loggers(記錄器),Appenders(輸出源)和Layouts(布局),這里可簡單理解為日志
類別,日志要輸出的地方和日志以何種形式輸出。綜合使用這三個組件可以輕松的記錄信息的類型和級別,并可
以在運行時控制日志輸出的樣式和位置。下面對三個組件分別進行說明:
1、 Loggers
Loggers組件在此系統中被分為五個級別:DEBUG、INFO、WARN、ERROR和FATAL。這五個級別是有順序
的,DEBUG < INFO < WARN < ERROR < FATAL,分別用來指定這條日志信息的重要程度,明白這一點很重要,
這里Log4j有一個規則:假設Loggers級別為P,如果在Loggers中發生了一個級別Q比P高,則可以啟動,否則屏蔽掉。
假設你定義的級別是info,那么error和warn的日志可以顯示而比他低的debug信息就不顯示了。
Java程序舉例來說:
//建立Logger的一個實例,命名為“com.foo”
Logger logger = Logger.getLogger("com.foo"); //"com.foo"是實例進行命名,也可以任意
//設置logger的級別。通常不在程序中設置logger的級別。一般在配置文件中設置。
logger.setLevel(Level.INFO);
Logger barlogger = Logger.getLogger("com.foo.Bar");
//下面這個請求可用,因為WARN >= INFO
logger.warn("Low fuel level.");
//下面這個請求不可用,因為DEBUG < INFO
logger.debug("Starting search for nearest gas station.");
//命名為“com.foo.bar”的實例barlogger會繼承實例“com.foo”的級別。因此,下面這個請求可用,因為INFO >= INFO
barlogger.info("Located nearest gas station.");
//下面這個請求不可用,因為DEBUG < INFO
barlogger.debug("Exiting gas station search");
文章來源于領測軟件測試網 http://www.kjueaiud.com/