log4j - 日誌記錄方法



Logger 類提供各種方法來處理日誌記錄活動。Logger 類不允許我們例項化新的 Logger 例項,但它提供了兩種靜態方法來獲取 Logger 物件:

  • public static Logger getRootLogger();
  • public static Logger getLogger(String name);

這兩種方法中的第一種返回應用程式例項的根日誌記錄器,並且它沒有名稱。

任何其他命名的 Logger 物件例項都是透過第二種方法獲得的,方法是傳遞日誌記錄器的名稱。日誌記錄器的名稱可以是您傳遞的任何字串,通常是類名或包名,就像我們在上一章中使用的那樣,並在下面提到:

static Logger log = Logger.getLogger(log4jExample.class.getName());

日誌記錄方法

一旦我們獲得命名日誌記錄器的例項,我們就可以使用日誌記錄器的幾種方法來記錄訊息。Logger 類具有以下方法用於列印日誌資訊。

# 方法和描述
1 public void debug(Object message)

它以 Level.DEBUG 級別列印訊息。

2 public void error(Object message)

它以 Level.ERROR 級別列印訊息。

3 public void fatal(Object message)

它以 Level.FATAL 級別列印訊息。

4 public void info(Object message)

它以 Level.INFO 級別列印訊息。

5 public void warn(Object message)

它以 Level.WARN 級別列印訊息。

6 public void trace(Object message)

它以 Level.TRACE 級別列印訊息。

所有級別都在 **org.apache.log4j.Level** 類中定義,並且可以按如下方式呼叫上述任何方法:

import org.apache.log4j.Logger;

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

當您編譯並執行 **LogClass** 程式時,它將生成以下結果:

Debug Message!
Info Message!
Warn Message!
Error Message!
Fatal Message!

當與級別結合使用時,所有除錯訊息都更有意義。我們將在下一章中介紹級別,然後您將很好地理解如何在不同級別的除錯中結合使用這些方法。

廣告