yxhxj2006

          常用鏈接

          統計

          最新評論

          log4j配置日志

          懂行的人都知道,log4j日志是個很基礎的東東,與struts這種高層框架無關,只與web開發了的tomcat有關。這里之所以寫出struts,是因為筆者一開始用struts的時候,以為是這樣,也是這樣google的。好了,言歸正傳,開工了
          給tomcat配置log4j有好幾種方法,我知道的有:
          一、tomcat級別的統一日志管理(沒有實際驗證過,只是查了資料):
          在tomcat的common/lib下增加log4j的.jar包,以便程序使用的時候,能夠加載到。
          在自己的webapps的WEB-INF/classes下添加log4j.properties配置,所有的東西都是自動的
           
          這種方式的缺點很明顯,一個tomcat可能會多個子webapps,都統一到一個日志下,非常不便于管理。所以重點看下面
           
          二、每個webapp分別配置log4j(切實可行的實踐經驗)
          1、在自己youapp的WEB-INF/lib下增加log4j-xxx.jar文件
          2、自己寫一個servlet,初始化log4j的相關配置信息:
          Java代碼
          import javax.servlet.ServletException;  
          import javax.servlet.ServletRequest;  
          import javax.servlet.ServletResponse;  
          import javax.servlet.http.HttpServlet;  
          import org.apache.log4j.PropertyConfigurator;  
            
          public class Log4jInitServlet extends HttpServlet {  
              public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException {          
              }  
                
              public void init() throws ServletException {  
                  System.setProperty("webappRoot", getServletContext().getRealPath("/"));       
                  PropertyConfigurator.configure(getServletContext().getRealPath("/") + getInitParameter("configfile"));  
              }  
          }  
           3、修改web.xml文件,讓tomcat啟動你app的時候自動加載剛才這個servlet:
          Xml代碼
          <!-- initialize log4j -->  
          <servlet>  
              <servlet-name>log4j config file</servlet-name>  
              <servlet-class>com.keepc.util.Log4jInitServlet</servlet-class>  
              <init-param>  
                  <param-name>configfile</param-name>  
                  <param-value>/WEB-INF/classes/log4j.properties</param-value>  
              </init-param>  
                
              <load-on-startup>1</load-on-startup>  
          </servlet>  
           4、在youapp/WEB-INF/classes先新建log4j.properties文件,內容如下:
          log4j.rootLogger=debug, A1

          log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
          log4j.appender.A1.file=${webappRoot}/logs/youapp_log-
          log4j.appender.A1.DatePattern=yyyy-MM-dd'.log'
          log4j.appender.A1.layout=org.apache.log4j.PatternLayout
          log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss, SSS}[%c]-[%p] %m%n
          5、重新啟動tomcat,即可在你的youapp應用目錄下看到logs目錄和對應的log文件
          #:這里說道的webapp目錄是指:c:\program files\tomcat\webapps\youapp目錄
          6、在你的app目錄下創建一個jsp做下測試:
          Html代碼
          <%@ page contentType="text/html; charset=GBK" language="java" import="org.apache.log4j.Logger,java.util.*"%>  
          <html>  
          <head>  
          <link href="style/reg.css" rel="stylesheet" type="text/css">  
          <title>測試頁面</title>  
          </head>  
          <body>  
            
          <%  
          Logger log = Logger.getLogger("test.jsp");  
          log.debug("測試日志,哈哈");  
          %>  
            
          </body>  
            
          </html>  
          在你的瀏覽器調用下這個jsp,就可以看到日志內容了。
           
          本方法在windows和linux下都通用,完全一樣。
          只與log4j.properties的詳細配置方法,網上隨便google下都有一籮筐,照抄就是了。

          posted on 2012-12-25 00:52 奮斗成就男人 閱讀(1059) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 峨边| 白水县| 资兴市| 迁安市| 通山县| 伽师县| 望都县| 曲周县| 阿勒泰市| 元氏县| 宜君县| 新化县| 花垣县| 吉林省| 黔西| 桂林市| 翁牛特旗| 德钦县| 东海县| 灵川县| 福海县| 湘潭市| 牡丹江市| 南澳县| 勐海县| 长治市| 渑池县| 平昌县| 资中县| 孝感市| 安顺市| 当阳市| 台前县| 赣榆县| 高阳县| 酒泉市| 阳江市| 建德市| 昭平县| 松桃| 胶州市|