空間站

          北極心空

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks
          Log4j使用總結- -
                                                

          OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定義的級別。
          Log4j建議只使用四個級別,優先級從高到低分別是ERROR、WARN、INFO、DEBUG
          #這里定義能顯示到的最低級別,若定義到INFO級別,則看不到DEBUG級別的信息了~!
          log4j.rootLogger=DEBUG

          #將DAO層log記錄到DAOLog,allLog中
          log4j.logger.DAO=DEBUG,A2,A4
          #將邏輯層log記錄到BusinessLog,allLog中
          log4j.logger.Businesslog=DEBUG,A3,A4

          #A1--打印到屏幕上
          log4j.appender.A1=org.apache.log4j.ConsoleAppender
          log4j.appender.A1.layout=org.apache.log4j.PatternLayout
          log4j.appender.A1.layout.ConversionPattern=%-5p [%t] %37c %3x - %m%n

          #A2--打印到文件DAOLog中--專門為DAO層服務
          log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
          log4j.appender.A2.file=DAOLog
          log4j.appender.A2.DatePattern=''.''yyyy-MM-dd
          log4j.appender.A2.layout=org.apache.log4j.PatternLayout
          log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

          #A3--打印到文件BusinessLog中--專門記錄邏輯處理層服務log信息
          log4j.appender.A3=org.apache.log4j.DailyRollingFileAppender
          log4j.appender.A3.file=BusinessLog
          log4j.appender.A3.DatePattern=''.''yyyy-MM-dd
          log4j.appender.A3.layout=org.apache.log4j.PatternLayout
          log4j.appender.A3.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

          #A4--打印到文件alllog中--記錄所有log信息
          log4j.appender.A4=org.apache.log4j.DailyRollingFileAppender
          log4j.appender.A4.file=alllog
          log4j.appender.A4.DatePattern=''.''yyyy-MM-dd
          log4j.appender.A4.layout=org.apache.log4j.PatternLayout
          log4j.appender.A4.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

          #Appender的使用
          log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
          log4j.appender.A2.file=demo
          log4j.appender.A2.DatePattern=''.''yyyy-MM-dd
          log4j.appender.A2.layout=org.apache.log4j.PatternLayout
          log4j.appender.A2.layout.ConversionPattern=%m%n

          #Layout的配置
          log4j.appender.A2.layout=org.apache.log4j.PatternLayout
          log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

           

          ConversionPattern參數的格式含義
          格式名 含義
          %c 輸出日志信息所屬的類的全名
          %d 輸出日志時間點的日期或時間,默認格式為ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },輸出類似:2002-10-18- 22:10:28
          %f 輸出日志信息所屬的類的類名
          %l 輸出日志事件的發生位置,即輸出日志信息的語句處于它所在的類的第幾行
          %m 輸出代碼中指定的信息,如log(message)中的message
          %n 輸出一個回車換行符,Windows平臺為“rn”,Unix平臺為“n”
          %p 輸出優先級,即DEBUG,INFO,WARN,ERROR,FATAL。如果是調用debug()輸出的,則為DEBUG,依此類推
          %r 輸出自應用啟動到輸出該日志信息所耗費的毫秒數
          %t 輸出產生該日志事件的線程名

          #1 定義了兩個輸出端
          log4j.rootLogger = INFO, A1, A2,A3

          #2 定義A1輸出到控制器
          log4j.appender.A1 = org.apache.log4j.ConsoleAppender
          #3 定義A1的布局模式為PatternLayout
          log4j.appender.A1.layout = org.apache.log4j.PatternLayout
          #4 定義A1的輸出格式
          log4j.appender.A1.layout.ConversionPattern = %-4r [%t] %-5p %c - %m%n

          #5 定義A2輸出到文件
          log4j.appender.A2 = org.apache.log4j.RollingFileAppender
          #6 定義A2要輸出到哪一個文件
          log4j.appender.A2.File = F:nepalonclassesexample3.log
          #7 定義A2的輸出文件的最大長度
          log4j.appender.A2.MaxFileSize = 1KB
          #8 定義A2的備份文件數
          log4j.appender.A2.MaxBackupIndex = 3
          #9 定義A2的布局模式為PatternLayout
          log4j.appender.A2.layout = org.apache.log4j.PatternLayout
          #10 定義A2的輸出格式
          log4j.appender.A2.layout.ConversionPattern = %d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n

          配置log4j的總結
          這個教程到這里,關于配置log4j的配置文件的基本原理已經講完了,而且通過例3我們已經可以完成基本的日志工作了。現在,我們就做一個總結。配置一個配置文件的基本步驟如下:
          1) 定義一個Logger。在定義Logger時指定該Logger的級別級其輸出目的地。定義Logger的格式為
          log4j.rootLogger = [ level ], appendName1, appendName2, …appendNameN。
          2) 定義appender的輸出目的地。定義一個appender的輸出目的地的格式為
          log4j.appender.appenderName = fully.qualified.name.of.appender.class。
          log4j提供的輸出端有ConsoleAppender、FileAppender 、DailyRollingFileAppender、RollingFileAppender和WriterAppender。
          3) 定義appender的除布局模式外的其它相關參數,如例3中第6、7、8定義了A2的相關參數。定義格式為
          log4j.appender.appenderName.optionName1 = value1
          ……
          log4j.appender.appenderName.optionNameN = valueN
          如果除了布局模式外不需要定義別的參數,可跳過這一步(如例3中的A1)。
          4) 定義appender的布局模式。定義一個appender的布局模式的格式為
          log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class。
          布局模式其實也是步驟3)中的一個部分,只是布局模式參數是每一個appender必須定義的參數。Log4j提供的布局模式有HTMLLayout、PatternLayout和SimpleLayout。
          5) 定義與所選的布局模式相關的設置信息,定義格式為
          og4j.appender.appenderName.layout.optionName1 = value1
          ……
          log4j.appender.appenderName.layout.optionNameN = valueN


          在類中使用時,導入以下包:
          import org.apache.log4j.BasicConfigurator;
          import org.apache.log4j.Logger;
          import org.apache.log4j.PropertyConfigurator;

          在類中創建log對象
          private Logger log = Logger.getLogger(this.getClass());

          轉載至 http://publishblog.blogdriver.com/blog/tb.b?diaryID=1266658

          - 作者: leon 2007年03月12日, 星期一 11:31


          posted on 2007-10-09 08:47 蘆葦 閱讀(218) 評論(0)  編輯  收藏 所屬分類: JAVA
          主站蜘蛛池模板: 河间市| 聂拉木县| 鄂尔多斯市| 徐水县| 白银市| 渑池县| 浑源县| 公安县| 尖扎县| 巩留县| 灵石县| 平阴县| 囊谦县| 云南省| 沁水县| 深水埗区| 横峰县| 五寨县| 鄂托克前旗| 上饶县| 图片| 六盘水市| 阳江市| 东源县| 仙游县| 来安县| 安西县| 漳平市| 丰原市| 洛宁县| 五莲县| 申扎县| 寿光市| 格尔木市| 长沙县| 赫章县| 乐都县| 凉城县| 巴林左旗| 大余县| 周口市|