Log4j 2.0在開發中的高階使用詳解—預設級別(二)

業餘草發表於2014-07-21

Log4j 經過幾年的發展之後,終於迎來了它的姊妹版本Log4j 2.0 。在強調可重用元件開發的今天,除了自己從頭到尾開發一個可重用的日誌操作類外,Apache為我們提供了一個強有力的日誌操作包-Log4j。重大的升級必須帶來重大的特性。對於2.0的顛覆性特性,我們將在之後一一講解。今天我們就來看它的特性之一,預設級別。

在使用log4j 1.x當中,我們都需要自己提供它的配置檔案。如果不提供就會報錯,在2.0的版本當中,配置檔案已經不是必須的了。至於我們沒有提供它的配置檔案,它會預設的列印error級別的資訊。

下面我們來看看測試程式碼:

package com.herman.log4j2.test;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
/**
 * @see log4j 2.0 預設級別為error
 * @author Herman.Xiong
 * @date 2014年7月21日09:37:52
 */
public class Test0 {
	/**
	 * 如果我們在工程(專案)中不提供log4j的配置檔案,則log4j會使用預設的配置,級別為error
	 * 4中獲取日誌記錄器的方式
	 */
	private static Logger logger = LogManager.getLogger(LogManager.ROOT_LOGGER_NAME);
	private static Logger log = LogManager.getLogger(Test0.class);
	private static Logger l = LogManager.getLogger(Test0.class.getName());
	private static Logger rl = LogManager.getRootLogger();
	public static void main(String[] args) {
		logger.trace("trace");
		logger.debug("debug");
		logger.info("info");
		logger.warn("warn");
		logger.error("error");
		logger.fatal("fatal");
		
		log.trace("trace");
		log.debug("debug");
		log.info("info");
		log.warn("warn");
		log.error("error");
		log.fatal("fatal");
		
		l.trace("trace");
		l.debug("debug");
		l.info("info");
		l.warn("warn");
		l.error("error");
		l.fatal("fatal");
		
		rl.trace("trace");
		rl.debug("debug");
		rl.info("info");
		rl.warn("warn");
		rl.error("error");
		rl.fatal("fatal");
	}
}
專案截圖:


09:41:29.150 [main] ERROR  - error
09:41:29.151 [main] FATAL  - fatal
09:41:29.151 [main] ERROR com.herman.log4j2.test.Test0 - error
09:41:29.152 [main] FATAL com.herman.log4j2.test.Test0 - fatal
09:41:29.152 [main] ERROR com.herman.log4j2.test.Test0 - error
09:41:29.152 [main] FATAL com.herman.log4j2.test.Test0 - fatal
09:41:29.152 [main] ERROR  - error
09:41:29.152 [main] FATAL  - fatal

歡迎大家關注我的個人部落格!!!

如有不懂,疑問或者欠妥的地方,請加QQ群:135430763   進行反饋,共同學習!



相關文章