[Java学习] 之Log4j学习
1.首先:下载log4j
2.在WEB-INF中建立log4j.properties
并可参考这段代码
1 log4j.rootLogger=DEBUG,A1,A2,A3,A4 2 3 ### system.out ### 4 log4j.appender.A2 =org.apache.log4j.ConsoleAppender 5 log4j.appender.A2.Threshold=DEBUG 6 log4j.appender.A2.Target=System.out 7 ###log4j.appender.A2.encoding=UTF-8 8 log4j.appender.A2.layout=org.apache.log4j.PatternLayout 9 log4j.appender.A2.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n 10 11 ### file debug ### 12 log4j.appender.A1 = org.apache.log4j.DailyRollingFileAppender 13 log4j.appender.A1.File = ../logs/run/DServerDebug.log 14 log4j.appender.A1.DatePattern='.'yyyy-MM-dd 15 ###log4j.appender.A1.MaxFileSize=100MB 16 log4j.appender.A1.encoding=UTF-8 17 log4j.appender.A1.Append = true 18 log4j.appender.A1.Threshold = DEBUG 19 log4j.appender.A1.layout = org.apache.log4j.PatternLayout 20 log4j.appender.A1.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n 21 22 ### file INFO ### 23 log4j.appender.A3 = org.apache.log4j.DailyRollingFileAppender 24 log4j.appender.A3.File = ../logs/run/DServerINFO.log 25 log4j.appender.A3.DatePattern='.'yyyy-MM-dd 26 ###log4j.appender.A3.MaxFileSize=10MB 27 log4j.appender.A3.encoding=UTF-8 28 log4j.appender.A3.Append = true 29 log4j.appender.A3.Threshold = INFO 30 log4j.appender.A3.layout = org.apache.log4j.PatternLayout 31 log4j.appender.A3.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n 32 33 34 ### file ERROR ### 35 log4j.appender.A4 = org.apache.log4j.DailyRollingFileAppender 36 log4j.appender.A4.File = ../logs/run/DServerERROR.log 37 log4j.appender.A4.DatePattern='.'yyyy-MM-dd 38 ###log4j.appender.A4.MaxFileSize=100MB 39 log4j.appender.A4.encoding=UTF-8 40 log4j.appender.A4.Append = true 41 log4j.appender.A4.Threshold = ERROR 42 log4j.appender.A4.layout = org.apache.log4j.PatternLayout 43 log4j.appender.A4.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n
可根据不同的项目 修改不同的参数就可以了。 具体参数的作用可参考此文章:http://blog.sina.com.cn/s/blog_7096a4800100pa5c.html
3.在这里 由于我用的是Servlet 所以在 Web.xml中加入了 Servlet的配置
1 <!-- 开始 Log4j Servlet配置 --> 2 <servlet> 3 <servlet-name>log4j-init</servlet-name> 4 <servlet-class>application.Log4jInit</servlet-class><!--log4j初始化servlet类的包路径--> 5 <init-param> 6 <param-name>log4j</param-name> 7 <param-value>WEB-INF/log4j.properties</param-value><!--log4j配置文件路径--> 8 <!--log4j配置文件路径或者写成绝对路径,比如:C:\Program Files\apache-tomcat-6.0.35\word\log4j.properties--> 9 </init-param> 10 <load-on-startup>1</load-on-startup> 11 </servlet> 12 <!--结束 Log4j Servlet配置-->
4.编写初始化类:log4jInit
1 package application; 2 3 import javax.servlet.http.HttpServlet; 4 import org.apache.log4j.PropertyConfigurator; 5 6 /* 7 * 初始化Log4J 8 * 9 */ 10 11 public class Log4jInit extends HttpServlet { 12 public void init(ServletConfig config) throws ServletException() 13 { 14 String prefix = config.getServletContext().getRealPath("/"); 15 String file = config.getInitParameter("log4j"); 16 System.out.println("日志的配置文件路径为:"+prefix+file); 17 if(file != null) 18 { 19 PropertyConfigurator.configure(prefix+file); //载入配置文件 20 System.out.println("日志的配置文件读取成功"); 21 22 } 23 } 24 }
到这里准备工作就结束了 可以使用log4j来进行日志的记录了。
5.使用
在要用的地方
1 static Logger logger = Logger.getLogger(当前类.class); 2 logger.debug(content);
------------------------------
没有雨伞的孩子,得学会努力奔跑