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

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

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

    隨筆 - 18, 文章 - 0, 評論 - 8, 引用 - 0
    數據加載中……

    學習Log4j筆記

    今天花了一天的時間來配置Log4j,沒想到要那么多時間,還問了不少人,帖子也發了不少,不過最終還是搞定了,不過還有些問題,請高手幫我看看,多謝了。

    1.首先是配置簡單java project
    現在來看log4j.propertise
    #級別為DEBUG,二個輸出端,分別為stdout,R
    log4j.logger.helloappLogger=DEBUG, stdout, R

    #控制臺輸出
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%5p (%F:%L) - %m%n

    #保存到helloappLoggerlog.txt日志中,大小為100KB
    log4j.appender.R=org.apache.log4j.RollingFileAppender
    log4j.appender.R.File=F:/code/eclipse/workspace/TestLo4j/log/helloappLoggerlog.txt
    log4j.appender.R.MaxFileSize=100KB
    log4j.appender.R.MaxBackupIndex=1
    log4j.appender.R.layout=org.apache.log4j.PatternLayout
    log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss} %-5p %c - %m%n

    java文件中用到日志
    package com;
    import org.apache.log4j.*;
    public class TestLog4j {
        static Logger logger = Logger.getLogger("helloappLogger");
        public static void main(String[] args) {
    //      PropertyConfigurator.configure("log4j.properties");
    //      如果.properties在當前目錄下可以省略,我放在項目根目錄下,和com包同目錄
            logger.debug("Debug ...");
            logger.info("Info ...");
            logger.warn("Warn ...");
            logger.error("Error ...");
        }
    }

    2.web project中配置log4j

    還是先來看log4j.perproties

    #級別為DEBUG,三個輸出端,分別為stdout,FILE,R
    log4j.logger.hello=DEBUG, stdout, FILE, R

    #stdout是在控制臺輸出
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%5p (%F:%L) - %m%n

    #保存在rolling_log_file.log日志中,appender是RollingFileAppender
    #需要注意的是File=F:/code/...,不要寫成\,這就一點害死我了
    log4j.appender.R=org.apache.log4j.RollingFileAppender
    log4j.appender.R.File=F:/code/eclipse/workspace/TestCvs/WebRoot/WEB-INF/rolling_log_file.log
    log4j.appender.R.MaxFileSize=100KB
    log4j.appender.R.MaxBackupIndex=1
    log4j.appender.R.layout=org.apache.log4j.PatternLayout
    log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss} %-5p %c - %m%n

    #保存在log_file.log日志中,appender是FileAppender
    log4j.appender.FILE=org.apache.log4j.FileAppender
    log4j.appender.FILE.File=F:/code/eclipse/workspace/TestCvs/WebRoot/WEB-INF/log_file.log
    log4j.appender.FILE.Append=false
    log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
    log4j.appender.FILE.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss} %-5p %c - %m%n

    之后要把它加入serlet中,和服務器一起啟動,方便其他程序使用

    public class Log4jServlet extends HttpServlet {
        public void init() throws ServletException {
            ServletContext sct = getServletContext();
            System.out.println("[Log4j]: The Root Path: " + sct.getRealPath("/"));
            System.out.println("[Log4j]: InitServlet init start...");
            PropertyConfigurator.configure(sct.getRealPath("/")
                  +getServletConfig().getInitParameter("propfile"));
            System.out.println("[Log4j]: InitServlet init over.");
        }
    }

    <servlet>
        <description>init log4j of servlet</description>
        <display-name>log4j servlet</display-name>
        <servlet-name>Log4jServlet</servlet-name>
        <servlet-class>com.testCvs.Log4jServlet</servlet-class>
        <init-param>
         <param-name>propfile</param-name>
         <param-value>/WEB-INF/log4j.properties</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    注:log4j.properties放在/WEB-INF下,servlet自動加載這個文件

    至此所有配置應該成功了,不過還是有些問題沒有解決好,問了幾個朋友也沒有得到好的答復,但是現在可以在控制臺和文件中輸出日志,基本功能達到了。還請各位有空給我看看這個錯誤,歡迎指正。

    錯誤如下:
    log4j:WARN No appenders could be found for logger (org.apache.jasper.compiler.JspRuntimeContext).
    log4j:WARN Please initialize the log4j system properly.

    posted on 2005-07-24 22:10 丑男 閱讀(9659) 評論(8)  編輯  收藏 所屬分類: Log4j

    評論

    # re: 學習Log4j筆記  回復  更多評論   

    看了你寫的很不錯.幫我解決了問題.
    報那個錯誤應該問題不大.
    我這里使用那個類加載log4j后竟然沒有報那個錯誤了.
    你可以試試把你寫在web.xml中的那段<servlet>....</servlet>放在struts的actionservlet的前面.
    這樣它就先加載log4j了.
    祝你好運.
    2005-08-05 18:22 | shaokun305

    # re: 學習Log4j筆記  回復  更多評論   

    TO:shaokun305
    多謝你的建議,但我沒有成功,還是會出現那個錯誤
    2005-08-05 22:53 | 丑男

    # re: 學習Log4j筆記  回復  更多評論   

    我也出現這種情況
    log4j:WARN No appenders could be found for logger (org.apache.catalina.session.M
    anagerBase).
    log4j:WARN Please initialize the log4j system properly.
    不知道什么原因,怎么也啟動不了,,
    不過重啟一個就可以了,郁悶!
    2006-09-19 10:56 | tea

    # re: 學習Log4j筆記  回復  更多評論   

    good artical,could we make a firend?Contact me:)MSN:smc@rjgrid.com.cn
    2007-05-22 14:49 | LightStaler

    # re: 學習Log4j筆記  回復  更多評論   

    @LightStaler
    過獎了,老早的寫了,好久沒更新了
    2007-05-23 01:20 | sunjavaer

    # re: 學習Log4j筆記  回復  更多評論   

    我也有類似情況:
    log4j:WARN No appenders could be found for logger (org.jnp.interfaces.NamingContext).
    log4j:WARN Please initialize the log4j system properly.
    我的解決方法是:
    第一行的log4j.logger.x=....改為:log4j.rootLogger=...
    試試看,估計是rootLogger可以截獲所有類的log,單獨的logger的范圍不夠大。
    2007-11-09 22:35 | popkev

    # re: 學習Log4j筆記  回復  更多評論   

    @shaokun305
    還是不可以阿?
    2007-12-30 21:26 | 咯個

    # re: 學習Log4j筆記  回復  更多評論   

    我也按照你的做法做了就是記錄不了日志
    2008-11-10 17:40 | ###

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


    網站導航:
     
    主站蜘蛛池模板: 美女被爆羞羞网站免费| 久久夜色精品国产嚕嚕亚洲av| 777亚洲精品乱码久久久久久| 国产精品亚洲av色欲三区| 97无码免费人妻超级碰碰碰碰 | 亚洲AV无码久久精品成人| 日本高清不卡aⅴ免费网站| 又粗又硬免费毛片| jizzjizz亚洲日本少妇| 一二三四在线播放免费观看中文版视频| 亚洲精品福利视频| 99热在线观看免费| 亚洲欧洲精品一区二区三区| 久久久久国产精品免费网站| 亚洲大片在线观看| 在线视频观看免费视频18| 亚洲av专区无码观看精品天堂 | 2022国内精品免费福利视频| 中文字幕日韩亚洲| 日本人成在线视频免费播放| 亚洲短视频在线观看| 我要看免费的毛片| 一级毛片免费在线播放| 亚洲精品无码高潮喷水在线| 1000部无遮挡拍拍拍免费视频观看| 亚洲人成7777| 国产亚洲大尺度无码无码专线| 57pao一国产成视频永久免费| 亚洲av日韩综合一区久热| 免费人成在线观看网站视频| 激情吃奶吻胸免费视频xxxx| 四虎永久在线精品免费观看地址 | 亚洲春色另类小说| 免费一级成人毛片| 免费精品国产日韩热久久| jizz免费观看视频| 亚洲七久久之综合七久久| 国产AV无码专区亚洲AVJULIA| 91在线视频免费91| 成人电影在线免费观看| 一级a性色生活片久久无少妇一级婬片免费放 |