Log4j 2.0在開發中的高階使用詳解—配置簡單的檔案輸出(四)

業餘草發表於2014-07-21
在log4j 1.x的版本中,我們想將日誌輸出的檔案中,需要很複雜的配置。這點已經在2.0的版本中得到了大大的改善。
簡單的配置,以及靈活的應用,已經成為了一種趨勢。不管我們以追加的形式寫日誌檔案,還是覆蓋的形式,配置他們都是小菜。
還有比如日誌檔案大小自動分割,自動備份,無死鎖,高效能等等。更令人欣喜的是,它支援json格式的配置,載入快,輕巧,非同步讀寫。
好吧,來看它的使用吧。
看配置檔案log4j2.xml程式碼:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
  <Appenders>
  	<!-- 配置日誌輸出檔名字     追加讀寫 -->
    <File name="A1" fileName="A1.log" append="true">
      <!-- 輸出格式 -->
      <PatternLayout pattern="%t %-5p %c{2} - %m%n"/>
    </File>
    <!-- 輸出到控制檯的配置 -->
    <Console name="STDOUT" target="SYSTEM_OUT">
      <!-- 輸出格式 -->
      <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
    </Console>
  </Appenders>
  <Loggers>
    <!-- 記錄器輸出檔案為debug級別 -->
    <!-- 根    控制檯輸出級別 -->
    <Root level="debug">
      <AppenderRef ref="A1"/>
      <AppenderRef ref="STDOUT"/>
    </Root>
  </Loggers>
</Configuration>

測試程式碼:

package com.herman.log4j2.test;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

/**
 * @see log4j 2.0 簡單的配置使用一個檔案Appender
 * @author Herman.Xiong
 * @date 2014年7月21日 14:32:55
 */
public class Test1 {
	/**
	 * 配置日誌級別為debug,輸出位置為控制檯和檔案
	 */
	private static Logger log = LogManager.getLogger(Test0.class);
	public static void main(String[] args) {
		log.trace("trace");
		log.debug("debug");
		log.info("info");
		log.warn("warn");
		log.error("error");
		log.fatal("fatal");
	}
}
歡迎大家關注我的個人部落格!!!!

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



相關文章