在web工程中,通过简单的在web.xml配置,就可以非常方便的将log4j引入到工程中;但是在普通的java工程中,基本是通过main方法来启动程序的,所以要在此引入log4j的话,还得通过代码的形式引入。
###在代码中初始化Logger: 1)在程序中调用BasicConfigurator.configure()方法:给根记录器增加一个ConsoleAppender,输出格式通过PatternLayout设为"%-4r [%t] %-5p %c %x - %m%n",还有根记录器的默认级别是Level.DEBUG.
2)配置放在文件里,通过命令行参数传递文件名字,通过PropertyConfigurator.configure(args[x])解析并配置;
static {
URL log4jRes = App.class.getClass().getResource("/properties/log4j.properties");
PropertyConfigurator.configure(log4jRes);
}
//如果在工程中使用了spring,又要输出spring的日志,那么需要在log4j中追加一句:
log4j.logger.org.springframework=INFO
3)配置放在文件里,通过环境变量传递文件名等信息,利用log4j默认的初始化过程解析并配置;
4)配置放在文件里,通过应用服务器配置传递文件名等信息,利用一个特殊的servlet来完成配置。
Ref:
http://www.programcreek.com/java-api-examples/index.php?api=org.apache.log4j.PropertyConfigurator
http://blog.csdn.net/xys_777/article/details/6870694