Log4j的配置

    Log4j的配置文件(Configuration File)就是用來設置記錄器的級別、存放器和佈局的,它可接key=value格式的設置或xml格式的設置信息。通過配置,可以創建出Log4J的運行環境。

創建Log4j的步驟:

  1. 在項目中lib目錄下引入相關的jar包(log4j-1.2.8.jar)。

  2. 在src目錄下創建Log4j.properties配置文件。

log4j.rootLogger=debug, stdout, D

### 輸出到控制檯 ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern= %d{ABSOLUTE} %5p %c{1}:%L - %m%n

### 輸出到日誌文件 ###
log4j.appender.D=org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File=logs/log.log
log4j.appender.D.Append=true     ##默認值是true,即將消息增加到指定文件中,false指將消息覆                                   蓋指定的文件內容。
log4j.appender.D.Threshold=DEBUG ## 輸出DEBUG級別以上的日誌
log4j.appender.D.layout=org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t:%r]-[%p] %m%n

  3. 根據項目需求修改其中的屬性。

  4. 在要輸出日誌的類中加入相關語句。

 定義屬性 static Logger logger=Logger.getLogger(Test.class);//Test爲輸出日誌的類
 在相關方法中調用 logger.debug("debug");

說明:

log4j.rootLogger=debug, stdout, D  // 此句是將等級爲debug的日誌信息輸出到stdout, D兩個目的地,stdout, D可以任意取名。
  • 1、日誌的輸出的級別有:DEBUG(7)INFO(6) WARN(4) ERROR(3) FATAL(0)。

  • 2、日誌輸出的目的地(appender)有:

org.apache.log4j.ConsoleAppender(控制檯),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天產生一個日誌文件),
org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件),
org.apache.log4j.WriterAppender(將日誌信息以流格式發送到任意指定的地方)。
  • 3、layout:日誌輸出格式,Log4j提供的layout有以下幾種:

org.apache.log4j.HTMLLayout(以HTML表格形式佈局),
org.apache.log4j.PatternLayout(可以靈活地指定佈局模式),
org.apache.log4j.SimpleLayout(包含日誌信息的級別和信息字符串),
org.apache.log4j.TTCCLayout(包含日誌產生的時間、線程、類別等等信息)。
  • 4、打印參數: Log4J採用類似C語言中的printf函數的打印格式格式化日誌信息,如下:

    %m   輸出代碼中指定的消息
  %p   輸出優先級,即DEBUG,INFO,WARN,ERROR,FATAL 
  %r   輸出自應用啓動到輸出該log信息耗費的毫秒數 
  %c   輸出所屬的類目,通常就是所在類的全名 
  %t   輸出產生該日誌事件的線程名 
  %n   輸出一個回車換行符,Windows平臺爲“\r\n”,Unix平臺爲“\n” 
  %d   輸出日誌時間點的日期或時間,默認格式爲ISO8601,也可以在其後指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},輸出類似:2016年7月25日 13:10:28,921				
  %l   輸出日誌事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章