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."); } }