<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    J2EE社區(qū)

    茍有恒,何必三更起五更眠;
    最無益,只怕一日曝十日寒.
    posts - 241, comments - 318, trackbacks - 0, articles - 16

    log4j 配置 使用教程 例子

    Posted on 2009-09-04 17:07 xcp 閱讀(8832) 評(píng)論(4)  編輯  收藏 所屬分類: JAVA

    一、log4j使用步驟(重點(diǎn)在使用過程和初始化):
    1.將log4j.jar相關(guān)包放到j(luò)sp-examples\WEB-INF\lib下;
    2.在classpath下面建立log4j.properties;
    3.完善log4j.properties內(nèi)容:
      

    log4j.rootLogger=warn, stdout,A1

    #配置輸出到控制臺(tái)
    log4j.appender.stdout
    =org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout
    =org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern
    =(%F:%L) - %m%n

    log4j.appender.A1
    =org.apache.log4j.DailyRollingFileAppender 
    log4j.appender.A1.layout
    =org.apache.log4j.HTMLLayout
    log4j.appender.A1.File
    =${webappHome}/logs/${date}_log.html
    log4j.appender.A1.MaxFileSize
    = 100KB


       具體log4j.properties的配置方法參見http://hi.baidu.com/276668688/blog/item/e8d2fc1fdd8818c1a786698d.html
    4.初始化log4j的配置文件:有兩種方法
       方法一:
        a.新建一個(gè)初始化類,一般用Servlet或過濾器Log4JInit.java
                    

    package log4j; 
    import java.io.*
    import javax.servlet.*
    import javax.servlet.http.*
    import org.apache.log4j.*;

    public class Log4JInit extends HttpServlet {
       
    public void init() throws ServletException{
           String prefix 
    = getServletContext().getRealPath("/"); 
           String test 
    = getServletContext().getRealPath(""); 
           System.out.println(prefix); 
           System.out.println(test); 
          
           System.setProperty(
    "webappHome", test);
           String file 
    = getServletConfig().getInitParameter("log4j-config-file"); 
           System.out.println(prefix
    +file); 
           
    // 從Servlet參數(shù)讀取log4j的配置文件 
            if (file != null
             PropertyConfigurator.configure(prefix 
    + file); 
           
           }

       }

    }
     
         注意:System.setProperty("webappHome", test);”這行代碼要出現(xiàn)在“PropertyConfigurator.configure(prefix + file);”這行代碼之前;因?yàn)檫@樣才給"webappHome"設(shè)置值了,log4j.properties文件中的“log4j.appender.A1.file=${webappHome}/logs/tomcat_log_”中的“${webappHome}”這個(gè)環(huán)境變量才被賦值了,否則無法輸出日志文件;
         b.配置web.xml文件
         
    <servlet> 
       
    <servlet-name>log4jinit</servlet-name> 
       
    <servlet-class>log4j.Log4JInit</servlet-class> 
       
    <init-param> 
           
    <param-name> log4j-config-file </param-name> 
           
    <param-value>properties\log4j.properties</param-value> 
       
    </init-param> 
       
    <load-on-startup>1</load-on-startup> 
    </servlet>
         注意:上面的load-on-startup應(yīng)設(shè)為1,以便在Web容器啟動(dòng)時(shí)即裝入該Servlet。log4j.properties文件放在根的properties子目錄中,也可以把它放在其它目錄中。應(yīng)該把.properties文件集中存放,這樣方便管理。

       方法二、使用Spring已經(jīng)寫好的過濾器
          a.配置web.xml
         
      <context-param>
        
    <param-name>log4jConfigLocation</param-name>
        
    <param-value>/WEB-INF/config/log4j.properties</param-value>
      
    </context-param>  
      
    <context-param>
        
    <param-name>log4jRefreshInterval</param-name>
        
    <param-value>6000</param-value>
      
    </context-param>
      
    <listener>
          
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
      
    </listener>

    5.在webapp中使用log4j
       主要建立一個(gè)屬性public static Logger logger = Logger.getLogger(Log4jTest.class);
        logger.debug("This is debug.");
        logger.info("This is an info.");
        logger.warn("This is a warning.");
        logger.error("This is an error.");
       logger.fatal("This is a fatal error.");

    6.在具體使用的時(shí)候如果觸發(fā)了異常,就在生成以日期命名的html日志文件tomcat_log_2007-03-05.html了!
      這個(gè)日志的格式可以在log4j.properties里面配置.......

    7.在這想請(qǐng)教高手一個(gè)問題:如果我們一個(gè)項(xiàng)目開始團(tuán)隊(duì),有多個(gè)成員,我想我一個(gè)成員都有自己的日志文件,以便于系統(tǒng)的維護(hù),應(yīng)該加肯定可以實(shí)現(xiàn),請(qǐng)高手賜教!!!


    名稱: ?4C.ESL | .↗Evon
    口號(hào): 遇到新問題?先要尋找一個(gè)方案乄而不是創(chuàng)造一個(gè)方案こ
    mail: 聯(lián)系我


    Feedback

    # re: log4j 配置 使用教程 例子  回復(fù)  更多評(píng)論   

    2009-09-07 11:50 by ZUZG
    可以再log4j.properties中增加appender
    log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.A2.layout=org.apache.log4j.HTMLLayout
    log4j.appender.A2.File=${webappHome}/logs/${date}_log.html
    log4j.appender.A2.MaxFileSize= 100KB

    log4j.logger.com.myapp.module2=debug, A2

    類似這樣增加多個(gè)appender

    試試。。。

    # re: log4j 配置 使用教程 例子  回復(fù)  更多評(píng)論   

    2009-09-07 14:00 by http://lifesinger.org/blog/page/2/
    http://lifesinger.org/blog/page/2/

    # re: log4j 配置 使用教程 例子[未登錄]  回復(fù)  更多評(píng)論   

    2009-09-07 16:33 by test
    以下內(nèi)容僅僅是為了測(cè)試:
    www.flyworkd.com

    # re: log4j 配置 使用教程 例子  回復(fù)  更多評(píng)論   

    2014-09-19 22:23 by zuidaima
    log4j demo教程源代碼下載:http://zuidaima.com/share/klog4j-p1-s1.htm
    主站蜘蛛池模板: 亚洲精品无码mv在线观看网站| 免费一级毛片正在播放| 亚洲AV无码专区在线播放中文| 日韩毛片一区视频免费| 小小影视日本动漫观看免费| 亚洲精品无码成人| 天天看免费高清影视| 亚洲国产精华液2020| 国产在线不卡免费播放| 四虎国产精品成人免费久久| 国产国拍亚洲精品福利 | 国产成人免费全部网站| 美女被免费视频网站a| 亚洲爽爽一区二区三区| baoyu116.永久免费视频| 337p日本欧洲亚洲大胆精品555588 | 99在线热视频只有精品免费| 久久久亚洲欧洲日产国码是AV| 色老头永久免费网站| 日韩亚洲不卡在线视频中文字幕在线观看| AV免费网址在线观看| 美女被爆羞羞网站在免费观看| 中文字幕亚洲日韩无线码| 久久精品免费观看| 亚洲人成电影院在线观看| 国产做床爱无遮挡免费视频| 久久久久久av无码免费看大片 | 亚洲国产品综合人成综合网站| 午夜电影免费观看| 国产精品内射视频免费| 亚洲黄色在线电影| 国产精品免费小视频| 免费观看久久精彩视频| 中文字幕乱码亚洲无线三区 | 免费精品视频在线| 亚洲久本草在线中文字幕| 色吊丝最新永久免费观看网站| xxxx日本在线播放免费不卡| 在线电影你懂的亚洲| 亚洲JIZZJIZZ中国少妇中文| 性色午夜视频免费男人的天堂|