Welcome 微信登录

首页 / 软件开发 / JAVA / Apache Log4j使用实例

Apache Log4j使用实例2011-02-04zhangjunhd1.Logger类

通过Logger类的静态方法Logger.getRootLogger得到RootLogger。所有其他的loggers是通过静态方法Logger.getLogger来实例化并获取的。这个方法Logger.getLogger把所想要的logger的名字作为参数。 Logger类的一些其它基本方法在下面列出:

package org.apache.log4j;

public class Logger {
// Creation and retrieval methods:
public static Logger getRootLogger();
public static Logger getLogger(String name);
// printing methods:
public void debug(Object message);
public void info(Object message);
public void warn(Object message);
public void error(Object message);
public void fatal(Object message);
// generic printing method:
public void log(Level l, Object message);
}

2. getLogger方法

以一样的参数名字调用getLogger方法,返回的reference总是指向完全相同的logger对象。例如,在这里:

Logger x = Logger.getLogger("wombat");
Logger y = Logger.getLogger("wombat");

x和y指向完全相同的logger对象。

3.Log4j使用流程

1)根据配置文件初始化log4j

log4j可以使用3种配置器来初始化:

BasicConfigurator,DOMConfigurator,PropertyConfigurator。

这里用的是PropertyConfigurator。使用PropertyConfigurator适用于所有的系统。如下的语句。

PropertyConfigurator.configure("log4j.properties");

就以log4j.properties为配置文件初始化好了log4j环境。对于一般的java project 可以不使用上面的语句初始化log4j,log4j会自动在classpath下,找到配置文件并初始化。如果log4j不能自动初始化配置文件,那么就需要用上面的方法进行初始化。

注意:初始化配置文件,最好只在系统启动的时候执行一次,如果执行多次,一是浪费资源,二就是对于老版本的log4j,使用DailyRollingFileAppender时,可能会出现问题。

2)导入org.apache.log4j.Logger;及相关包。

3)在需要使用log4j的地方获取Log实例。

private static Logger log = Logger.getLogger("MyCLASS.class");

4)使用Logger对象的debug,info,fatal...方法。

log.debug("it is the debug info");