日期:2014-05-18  浏览次数:20854 次

log4j在web.xml怎么配置啊?
log4j在web.xml怎么配置啊?还有那个文件输出的地方我要把它输出到工程目录下面,如何设置?哪位大哥大姐指教一下。

------解决方案--------------------
常用log4j配置
二、log4j.xml
<?xml version= "1.0 " encoding= "GB2312 " ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd ">
<log4j:configuration xmlns:log4j= "http://jakarta.apache.org/log4j/ ">
<appender name= "org.zblog.all " class= "org.apache.log4j.RollingFileAppender ">
<!-- 设置通道ID:org.zblog.all和输出方式:org.apache.log4j.RollingFileAppender -->
<param name= "File " value= "E:/study/log4j/all.output.log " /> <!-- 设置File参数:日志输出文件名 -->
<param name= "Append " value= "false " /> <!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->
<param name= "MaxBackupIndex " value= "10 " />
<layout class= "org.apache.log4j.PatternLayout ">
<param name= "ConversionPattern " value= "%p (%c:%L)- %m%n " /> <!-- 设置输出文件项目和格式 -->
</layout>
</appender>
<appender name= "org.zblog.zcw " class= "org.apache.log4j.RollingFileAppender ">
<param name= "File " value= "E:/study/log4j/zhuwei.output.log " />
<param name= "Append " value= "true " />
<param name= "MaxFileSize " value= "10240 " /> <!-- 设置文件大小 -->
<param name= "MaxBackupIndex " value= "10 " />
<layout class= "org.apache.log4j.PatternLayout ">
<param name= "ConversionPattern " value= "%p (%c:%L)- %m%n " />
</layout>
</appender>
<logger name= "zcw.log "> <!-- 设置域名限制,即zcw.log域及以下的日志均输出到下面对应的通道中 -->
<level value= "debug " /> <!-- 设置级别 -->
<appender-ref ref= "org.zblog.zcw " /> <!-- 与前面的通道id相对应 -->
</logger>
<root> <!-- 设置接收所有输出的通道 -->
<appender-ref ref= "org.zblog.all " /> <!-- 与前面的通道id相对应 -->
</root>
</log4j:configuration>
三、配置文件加载方法:
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.apache.log4j.xml.DOMConfigurator;
public class Log4jApp {
public static void main(String[] args) {
DOMConfigurator.configure( "E:/study/log4j/log4j.xml ");//加载.xml文件
//PropertyConfigurator.configure( "E:/study/log4j/log4j.properties ");//加载.properties文件
Logger log=Logger.getLogger( "org.zblog.test ");
log.info( "测试 ");
}
}
四、项目使用log4j
在web 应用中,可以将配置文件的加载放在一个单独的servlet中,并在web.xml中配置该servlet在应用启动时候加载。对于在多人项目中,可以给每一个人设置一个输出通道,这样在每个人在构建Logger时,用自己的域名称,让调试信息输出到自己的log文件中。
五、常用输出格式
# -X号:X信息输出时左对齐;
# %p:日志信息级别
# %d{}:日志信息产生时间
# %c:日志信息所在地(类名)
# %m:产生的日志具体信息
# %n:输出日志信息换行

------解决方案--------------------
web.xml配置:

<servlet>
<servlet-name> log4j-init </servlet-name>
<servlet-class> com.log4j.Log4jInit </servlet-class>
<init-param>
<param-name> log4j </param-name>
<param-value> WEB-INF/log4j.properties </param-value>
</init-param>
<load-on-startup> 1 </load-on-startu