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

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

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

    posts - 20,  comments - 7,  trackbacks - 0

    ?? Log4j 有三個主要的組件: Loggers Appenders Layouts ,即日志類別,日志要輸出的地方和日志以何種形式輸出。

    1 Loggers

    ??? Loggers 組件在此系統中被分為六個級別: TRACE DEBUG INFO WARN ERROR FATAL

    2 Appenders

    ??Log4j 日志系統允許把日志輸出到不同的地方,如控制臺( Console )、文件( Files )、根據天數或者文件大小產生新的文件、以流的形式發送到其它地方等等。

    其語法表示為:

    org.apache.log4j.ConsoleAppender (控制臺)

    org.apache.log4j.FileAppender (文件)

    org.apache.log4j.DailyRollingFileAppender (每天產生一個日志文件)

    org.apache.log4j.RollingFileAppender (文件大小到指定尺寸時產生一個新的文件)

    org.apache.log4j.WriterAppender (將日志信息以流格式發送到任意指定的地方)

    3 Layouts

    ???Log4j 可以在 Appenders 的后面附加 Layouts 來完成這個功能。 Layouts 提供了四種日志輸出樣式,如根據 HTML 樣式、自由指定樣式、包含日志級別與信息的樣式和包含日志時間、線程、類別等信息的樣式等等。

    其語法表示為:

    org.apache.log4j.HTMLLayout (以 HTML 表格形式布局)

    org.apache.log4j.PatternLayout (可以靈活地指定布局模式)

    org.apache.log4j.SimpleLayout (包含日志信息的級別和信息字符串)

    org.apache.log4j.TTCCLayout (包含日志產生的時間、線程、類別等等信息)

    ?

    ? 在實際編程時,要使 Log4j 真正在系統中運行事先還要對配置文件進行定義。定義步驟就是對 Logger Appender Layout 的分別使用,具體如下:

    1 配置根 Logger ,其語法為:
    ??? log4j.rootLogger = [ level ] , appenderName, appenderName, …

    level Logger 的優先級,

    appenderName 是日志信息的輸出地,可以同時指定多個輸出地。

    如: log4j.rootLogger= INFO,A1,A2


    2
    配置日志信息輸出目的地 ,其語法為:
    ??? log4j.appender.appenderName = fully.qualified.name.of.appender.class
    ???
    可以指定上述五個目的地中的一個。

    3 配置日志信息的格式 ,其語法為:
    ??? log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
    ??

    下面給出一個具體配置例子,在程序中可以參照執行:
    ??? log4j.rootLogger=INFO,A1
    ??? log4j.appender.A1=org.apache.log4j.ConsoleAppender
    ?? ?log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    ??? log4j.appender.A1.layout.ConversionPattern=
    ??????????????????????????????????????? %-4r %-5p %d{yyyy-MM-dd HH:mm:ssS} %c %m%n
    ???

    這里需要說明的就是日志信息格式中幾個符號所代表的含義:
    X : X 信息輸出時左對齊;
    ?? %p:
    日志信息級別
    ?? %c:
    日志信息所在地(類名),通常就是所在類的全名
    ?? %m:
    產生的日志具體信息
    ?? %n:
    輸出日志信息換行, Windows 平臺為“ \r\n ”, Unix 平臺為“ \n
    ? %r
    輸出自應用啟動到輸出該 log 信息耗費的毫秒數

      %t 輸出產生該日志事件的線程名

      %d 輸出日志時間點的日期或時間,默認格式為 ISO8601 ,也可以在其后指定格式,比如: %d{yyy MMM dd HH:mm:ss,SSS} ,輸出類似: 2002 10 18 22 10 28 921

      %l 輸出日志事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。

    ?

    4 、讀取配置文件

    其語法為:

    BasicConfigurator.configure () 自動快速地使用缺省 Log4j 環境。

    PropertyConfigurator.configure ( String configFilename) :讀取使用 Java 的特性文件編寫的配置文件。

    DOMConfigurator.configure ( String filename ) :讀取 XML 形式的配置文件。

    ?

    log4j 配置,一般可以采用兩種方式 .properties .xml
    一、 log4j.properties
    # 設置對應的級別 INFO,DEBUG,WARN,ERROR 和輸出地 A1 A2
    log4j.category.com.test =ERROR,A1
    log4j.category.com.test=INFO, A2
    ###
    設置輸出地 A1 ,為 ConsoleAppender( 控制臺 ) ##
    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    ###
    設置 A1 的輸出布局格式 PatterLayout( 可以靈活地指定布局模式) ##
    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
    ###
    設置輸出地 A2 到文件(文件大小到達指定尺寸的時候產生一個新的文件) ##
    log4j.appender.A2=org.apache.log4j.RollingFileAppender
    ###
    文件位置 ##
    log4j.appender.A2.File=C:/log4j/log.html
    ###
    文件大小 ##
    log4j.appender.A2.MaxFileSize=500KB
    log4j.appender.A2.MaxBackupIndex=1
    ##
    指定采用 html 方式輸出
    log4j.appender.A2.layout=org.apache.log4j.HTMLLayout

    二、 log4j.xml

    <?xml version="1.0" encoding="GB2312" ?>
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

    <appender name="com.test.all" class="org.apache.log4j.RollingFileAppender">
    <param name="File" value="
    C:/log4j/log. log" />

    <!-- 設置是否在重新啟動服務時,在原有日志的基礎添加新日志 -->
    <param name="Append" value="false" />
    <param name="MaxBackupIndex" value="10" />
    <!-- 設置輸出文件項目和格式 -->
    <layout class="org.apache.log4j.PatternLayout">
    ??? <param name="ConversionPattern" value="%p (%c:%L)- %m%n" />
    </layout>
    </appender>

    <appender name="com.test.file " class="org.apache.log4j.RollingFileAppender">
    <param name="File" value="
    C:/log4j/output .log" />
    <param name="Append" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxBackupIndex" value="10" />
    <layout class="org.apache.log4j.PatternLayout">
    ?????? <param name="ConversionPattern" value="%p (%c:%L)- %m%n" />
    </layout>
    </appender>

    <logger name="test.log">
    ? <level value="debug" /><!-- 設置級別 -->
    ? <appender-ref ref="com.test.file" /><!-- 與前面的通道id相對應 -->
    </logger>

    <root> <!-- 設置接收所有輸出的通道 -->
    ?? <appender-ref ref=" com.test.all" /><!-- 與前面的通道id相對應 -->
    </root>
    </log4j:configuration>


    三、配置文件加載方法:

    import org.apache.log4j.Logger;
    import org.apache.log4j.PropertyConfigurator;
    import org.apache.log4j.xml.DOMConfigurator;

    public class Log4jApp {
    ?? public static void main(String[] args) {
    ?????? DOMConfigurator.configure("
    C:/log4j/ log4j.xml");
    ?????? //PropertyConfigurator.configure("
    C:/log4j/ log4j.properties");
    ?????? Logger log=Logger.getLogger("com.test");
    ?????? log.info("Testing log.info()");
    ?? }
    }

    posted on 2006-08-14 22:33 Lizzie 閱讀(1292) 評論(0)  編輯  收藏 所屬分類: 專業積木

    <2006年8月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    文章分類

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 黄网站在线播放视频免费观看| 国产成人免费a在线视频色戒| 理论秋霞在线看免费| 久久久亚洲欧洲日产国码二区| 无码欧精品亚洲日韩一区夜夜嗨| 亚洲欧洲精品成人久久曰影片| 无码专区永久免费AV网站| 野花香在线视频免费观看大全| 激情小说亚洲图片| 中文字幕亚洲码在线| 亚洲高清资源在线观看| 国产AV无码专区亚洲精品| 无码专区一va亚洲v专区在线 | 国产精品亚洲片在线观看不卡| 日韩免费三级电影| 久久精品网站免费观看| 国产精品久久久久久久久免费| 永久在线观看免费视频| 久久久久免费视频| 人体大胆做受免费视频| 国产精品亚洲一区二区三区| 亚洲最大av资源站无码av网址| 亚洲精品成人久久| 亚洲精品无码久久久久久久| 亚洲精品视频在线免费| 亚洲一区免费观看| 久久精品国产亚洲AV无码娇色| 亚洲Aⅴ无码专区在线观看q| 亚洲AV中文无码字幕色三| 亚洲精品无码久久久影院相关影片| 日韩激情无码免费毛片| 午夜视频免费成人| 波多野结衣久久高清免费| 黄a大片av永久免费| 成人毛片18女人毛片免费视频未 | 亚洲美女色在线欧洲美女| 久久久亚洲欧洲日产国码二区| 91久久亚洲国产成人精品性色| 久久亚洲国产成人精品性色| 久久精品国产亚洲精品2020| 亚洲欧洲国产视频|