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.DEBUG 级别打印消息。

3 public void fatal(Object message)

它以 Level.ERROR 级别打印消息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!

所有调试消息在与级别结合使用时都更有意义。我们将在下一章中介绍级别,然后您将很好地理解如何将这些方法与不同级别的调试结合使用。