常用log4j配置,一般可以采用两种方式,.properties和.xml,下面举两个简单的例子:
最简单的配置是只要取下面的log4j.properties文件中带下划线的四行就行,它完成日志输出到控制台。
一、log4j.properties
二、log4j.xml
三、配置文件加载方法:
四、项目使用log4j
在 web应用中,可以将配置文件的加载放在一个单独的servlet中,并在web.xml中配置该servlet在应用启动时候加载。对于在多人项目中,可以给每一个人设置一个输出通道,这样在每个人在构建Logger时,用自己的域名称,让调试信息输出到自己的log文件中。
五、常用输出格式
%c 列出logger名字空间的全称,如加上{<层数>}表示出从最内层算起的指定层数的名字空间
%X 按MDC(Mapped Diagnostic Context,线程映射表)输出日志。通常用于多个客户端连接同一台服务器,方便服务器区分是那个客户端访问留下来的日志。
%p 日志信息级别
%d %d{<日期格式>}:日志信息产生时间,使用ISO8601定义的日期格式
%C 日志信息所在地(全限类名)
%m 产生的日志具体信息
%n 输出日志信息换行
%F 显示调用logger的源文件名
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数
%L 显示调用logger的代码行
%M 显示调用logger的方法名
%r 显示从程序启动时到记录该条日志时已经经过的毫秒数
%t 输出产生该日志事件的线程名
%% 显示一个百分号
--------------------------------------------------------------------------------
补充:在配置文件中可以用变量用于引用系统属性,如
log4j.appender.A2.File = ${user.home}/${app.name}.log
如果你在启动程序时加了 -Dapp.name=UnmiLog4jTest JVM 参数,或者在初始化 Log4j 之前,往 System.getProperties() 中 put 了 "app.name" 属性为 UnmiLog4jTest,那么就会输出日志文件到用户主目录/UnmiLog4jTest.log。user.home 属性一般都存在于系统属性中,你也可以在程序中改变它。
如果在 web.xml 中初始化 log4j,你可以在 log4j 的配置文件中更轻松的取到 web 应用的绝对路径。
http://www.blogjava.net/Unmi/archive/2006/03/24/124075.html
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/gongora/archive/2009/05/18/4199293.aspx