log4j记录方法


记录器类提供了各种方法来处理记录活动。Logger类不允许我们实例化一个新的Logger实例,但它提供了两种获取Logger对象的静态方法 -

  • public static Logger getRootLogger();
  • 公共静态记录器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!

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