1. 下载log4j-1.2.8.jar包,将其存放在WEB-INF/lib目录下。
2. 在WEB-INF/classes目录下新建log4j.properties。
3. log4j.properties的内容可以如下, 不理解,可以看看log4j.properties配置文件介绍
[url]http://maymay.iteye.com/blog/1275432[/url]
[quote]
### set log levels ###
log4j.rootLogger=DEBUG,A1,A2
### direct messages to file framework.log ###
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=framework.log
log4j.appender.A2.Threshold = DEBUG ## 输出DEBUG级别以上的日志
log4j.appender.A2.DatePattern='.'yyyy-MM-dd
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p]%d%n%l%n%m%n
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.Target=System.out
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-5p(%10c{1}) %m%n
### application log config ###
log4j.logger.com.may=DEBUG,A1,A2
[/quote]
4. 新建一个servlet,内容可以如下:
5. web.xml配置
[quote]
<servlet>
<servlet-name>log4j-init</servlet-name>
<servlet-class>com.may.framework.initLog4j.InitLog4jServlet</servlet-class>
<init-param>
<param-name>log4j-initial-file</param-name>
<param-value>WEB-INF/classes/log4j.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
[/quote]
6. 测试
2. 在WEB-INF/classes目录下新建log4j.properties。
3. log4j.properties的内容可以如下, 不理解,可以看看log4j.properties配置文件介绍
[url]http://maymay.iteye.com/blog/1275432[/url]
[quote]
### set log levels ###
log4j.rootLogger=DEBUG,A1,A2
### direct messages to file framework.log ###
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=framework.log
log4j.appender.A2.Threshold = DEBUG ## 输出DEBUG级别以上的日志
log4j.appender.A2.DatePattern='.'yyyy-MM-dd
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p]%d%n%l%n%m%n
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.Target=System.out
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-5p(%10c{1}) %m%n
### application log config ###
log4j.logger.com.may=DEBUG,A1,A2
[/quote]
4. 新建一个servlet,内容可以如下:
package com.may.framework.initLog4j;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.PropertyConfigurator;
public class InitLog4jServlet extends HttpServlet {
/**
*
*/
public void init() {
final String prefix = getServletContext().getRealPath("/");
System.out.println("Real path:" + prefix);
final String path = getServletContext().getRealPath("");
System.setProperty("webAppHome", path); // 给log4j.properties文件中的变量
// 'webAppHome' 赋值
final String file = getInitParameter("log4j-initial-file");
// if the log4j-init-file is not set, then no point in trying
if (file != null) {
PropertyConfigurator.configure(prefix + file);
System.out.println("Load log4j.properties resource");
}
}
}
5. web.xml配置
[quote]
<servlet>
<servlet-name>log4j-init</servlet-name>
<servlet-class>com.may.framework.initLog4j.InitLog4jServlet</servlet-class>
<init-param>
<param-name>log4j-initial-file</param-name>
<param-value>WEB-INF/classes/log4j.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
[/quote]
6. 测试
package app;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class RegisterAction extends Action {
protected static Logger log = Logger.getLogger("ClassName.class");
/**
*
* @param mapping
* @param form
* @param req
* @param res
* @return
*/
public ActionForward excute(ActionMapping mapping, ActionForm form,
HttpServletRequest req, HttpServletResponse res) {
log.info("-------------in execute");
log.debug("------------------");
ActionForward forward = new ActionForward();
forward = mapping.findForward("success");
return (forward);
}
}