Log4j官方文檔翻譯(6、日誌的級別)

org.apache.log4j.Level 類提供了下面幾種日誌級別,你也能夠經過繼承這些類,自定義級別apache

  • ALL 全部日誌級別都包括
  • DEBUG 指定信息事件的粒度是DEBUG,在調試應用的時候會有幫助
  • ERROR 指定錯誤事件,而且這些事件還會保證應用繼續運行
  • FATAL 指定嚴重的錯誤事件,該事件會致使應用暫停
  • INFO 指定信息消息,強調應用粗粒度的運行狀況
  • OFF 最高等級,至關與關閉了日誌
  • TRACE 指定比DEBUG更細粒度的調試日誌
  • WARN 輸出具備潛在風險的信息

如何使用不一樣的級別

log4j中日誌的級別是排好序的,通常的標準是
ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF
若是日誌自己使用的是WARN輸出,可是log4j設置的級別是FATAL,則不會輸出;相反,若是設置的是DEBUG,則會輸出。app

下面這個例子,展現瞭如何過濾DEBUG和INFO消息。debug

import org.apache.log4j.*;
public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);
public static void main(String[] args) {
log.setLevel(Level.WARN);
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
}
}

當編譯後執行,會獲得以下的結果:
調試


Warn Message!
Error Message!
Fatal Message!

在配置文件中設置級別

log4j支持在配置文件中設置日誌的默認級別,這樣就不用修改源代碼,就能夠改變日誌的級別了。日誌

下面就給出了一個配置文件的例子,與上面log.setLevel(Level.WARN)方法相同的工做:
code


log = /usr/home/log4j
log4j.rootLogger = WARN, FILE
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=${log}/log.out
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n

而後運行下面的代碼:
繼承


import org.apache.log4j.*;
public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);
public static void main(String[] args) {
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
}
}

運行上述的代碼,就會獲得:
Warn Message!Error Message!Fatal Message!
相關文章
相關標籤/搜索