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

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

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

    posts - 32,  comments - 149,  trackbacks - 0
    一、前言:
    ???? log4j (http://jakarta.apache.org/log4j/)是一個開放源碼項(xiàng)目,是廣泛使用的以Java編寫的日志記錄包。由于log4j出色的表現(xiàn),當(dāng)時在log4j完成時,log4j開發(fā)組織曾建議sun在jdk1.4中用log4j取代jdk1.4 的日志工具類,但當(dāng)時jdk1.4已接近完成,所以sun拒絕使用log4j,當(dāng)在java開發(fā)中實(shí)際使用最多的還是log4j,人們遺忘了sun的日志工具類.。它的一個獨(dú)有特性包括在類別中繼承的概念。通過使用類別層次結(jié)構(gòu),這樣就減少了日志記錄輸出量,并將日志記錄的開銷降到最低。
    ??
    ???? 它允許開發(fā)者控制以任意間隔輸出哪些日志語句。通過使用外部配置文件,完全可以在運(yùn)行時進(jìn)行配置。幾乎每個大的應(yīng)用程序都包括其自己的日志記錄或跟蹤 API。經(jīng)驗(yàn)表明日志記錄是開發(fā)周期中的重要組成部分。同樣,日志記錄提供一些優(yōu)點(diǎn)。首先,它可以提供運(yùn)行應(yīng)用程序的確切 上下文。一旦插入到代碼中,生成日志記錄輸出就不需要人為干涉。其次,日志輸出可以保存到永久媒體中以便以后研究。最后,除了在開發(fā)階段中使用,十分豐富的日志記錄包還可以用作審計(jì)工具。

    ??? 依照該規(guī)則,在 1996 年初,EU SEMPER(歐洲安全電子市場)項(xiàng)目就決定編寫自己的跟蹤 API。 在無數(shù)次改進(jìn)、幾次具體化和許多工作之后,該 API 已經(jīng)演變成 log4j,一種流行的 Java 日志記錄包。? 這個包按 IBM 公共許可證分發(fā),由開放源碼權(quán)威機(jī)構(gòu)認(rèn)證。

    ??? 日志記錄有其自己的缺點(diǎn)。它會降低應(yīng)用程序的速度。如果太詳細(xì),它可能會使屏幕滾動變得看不見。? 為了減低這些影響,log4j 被設(shè)計(jì)成快速且靈活的。由于應(yīng)用程序很少將日志記錄當(dāng)作是主要功能,? log4j API 力爭易于了解和使用。
    ???? log4j,它可以控制以任意間隔輸出哪些日志語句。

    二、主要組件

    1、根類別(在類別層次結(jié)構(gòu)的頂部,即全局性的日志級別)
    ?
    配置根Logger,其語法為:

    log4j.rootLogger = [ level ] , appenderName, appenderName, ...

    level 是日志記錄的類別
    appenderName就是指定日志信息輸出到哪個地方。您可以同時指定多個輸出目的地。

    類別level 為 OFF、FATAL、ERROR、WARN、INFO、DEBUG、log、ALL或自定義的優(yōu)先級。
    og4j常用的優(yōu)先級FATAL>ERROR>WARN>INFO>DEBUG
    配置根Logger,其語法為:
    log4j.rootLogger = [ level ] , appenderName, appenderName, …
    如果為log4j.rootLogger=WARN,則意味著只有WARN,ERROR,FATAL被輸出,DEBUG,INFO將被屏蔽掉。

    舉例:log4j.rootCategory=INFO,stdout,Runlog,Errorlog
    根日志類別為INFO,DEBUG將被屏蔽,其他的將被輸出。 stdout,Runlog,Errorlog分別為3個輸出目的地。

    ?2、常用輸出格式

    ?-X號:X信息輸出時左對齊;
    ?%p:日志信息級別
    ?%d{}:日志信息產(chǎn)生時間
    ?%c:日志信息所在地(類名)
    ?%m:產(chǎn)生的日志具體信息
    ?%n:輸出日志信息換行
    ?舉例:
    log4j.appender.stdout.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n
    log4j.appender.Runlog.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n
    log4j.appender.Errorlog.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n

    3、布局
    使用的輸出布局,其中l(wèi)og4j提供4種布局:
    org.apache.log4j.HTMLLayout(以HTML表格形式布局)
    org.apache.log4j.PatternLayout(可以靈活地指定布局模式),
    org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串),
    org.apache.log4j.TTCCLayout(包含日志產(chǎn)生的時間、線程、類別等等信息)

    舉例:
    輸出格式為HTML表格
    log4j.appender.stdout.layout=org.apache.log4j.HTMLLayout

    輸出格式為可以靈活地指定布局模式
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

    輸出格式為包含日志信息的級別和信息字符串
    log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

    輸出格式為包含日志產(chǎn)生的時間、線程、類別等等信息
    log4j.appender.stdout.layout=org.apache.log4j.TTCCLayout


    4、目的地

    配置日志信息輸出目的地Appender,其語法為


    log4j.appender.appenderName = fully.qualified.name.of.appender.class
    log4j.appender.appenderName.option1 = value1
    ...
    log4j.appender.appenderName.option = valueN
    appenderName就是指定日志信息輸出到哪個地方。您可以同時指定多個輸出目的地。

    log4j支持的輸出目的地:
    org.apache.log4j.ConsoleAppender 控制臺
    org.apache.log4j.FileAppender 文件
    org.apache.log4j.DailyRollingFileAppender 每天產(chǎn)生一個日志文件
    org.apache.log4j.RollingFileAppender (文件大小到達(dá)指定尺寸的時候產(chǎn)生一個新的文件),
    org.apache.log4j.WriterAppender (將日志信息以流格式發(fā)送到任意指定的地方)
    org.apache.log4j.net.SMTPAppender 郵件
    org.apache.log4j.jdbc.JDBCAppender 數(shù)據(jù)庫
    其他如:GUI組件、甚至是套接口服務(wù)器、NT的事件記錄器、UNIX Syslog守護(hù)進(jìn)程等

    舉例:


    輸出到控制臺
    log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender(指定輸出到控制臺)
    log4j.appender.Threshold=DEBUG(指定輸出類別)
    log4j.appender.CONSOLE.Target=System.out
    log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout(指定輸出布局)
    log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n(指定輸出格式)

    輸出到文件

    ?? log4j.appender.FILE=org.apache.log4j.FileAppender(指定輸出到文件)
    ?? log4j.appender.FILE.File=file.log(指定輸出的路徑及文件名)
    ?? log4j.appender.FILE.Append=false
    ?? log4j.appender.FILE.layout=org.apache.log4j.PatternLayout(指定輸出的布局)
    ?? log4j.appender.FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n(指定輸出的格式)

    輸出到文件(輪換"日志文件",當(dāng)日志文件達(dá)到指定大小時,該文件就被關(guān)閉并備份,然后創(chuàng)建一個新的日志文件)

    ? log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender(指定輸出到文件)
    ? log4j.appender.ROLLING_FILE.Threshold=ERROR(指定輸出類別)
    ? log4j.appender.ROLLING_FILE.File=rolling.log(指定輸出的路徑及文件名)
    ? log4j.appender.ROLLING_FILE.Append=true
    ? log4j.appender.ROLLING_FILE.MaxFileSize=10KB(指定輸出到文件的大小)
    ? log4j.appender.ROLLING_FILE.MaxBackupIndex=1
    ? log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout(指定采用輸出布局)
    ? log4j.appender.ROLLING_FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n(指定采用輸出格式)

    輸出到Socket
    ?log4j.appender.SOCKET=org.apache.log4j.RollingFileAppender(指定輸出到Socket)
    ?log4j.appender.SOCKET.RemoteHost=localhost(遠(yuǎn)程主機(jī))
    ?log4j.appender.SOCKET.Port=5001(遠(yuǎn)程主機(jī)端口)
    ?log4j.appender.SOCKET.LocationInfo=true
    ?log4j.appender.SOCKET.layout=org.apache.log4j.PatternLayout(布局)
    ?log4j.appender.SOCET.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD]%n%c[CATEGORY]%n%m[MESSAGE]%n%n(輸出格式)

    輸出到郵件
    log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender(指定輸出到郵件)
    ?log4j.appender.MAIL.Threshold=FATAL
    ?log4j.appender.MAIL.BufferSize=10
    ?log4j.appender.MAIL.From=chunkyo@163.com(發(fā)件人)
    ?log4j.appender.MAIL.SMTPHost=mail.hollycrm.com(SMTP服務(wù)器)
    ?log4j.appender.MAIL.Subject=Log4J Message
    ?log4j.appender.MAIL.To=chunkyo@163.com(收件人)
    ?log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout(布局)
    ?log4j.appender.MAIL.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n(格式)

    ?

    輸出到數(shù)據(jù)庫
    ?log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender(指定輸出到數(shù)據(jù)庫)
    ?log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/test(指定數(shù)據(jù)庫URL)
    ?log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver(指定數(shù)據(jù)庫driver)
    ?log4j.appender.DATABASE.user=root(指定數(shù)據(jù)庫用戶)
    ?log4j.appender.DATABASE.password=root(指定數(shù)據(jù)庫用戶密碼)
    ?log4j.appender.DATABASE.sql=INSERT INTO LOG4J (Message) VALUES ('[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n')(組織SQL語句)
    ?log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout(布局)
    ?log4j.appender.DATABASE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n(格式)

    5、日志類別補(bǔ)充
    有時我們需要對某個特定的部分指定有別于根類別的日志類別,可以指定某個包的優(yōu)先級
    如:
    ? log4j.category.com.neusoft.mbip.dm.util=ERROR ,其中com.neusoft.mbip.dm.util為我們需要特別指定日志類別的部分。
    ?
    ? 或者可以指定輸出文件的優(yōu)先級
    ? log4j.appender.Errorlog.Threshold=ERROR
    ?
    三、 常用log4j配置?

    常用log4j配置,一般可以采用兩種方式,.properties和.xml,下面舉兩個簡單的例子:

    1、log4j.properties

    ### 設(shè)置org.zblog域?qū)?yīng)的級別INFO,DEBUG,WARN,ERROR和輸出地A1,A2 ##
    log4j.category.org.zblog=ERROR,A1
    log4j.category.org.zblog=INFO,A2

    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    ### 設(shè)置輸出地A1,為ConsoleAppender(控制臺) ##
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    ### 設(shè)置A1的輸出布局格式PatterLayout,(可以靈活地指定布局模式)##
    log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
    ### 配置日志輸出的格式##

    log4j.appender.A2=org.apache.log4j.RollingFileAppender
    ### 設(shè)置輸出地A2到文件(文件大小到達(dá)指定尺寸的時候產(chǎn)生一個新的文件)##
    log4j.appender.A2.File=E:/study/log4j/zhuwei.html
    ### 文件位置##
    log4j.appender.A2.MaxFileSize=500KB
    ### 文件大小##
    log4j.appender.A2.MaxBackupIndex=1
    log4j.appender.A2.layout=org.apache.log4j.HTMLLayout
    ##指定采用html方式輸出

    2、log4j.xml

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

    <log4j:configuration xmlns:log4j="

    <appender name="org.zblog.all" class="org.apache.log4j.RollingFileAppender">
    <!-- 設(shè)置通道ID:org.zblog.all和輸出方式:org.apache.log4j.RollingFileAppender -->
    ??? <param name="File" value="E:/study/log4j/all.output.log" /><!-- 設(shè)置File參數(shù):日志輸出文件名 -->
    ??? <param name="Append" value="false" /><!-- 設(shè)置是否在重新啟動服務(wù)時,在原有日志的基礎(chǔ)添加新日志 -->
    ??? <layout class="org.apache.log4j.PatternLayout">
    ??????? <param name="ConversionPattern" value="%p (%c:%L)- %m%n" /><!-- 設(shè)置輸出文件項(xiàng)目和格式 -->
    ??? </layout>
    </appender>

    <appender name="org.zblog.zcw" class="org.apache.log4j.RollingFileAppender">
    ??? <param name="File" value="E:/study/log4j/zhuwei.output.log" />
    ??? <param name="Append" value="true" />
    ??? <param name="MaxFileSize" value="10240" /> <!-- 設(shè)置文件大小 -->
    ??? <layout class="org.apache.log4j.PatternLayout">
    ??????? <param name="ConversionPattern" value="%p (%c:%L)- %m%n" />
    ??? </layout>
    </appender>

    <logger name="zcw.log"> <!-- 設(shè)置域名限制,即zcw.log域及以下的日志均輸出到下面對應(yīng)的通道中 -->
    ??? <level value="debug" /><!-- 設(shè)置級別 -->
    ??? <appender-ref ref="org.zblog.zcw" /><!-- 與前面的通道id相對應(yīng) -->
    </logger>

    <root> <!-- 設(shè)置接收所有輸出的通道 -->
    ??? <appender-ref ref="org.zblog.all" /><!-- 與前面的通道id相對應(yīng) -->
    </root>

    </log4j:configuration>


    3、配置文件加載方法:

    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("E:/study/log4j/log4j.xml");//加載.xml文件
    ??????? //PropertyConfigurator.configure("E:/study/log4j/log4j.properties");//加載.properties文件

    ??????? Logger log=Logger.getLogger("org.zblog.test");
    ??????? log.info("測試");
    ??? }
    }

    4、項(xiàng)目使用log4j
    在web應(yīng)用中,可以將配置文件的加載放在一個單獨(dú)的servlet中,并在web.xml中配置該servlet在應(yīng)用啟動時候加載。
    對于在多人項(xiàng)目中,可以給每一個人設(shè)置一個輸出通道,這樣在每個人在構(gòu)建Logger時,用自己的域名稱,讓調(diào)試信
    息輸出到自己的log文件中。

    四、log4j配置舉例(properties)

    #log4j.rootLogger = [ level ] , appenderName, appenderName,
    #類別level 為 OFF、FATAL、ERROR、WARN、INFO、DEBUG、log、ALL或自定義的優(yōu)先級
    #Log4j常用的優(yōu)先級FATAL>ERROR>WARN>INFO>DEBUG

    #stdout為控制臺 ,Errorlog為錯誤記錄日志 ,
    log4j.rootCategory=INFO,stdout,Runlog,Errorlog


    #輸出的appender的格式為
    #log4j.appender.appenderName = fully.qualified.name.of.appender.class
    #log4j.appender.appenderName.option1 = value1
    #log4j.appender.appenderName.option = valueN
    #Log4j中appender支持的輸出
    #org.apache.log4j.ConsoleAppender 控制臺
    #org.apache.log4j.FileAppender 文件
    #org.apache.log4j.DailyRollingFileAppender 每天產(chǎn)生一個日志文件
    #org.apache.log4j.RollingFileAppender (文件大小到達(dá)指定尺寸的時候產(chǎn)生一個新的文件),
    #org.apache.log4j.WriterAppender (將日志信息以流格式發(fā)送到任意指定的地方)
    #org.apache.log4j.net.SMTPAppender 郵件
    #org.apache.log4j.jdbc.JDBCAppender 數(shù)據(jù)庫

    #定義輸出的形式
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.Runlog=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.Errorlog=org.apache.log4j.DailyRollingFileAppender


    #可以指定輸出文件的優(yōu)先級
    log4j.appender.Errorlog.Threshold=ERROR

    #指定輸出的文件
    log4j.appender.Runlog.File=D:\\UserInfoSyn\\WebRoot\\WEB-INF\\runlog\\runlog.log
    log4j.appender.Errorlog.File=D:\\UserInfoSyn\\WebRoot\\WEB-INF\\errorlog\\errorlog.log


    #Log4j的layout布局
    #org.apache.log4j.HTMLLayout 以HTML表格形式布局
    #org.apache.log4j.PatternLayout 可以靈活地指定布局模式
    #org.apache.log4j.SimpleLayout? 包含日志信息的級別和信息字符串
    #org.apache.log4j.TTCCLayout??? 包含日志產(chǎn)生的時間、線程、類別等等信息

    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.Runlog.layout=org.apache.log4j.PatternLayout
    log4j.appender.Errorlog.layout=org.apache.log4j.PatternLayout

    #輸出格式,log4j javadoc org.apache.log4j.PatternLayout
    #-X號:X信息輸出時左對齊;
    #%p:日志信息級別
    # %d{}:日志信息產(chǎn)生時間
    # %c:日志信息所在地(類名)
    # %m:產(chǎn)生的日志具體信息
    # %n:%n:輸出日志信息換行
    log4j.appender.stdout.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n
    log4j.appender.Runlog.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n
    log4j.appender.Errorlog.layout.ConversionPattern= %5p %d{yyyy-MM-dd HH:mm:ss} %c %m %n

    #指定某個包的優(yōu)先級
    log4j.category.com.neusoft.mbip.dm.util=ERROR


    #示例
    ###################
    # Console Appender
    ###################
    #log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
    #log4j.appender.Threshold=DEBUG
    #log4j.appender.CONSOLE.Target=System.out
    #log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
    #log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
    #log4j.appender.CONSOLE.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD] n%c[CATEGORY]%n%m[MESSAGE]%n%n


    #####################
    # File Appender
    #####################
    #log4j.appender.FILE=org.apache.log4j.FileAppender
    #log4j.appender.FILE.File=file.log
    #log4j.appender.FILE.Append=false
    #log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
    #log4j.appender.FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
    # Use this layout for LogFactor 5 analysis

    ########################
    # Rolling File????? RollingFileAppender??????????????????
    ########################
    #log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender
    #log4j.appender.ROLLING_FILE.Threshold=ERROR
    # 文件位置
    #log4j.appender.ROLLING_FILE.File=rolling.log
    #log4j.appender.ROLLING_FILE.Append=true
    #文件大小
    #log4j.appender.ROLLING_FILE.MaxFileSize=10KB
    #指定采用輸出布局和輸出格式
    #log4j.appender.ROLLING_FILE.MaxBackupIndex=1
    #log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout
    #log4j.appender.ROLLING_FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

    ####################
    # Socket Appender
    ####################
    #log4j.appender.SOCKET=org.apache.log4j.RollingFileAppender
    #log4j.appender.SOCKET.RemoteHost=localhost
    #log4j.appender.SOCKET.Port=5001
    #log4j.appender.SOCKET.LocationInfo=true
    # Set up for Log Facter 5
    #log4j.appender.SOCKET.layout=org.apache.log4j.PatternLayout
    #log4j.appender.SOCET.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD]%n%c[CATEGORY]%n%m[MESSAGE]%n%n

    ########################
    # SMTP Appender
    #######################
    #log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
    #log4j.appender.MAIL.Threshold=FATAL
    #log4j.appender.MAIL.BufferSize=10
    #log4j.appender.MAIL.From=chunkyo@163.com
    #log4j.appender.MAIL.SMTPHost=mail.hollycrm.com
    #log4j.appender.MAIL.Subject=Log4J Message
    #log4j.appender.MAIL.To=chunkyo@163.com
    #log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
    #log4j.appender.MAIL.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

    ########################
    # JDBC Appender
    #######################
    #log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
    #log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/test
    #log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
    #log4j.appender.DATABASE.user=root
    #log4j.appender.DATABASE.password=
    #log4j.appender.DATABASE.sql=INSERT INTO LOG4J (Message) VALUES ('[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n')
    #log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
    #log4j.appender.DATABASE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

    ########################
    # Log Factor 5 Appender
    ########################
    #log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender
    #log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000

    ###################
    #自定義Appender
    ###################
    #log4j.appender.im = net.cybercorlin.util.logger.appender.IMAppender
    #log4j.appender.im.host = mail.cybercorlin.net
    #log4j.appender.im.username = username
    #log4j.appender.im.password = password
    #log4j.appender.im.recipient = chunkyo@163.com
    #log4j.appender.im.layout=org.apache.log4j.PatternLayout
    #log4j.appender.im.layout.ConversionPattern =[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

    posted on 2007-02-05 12:24 chunkyo 閱讀(5249) 評論(2)  編輯  收藏 所屬分類: Java技術(shù)

    FeedBack:
    # re: Log4j的介紹
    2007-02-05 14:49 | BeanSoft
    log4j 過濾日志級別
    Please see detail for logconfig.xml. For filter only support xml.

    You can use as following appender:

    org.apache.log4j.ConsoleAppender ConsoleAppender
    org.apache.log4j.FileAppender FileAppender
    org.apache.log4j.jdbc.JDBCAppender JDBCAppender
    org.apache.log4j.AsyncAppender AsyncAppender
    org.apache.log4j.net.JMSAppender JMSAppender
    org.apache.log4j.lf5.LF5Appender LF5Appender
    org.apache.log4j.nt.NTEventLogAppender NTEventLogAppender
    org.apache.log4j.varia.NullAppender NullAppender
    org.apache.log4j.net.SMTPAppender SMTPAppender
    org.apache.log4j.net.SocketAppender SocketAppender
    org.apache.log4j.net.SocketHubAppender SocketHubAppender
    org.apache.log4j.net.SyslogAppender SyslogAppender
    org.apache.log4j.net.TelnetAppender TelnetAppender
    org.apache.log4j.WriterAppender WriterAppender
    For only one level deal:
    You must user LevelRangeFilter and set LevelMin and LevelMax to the same level,

    Note:The value must uppercase.


    <filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="ERROR" />
    <param name="LevelMax" value="ERROR" />
    </filter>
      回復(fù)  更多評論
      
    # re: Log4j的介紹[未登錄]
    2007-02-06 11:02 | limq
    不錯,收藏了  回復(fù)  更多評論
      
    <2007年2月>
    28293031123
    45678910
    11121314151617
    18192021222324
    25262728123
    45678910

    這個博客主要是關(guān)于java技術(shù)和開源技術(shù),大家一起來進(jìn)步了!

    常用鏈接

    留言簿(12)

    隨筆分類

    隨筆檔案

    文章分類

    收藏夾

    DotNet

    Java技術(shù)網(wǎng)站

    Linux VS Unix

    其他常去網(wǎng)站

    常光顧的BLOG

    文學(xué)類網(wǎng)站

    游戲類網(wǎng)站

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 196837
    • 排名 - 293

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 菠萝菠萝蜜在线免费视频| 国产成人免费高清在线观看| 免费国产黄网站在线看| 亚洲日本香蕉视频| 亚洲国产精品一区二区第一页| 亚洲美女精品视频| 国产亚洲精品资在线| 亚洲国产成人精品无码久久久久久综合 | 精品无码专区亚洲| 亚洲男人电影天堂| 亚洲AV第一页国产精品| 最新亚洲成av人免费看| www.亚洲精品.com| 在线观看免费精品国产| 德国女人一级毛片免费| 无码乱肉视频免费大全合集| 99久久免费中文字幕精品| 精品免费视在线观看| 三级黄色在线免费观看| 日韩大片免费观看视频播放| 看全免费的一级毛片| 亚洲AV无码片一区二区三区| 亚洲乱理伦片在线观看中字| 亚洲国产精品免费在线观看| 久久久久亚洲AV片无码下载蜜桃| 亚洲国产精品一区二区久久hs| 亚洲精品狼友在线播放| 亚洲精品中文字幕乱码三区| 亚洲人成中文字幕在线观看| 亚洲开心婷婷中文字幕| 亚洲va久久久噜噜噜久久| 国产亚洲人成网站观看| 亚洲国产精品嫩草影院在线观看 | 亚洲色欲色欲www| 亚洲欧洲日韩极速播放| 亚洲最大福利视频| 亚洲色大情网站www| 亚洲人成网站在线在线观看| 亚洲精品无码日韩国产不卡av| 亚洲avav天堂av在线网毛片| 免费的黄色网页在线免费观看|