聶永的博客

          記錄工作/學習的點點滴滴。

          Log4j.xml 學習筆記

          一。log4j的基礎知識

           1.log4j有三種主要組件:logger、appender and layout
            2.Log4j提供的appender有以下幾種:
            org.apache.log4j.ConsoleAppender(控制臺)
            org.apache.log4j.FileAppender(文件)
            org.apache.log4j.DailyRollingFileAppender(每天產生一個日志文件)
            org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件)
            org.apache.log4j.WriterAppender(將日志信息以流格式發送到任意指定的地方)
            3.Log4j提供的layout有以下幾種:
            org.apache.log4j.HTMLLayout(以HTML表格形式布局)
            org.apache.log4j.PatternLayout(可以靈活地指定布局模式)
            org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串)
            org.apache.log4j.TTCCLayout(包含日志產生的時間、線程、類別等等信息)
            4.Log4j提供的幾種輸出格式:
           ?。:Used to output the method name where the logging request was issued.
           ?。:Used to output the application supplied message associated with the logging event.
            %l:Used to output location information of the caller which generated the logging event
           ?。:Used to output the line number from where the logging request was issued.
            %p:Used to output the priority of the logging event.
           ?。:Outputs the platform dependent line separator character or characters.
           ?。:Used to output the number of milliseconds elapsed since the start of the application until the creation of the logging event.
           ?。:Used to output the file name where the logging request was issued.
            %d:Used to output the date of the logging event.
           ?。:Used to output the category of the logging event
           ?。:Used to output the fully qualified class name of the caller issuing the logging request
            5.如果是對于效率要求比較高的話,要在log.debug()之前加上log.isDebugEnabled()進行判斷,這樣能夠大大減少執行時間
            6.對于各個appenders,共有的屬性是layout(一般設置為org.apache.log4j.PatternLayout),Threshold(Log的級別)
            (1)ConsoleAppender:Target(System.out和System.err)
            (2)FileAppender:File(定義輸出的文件名),Append(定義是否為追加)
            (3)DailyRollingFileAppender(除FileAppender屬性外):MaxFileSize(最大文件大小),MaxBackupIndex()

          以上來自http://www.wangchao.net.cn/bbsdetail_64587.html

          二。詳細配置log4j.xml文件

          <?xml version="1.0" encoding="UTF-8" ?>
          <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

          <log4j:configuration threshold="debug"
          xmlns:log4j='http://jakarta.apache.org/log4j/'>

              <appender name="console.CONSOLE"
            class="org.apache.log4j.ConsoleAppender">
            <param name="threshold" value="debug" />
            <layout class="org.apache.log4j.PatternLayout">
            <!--
             <param name="ConversionPattern" value="%d{HH:mm:ss}[%C.%M(%L)-%p] %m%n"/>
            -->
            <param name="ConversionPattern" value="%d{HH:mm:ss}[%C(%L)-%p] %m%n"/>
            </layout>
          </appender>

          <appender name="file.text.SYSFILE"
            class="org.apache.log4j.RollingFileAppender">
            <param name="threshold" value="error" />
            <param name="file" value="/juyee.log" />
            <param name="maxFileSize" value="2MB" />
            <param name="maxBackupIndex" value="5" />
            <param name="append" value="true" />
            <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern"
              value="%-d{yyyy-MM-dd HH:mm:ss.SSS} [%p]-[%c] %m%n" />
            </layout>
          </appender>
          <appender name="file.text.DATE_FILE"
            class="org.apache.log4j.DailyRollingFileAppender">
            <param name="threshold" value="debug" />
            <param name="file" value="/juyee.log" />
            <param name="append" value="true" />
            <param name="datePattern" value="'.'yyyy-MM-dd" />
            <!-- each hour
             <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
            -->
            <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern" value="%d %-5p [%c] %m%n" />
            </layout>
          </appender>
          <appender name="file.text.APPFILE"
            class="org.apache.log4j.RollingFileAppender">
            <param name="threshold" value="error" />
            <param name="file" value="${webapp.root}/WEB-INF/logs/juyee.log" />
            <param name="maxFileSize" value="1024KB" />
            <param name="maxBackupIndex" value="5" />
            <param name="append" value="true" />
            <layout class="org.apache.log4j.PatternLayout">
             <param name="ConversionPattern"
              value="%d %-5p %c - %m [%t] (%F:%L)%n" />
            </layout>
          </appender>
          <appender name="file.html.HTML"
            class="org.apache.log4j.RollingFileAppender">
            <param name="threshold" value="error" />
            <param name="file" value="/juyee-log.html" />
            <param name="maxFileSize" value="1024KB" />
            <param name="maxBackupIndex" value="5" />
            <param name="append" value="true" />
            <layout class="org.apache.log4j.HTMLLayout" />
          </appender>
          <appender name="file.xml.XML"
            class="org.apache.log4j.RollingFileAppender">
            <param name="threshold" value="error" />
            <param name="file" value="/juyee-log.xml" />
            <param name="maxFileSize" value="1024KB" />
            <param name="maxBackupIndex" value="5" />
            <param name="append" value="true" />
            <layout class="org.apache.log4j.xml.XMLLayout" />
          </appender>

            <appender name="mail.MAIL" class="org.apache.log4j.net.SMTPAppender">
            <param name="threshold" value="debug"/>
                      <!--
                  <param name="threshold" value="fatal"/>
                  -->
            <param name="BufferSize" value="10"/>
            <param name="From" value="yangguanjun@justonetech.com"/>
            <param name="SMTPHost" value=">
            <param name="Subject" value="juyee-log4jMessage"/>
            <param name="To" value="
          yangguanjun@justonetech.com"/>
            <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss.SSS} [%p]-[%c] %m%n" />
            </layout>
            </appender>

          <appender name="remote.CHAINSAW"
            class="org.apache.log4j.net.SocketAppender">
            <param name="threshold" value="fatal" />
            <param name="remoteHost" value="localhost" />
            <param name="port" value="4445" />
            <param name="locationInfo" value="true" />
          </appender>

          <category name="com.juyee" additivity="true">
            <priority value="info" />
            <appender-ref ref="console.CONSOLE" />
            <!--
            <appender-ref ref="file.text.DATE_FILE" />
            -->
          </category>

          <category name="com.co" additivity="true">
            <priority value="debug" />
            <appender-ref ref="console.CONSOLE" />
            <appender-ref ref="file.text.DATE_FILE" />
          </category>

          <category name="org" additivity="true">
            <priority value="WARN" />
            <appender-ref ref="console.CONSOLE" />
            <!--
            <appender-ref ref="file.text.DATE_FILE" />
            -->
          </category>

          <root>
            <!--
             <level value="trace" />
             <level value="debug" />
             <level value="info" />
             <level value="warn" />
             <level value="error" />
             <level value="fatal" />
             <appender-ref ref="console.CONSOLE" />
             <appender-ref   ref="file.text.DATE_FILE"/>
            -->
          </root>
          </log4j:configuration>

          Refer : http://dolphin-ygj.javaeye.com/blog/312504

          三。加載log4j.xml

          Refer : http://smilecertian.blog.sohu.com/52335422.html

          posted on 2009-01-20 09:12 nieyong 閱讀(6413) 評論(0)  編輯  收藏


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


          網站導航:
           

          公告

          所有文章皆為原創,若轉載請標明出處,謝謝~

          新浪微博,歡迎關注:

          導航

          <2009年1月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          統計

          常用鏈接

          留言簿(58)

          隨筆分類(130)

          隨筆檔案(151)

          個人收藏

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 乌拉特中旗| 同心县| 甘泉县| 伊金霍洛旗| 河曲县| 东乡族自治县| 大渡口区| 哈尔滨市| 天气| 来安县| 府谷县| 永康市| 京山县| 禄丰县| 洛隆县| 宁海县| 开平市| 日喀则市| 本溪市| 肥乡县| 化德县| 宁河县| 讷河市| 玛多县| 布尔津县| 墨玉县| 德格县| 江西省| 通榆县| 措勤县| 沙坪坝区| 凤山县| 平阴县| 湟中县| 醴陵市| 敦煌市| 阜南县| 江北区| 石嘴山市| 南靖县| 娄底市|