新建一个JAVA WEB 项目,就是一个动态网站。
例名字为sms
(一)去下载log4j版本。
把log4j-1.2.17.jar放到WEB-INF/lib目录下(二)java源码目录下的src目录下新建一个名名"log4j.properties"
### \u8BBE\u7F6E###log4j.rootLogger = debug,stdout,D,L,E### \u8F93\u51FA Console(System.out)###log4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target = System.outlog4j.appender.stdout.layout = org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n### \u8F93\u51FA DEBUG ###log4j.appender.D = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.D.File = E://logs/sms/debug.loglog4j.appender.D.Append = truelog4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayoutlog4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n### \u8F93\u51FA INFO ###log4j.appender.l = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.l.File = E://logs/sms/info.loglog4j.appender.l.Append = truelog4j.appender.l.Threshold = INFO log4j.appender.l.layout = org.apache.log4j.PatternLayoutlog4j.appender.l.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n### \u8F93\u51FA ERROR ###log4j.appender.E = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.E.File =E://logs/sms/error.log log4j.appender.E.Append = truelog4j.appender.E.Threshold = ERROR log4j.appender.E.layout = org.apache.log4j.PatternLayoutlog4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
(三)在项目下建一个初始化log4j的servlet。名字为Log4jInit的
在Log4jInit的servlet中添加初始化配置public void init() throws ServletException { String file = this.getInitParameter("log4j");// 从web.xml配置读取,名字一定要和web.xml配置一致 if (file != null) { PropertyConfigurator.configure(file); }}
(四)在 web.xml中添加
Log4jInit com.xxx.dxw.sms.Log4jInit log4j /WEB-INF/classes/log4j.properties
(五)在WEB项目的各个servlet和class中。 在各个servelt和class中新引入以下Log4j的Logger类。
// 如果直接 className.class 日志输出到全局的 即rootLogger 指定的文件中// Logger logger = Logger.getLogger(this.getClass().getName());// 如果指定logger名字,则是把日志,输出到D (debug) 指定的日志文件中去 Logger logger = Logger.getLogger("D");
然后在在servet和class中直接使用logger.info("servlet4: GET方式: " + url);
logger.info("servlet4: GET方式: " + url);
然后就可以到相关的目录下查看日志了。