1. 程式人生 > >Log4j之設定包下所有類的appender篇

Log4j之設定包下所有類的appender篇

log4j.properties

#指定某個包下的所以類呼叫指定的appender
log4j.logger.com.coderdream.log4j=debug,appender1
log4j.logger.com.coderdream.log4jDao=info,appender1,appender2
#輸出到控制檯
log4j.appender.appender1=org.apache.log4j.ConsoleAppender
#設定輸出樣式
log4j.appender.appender1.layout=org.apache.log4j.PatternLayout
#自定義樣式
# %r 時間 0
# %t 方法名 main
# %p 優先順序 DEBUG/INFO/ERROR
# %c 所屬類的全名(包括包名)
# %l 發生的位置,在某個類的某行
# %m 輸出程式碼中指定的訊息,如log(message)中的message
# %n 輸出一個換行符號
log4j.appender.appender1.layout.ConversionPattern=[%d{yy/MM/dd HH:mm:ss:SSS}][%C-%M] %m%n
#輸出到檔案(這裡預設為追加方式)
log4j.appender.appender2=org.apache.log4j.FileAppender
#設定檔案輸出路徑
#【1】文字檔案
log4j.appender.appender2.File=c:/w/t.log
#是否追加
#log4j.appender.appender2.Append=false 
#設定檔案輸出樣式
log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
log4j.appender.appender2.layout.ConversionPattern=[%d{HH:mm:ss:SSS}][%C-%M] -%m%n

HelloLog4j.java


package com.coderdream.log4j;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.log4j.Logger;

import test.TestLog1;

public class HelloLog4j {

	   private static Log  logger=LogFactory.getLog(HelloLog4j.class);

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// System.out.println("This is println message.");
		if(logger.isDebugEnabled()){
		// 記錄debug級別的資訊
		logger.debug("This is debug message.");
		}
		// 記錄info級別的資訊
		if(logger.isInfoEnabled()){
			logger.info("This is info message.");
		}
		// 記錄error級別的資訊
		if(logger.isErrorEnabled()){
			logger.error("This is error message.");

		}
		
		
	}
}


package com.coderdream.log4jDao;

import org.apache.log4j.Logger;

public class HelloDao {
	private static Logger logger = Logger.getLogger(HelloDao.class);

	/**
	 * @param args
	 */
	public static void main(String[] args) {

		// 記錄debug級別的資訊
		if (logger.isDebugEnabled()) {
			logger.debug("This is debug message from Dao.啊大大");
		}

		// 記錄info級別的資訊
		if (logger.isInfoEnabled()) {
			logger.info("This is info message from Dao.阿達");
		}

		// 記錄error級別的資訊
		logger.error("This is error message from Dao.");
	}
}