qiyadeng

          專注于Java示例及教程
          posts - 84, comments - 152, trackbacks - 0, articles - 34

          在web project中使用log4j

          Posted on 2005-09-23 14:16 qiyadeng 閱讀(991) 評論(0)  編輯  收藏 所屬分類: J2EE

          在web project中使用log4j

          下面我們以在tomcat中示范怎么配置和使用log4j

          環境設置:用過tomcat的都知道,應該把log4j.jar文件拷貝到%TOMCAT_HOME%\common\lib中。
          編輯servlet:

           1package my.scwcd;
           2
           3
           4import javax.servlet.ServletException;
           5import javax.servlet.http.HttpServlet;
           6
           7import org.apache.log4j.PropertyConfigurator;
           8
           9public class Log4jInit extends HttpServlet {
          10
          11 public Log4jInit() {
          12  super();
          13 }

          14
          15 public void destroy() {
          16  super.destroy(); // Just puts "destroy" string in log
          17 }

          18
          19 public void init() throws ServletException {
          20  String path = getServletContext().getRealPath("/");
          21  
          22  String file = getInitParameter("log4j");
          23  if(file != null){
          24   PropertyConfigurator.configure(path+file);
          25  }

          26  
          27 }

          28
          29}

          30
          31


          并在web.xml中加入如下配置:

           1  <servlet>
           2    <servlet-name>Log4jInit</servlet-name>
           3    <servlet-class>my.scwcd.Log4jInit</servlet-class>
           4    <init-param>
           5     <param-name>log4j</param-name>
           6     <param-value>WEB-INF\log4j.properties</param-value>
           7    </init-param>
           8    <load-on-startup>1</load-on-startup>
           9  </servlet>
          10


          注意上面<param-value>中的"\"在linux要寫成"/"。
          還有加上log4j.properties文件在WEB-INF目錄下

          log4j.rootLogger=INFO, A1 , R
          log4j.appender.A1=org.apache.log4j.ConsoleAppender
          log4j.appender.A1.layout=org.apache.log4j.PatternLayout
          log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

          log4j.appender.R=org.apache.log4j.RollingFileAppender
          log4j.appender.R.File=log4j.log
          log4j.appender.R.MaxFileSize=100KB
          log4j.appender.R.MaxBackupIndex=1
          log4j.appender.R.layout=org.apache.log4j.PatternLayout
          log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

           

          下面寫了兩個測試的程序:
          servlet Test.java中:

           1 public void doGet(HttpServletRequest request, HttpServletResponse response)
           2   throws ServletException, IOException {
           3
           4  response.setContentType("text/html");
           5  PrintWriter out = response.getWriter();
           6  Logger logger = Logger.getLogger(Test.class);
           7  logger.info("Test use Logging for Servlet");
           8  out.println("<h1>Success<h1>");
           9  out.flush();
          10  out.close();
          11 }

          12
          13


          JSP temp.jsp中:

          1   <%
          2    response.setContentType("text/html");
          3  Logger logger = Logger.getLogger("temp.jsp");
          4  logger.info("Test use Logging for JSP");
          5  out.println("<h1>Success<h1>");
          6   %>
          7


          這樣在%TOMCAT_HOME%\bin目錄下會產生log4j.log的文件,這就是日志文件。

          主站蜘蛛池模板: 离岛区| 土默特右旗| 特克斯县| 冷水江市| 汉源县| 宁乡县| 庄浪县| 永安市| 凭祥市| 嘉义县| 兴和县| 成武县| 南岸区| 工布江达县| 泊头市| 美姑县| 临澧县| 高州市| 彭州市| 璧山县| 章丘市| 海伦市| 安西县| 浦县| 磐石市| 墨脱县| 九江县| 大名县| 重庆市| 七台河市| 红原县| 新巴尔虎左旗| 武威市| 昌邑市| 南郑县| 安西县| 伊吾县| 新巴尔虎左旗| 桑植县| 紫金县| 施甸县|