/src/log4j.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
?<!-- ========================== 自定義輸出格式說明================================ --> ?<!-- %p 輸出優(yōu)先級,即DEBUG,INFO,WARN,ERROR,FATAL --> ?<!-- %r 輸出自應(yīng)用啟動到輸出該log信息耗費的毫秒數(shù) --> ?<!-- %m 日志內(nèi)容 --> ?<!-- %c 輸出所屬的類目,通常就是所在類的全名 --> ?<!-- %t 輸出產(chǎn)生該日志事件的線程名 --> ?<!-- %n 輸出一個回車換行符,Windows平臺為“/r/n”,Unix平臺為“/n” --> ?<!-- %d 輸出日志時間點的日期或時間,默認格式為ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},輸出類似:2002年10月18日 ??22:10:28,921 --> ?<!-- %l 輸出日志事件的發(fā)生位置,包括類目名、發(fā)生的線程,以及在代碼中的行數(shù)。舉例:Testlog4.main(TestLog4.java:10) --> ?<!-- %%輸出一個%號 --> ?<!-- ========================================================================== -->
?<!-- ========================== 輸出方式說明================================ --> ?<!-- Log4j提供的appender有以下幾種: --> ?<!-- org.apache.log4j.ConsoleAppender(控制臺), --> ?<!-- org.apache.log4j.FileAppender(文件), --> ?<!-- org.apache.log4j.DailyRollingFileAppender(每天產(chǎn)生一個日志文件), --> ?<!-- org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產(chǎn)生一個新的文件), --> ?<!-- org.apache.log4j.WriterAppender(將日志信息以流格式發(fā)送到任意指定的地方) -->
?<!-- ========================== 布局方式說明================================ --> ?<!-- Log4j提供的appender有以下幾種: --> ?<!-- org.apache.log4j.HTMLLayout(以HTML表格形式布局), --> ?<!--org.apache.log4j.PatternLayout(可以靈活地指定布局模式), --> ?<!--org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串), --> ?<!--org.apache.log4j.TTCCLayout(包含日志產(chǎn)生的時間、線程、類別等等信息) -->
?<!-- 關(guān)于日志level. --> ?<!-- 共有8個級別,按照從低到高為:All < Trace < Debug < Info < Warn < Error < Fatal < ??OFF. --> ?<!-- All:最低等級的,用于打開所有日志記錄. --> ?<!-- Trace:是追蹤,就是程序推進以下,你就可以寫個trace輸出,所以trace應(yīng)該會特別多,不過沒關(guān)系,我們可以設(shè)置最低日志級別不讓他輸出. --> ?<!-- Debug:指出細粒度信息事件對調(diào)試應(yīng)用程序是非常有幫助的. --> ?<!-- Info:消息在粗粒度級別上突出強調(diào)應(yīng)用程序的運行過程. --> ?<!-- Warn:輸出警告及warn以下級別的日志. --> ?<!-- Error:輸出錯誤信息日志. --> ?<!-- Fatal:輸出每個嚴重的錯誤事件將會導致應(yīng)用程序的退出的日志. --> ?<!-- OFF:最高等級的,用于關(guān)閉所有日志記錄. --> ?<!-- ========================================================================== -->
?<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout>
??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="OFF" /> ???<param name="LevelMin" value="INFO" /> ??</filter> ?</appender>
?<!-- org.apache.log4j.FileAppender(文件), 可以指定文件大小和文件數(shù) 這里沒用這種方式 --> ?<appender name="RollingDEBUG" class="org.apache.log4j.RollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/sfpt.log" /> ??<!-- 文件到達這個大小,就新建個文件 --> ??<param name="MaxFileSize" value="500KB" /> ??<!-- 文件到達這個個數(shù),就開始滾存之前的記錄 --> ??<param name="MaxBackupIndex" value="2" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss} [%p] 線程名:%t 源:%l 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r 內(nèi)容:%n%m%n%n" /> ??</layout> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMin" value="DEBUG" /> ???<param name="LevelMax" value="DEBUG" /> ??</filter> ?</appender>
?<appender name="All" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/all/all.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss} [%p] 線程名:%t 源:%l 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r 內(nèi)容:%n%m%n%n" /> ??</layout> <!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="OFF" /> ???<param name="LevelMin" value="Info" /> ??</filter> ?</appender>
?<appender name="Trace" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/trace/trace.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="Trace" /> ???<param name="LevelMin" value="Trace" /> ??</filter> ?</appender>
?<appender name="Debug" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/debug/debug.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="Debug" /> ???<param name="LevelMin" value="Debug" /> ??</filter> ?</appender>
?<appender name="Info" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/info/info.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="Info" /> ???<param name="LevelMin" value="Info" /> ??</filter> ?</appender>
?<appender name="Warn" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/warn/warn.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="Warn" /> ???<param name="LevelMin" value="Warn" /> ??</filter> ?</appender>
?<appender name="Error" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/error/error.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="Error" /> ???<param name="LevelMin" value="Error" /> ??</filter> ?</appender>
?<appender name="Fatal" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/fatal/fatal.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="Fatal" /> ???<param name="LevelMin" value="Fatal" /> ??</filter> ?</appender>
?<appender name="OFF" class="org.apache.log4j.DailyRollingFileAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="File" value="/home/log/sfpt/off/off.log" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="OFF" /> ???<param name="LevelMin" value="OFF" /> ??</filter> ?</appender>
?<appender name="Database" class="org.apache.log4j.jdbc.JDBCAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="URL" value="jdbc:oracle:thin:@192.168.0.59:1521:oanet" /> ??<param name="driver" value="oracle.jdbc.driver.OracleDriver" /> ??<param name="user" value="hdczoa" /> ??<param name="password" value="system" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="INSERT INTO hdczoa.LOG4J(stamp,thread, info_level,class,message) VALUES ('%d', '%t', '%p', '%c', %m)" /> ??</layout>
??<!--限制輸出級別 --> ??<filter class="org.apache.log4j.varia.LevelRangeFilter"> ???<param name="LevelMax" value="OFF" /> ???<param name="LevelMin" value="OFF" /> ??</filter> ?</appender>
?<!-- 發(fā)郵件(只有ERROR時才會發(fā)送!) --> ?<appender name="Mail" class="org.apache.log4j.net.SMTPAppender"> ??<param name="Encoding" value="UTF-8" /> ??<param name="Threshold" value="OFF" /> ??<param name="SMTPDebug" value="false" /> ??<param name="SMTPProtocol" value="smtp" /> ??<!-- 日志的錯誤級別 <param name="threshold" value="fatal"/> --> ??<!-- 緩存文件大小,日志達到512K時發(fā)送Email --> ??<param name="BufferSize" value="512" /><!-- 單位K --> ??<param name="From" value="cdjs@ywymsy.cn" /> ??<param name="To" value="543013306@qq.com,543013306@qq.com" /> ??<param name="SMTPHost" value="smtp.ywymsy.cn" /> ??<param name="SMTPPort" value="25" /> ??<param name="Subject" value="sfpt 程序拋異常了" /> ??<param name="SMTPUsername" value="cdjs@ywymsy.cn" /> ??<param name="SMTPPassword" value="20110322_cdjs" /> ??<layout class="org.apache.log4j.PatternLayout"> ???<param name="ConversionPattern" ????value="sfpt %-d{yyyy-MM-dd HH:mm:ss}? [%p]? 線程名:%t? 源:%l? 自應(yīng)用啟動到輸出該log信息毫秒數(shù):%r? 內(nèi)容:%n%m%n%n" /> ??</layout> ?</appender>
?<!-- priority value="All" 用于定義輸出什么級別以上的日志 --> ?<root> ??<priority value="All" /> ??<appender-ref ref="CONSOLE" /> ??<appender-ref ref="All" /> ??<appender-ref ref="Trace" /> ??<appender-ref ref="Debug" /> ??<appender-ref ref="Info" /> ??<appender-ref ref="Warn" /> ??<appender-ref ref="Error" /> ??<appender-ref ref="Fatal" /> ??<appender-ref ref="OFF" /> ??<!-- <appender-ref ref="datebase" /> --> ??<!-- <appender-ref ref="Mail" /> --> ?</root> </log4j:configuration>
轉(zhuǎn)載于:https://www.cnblogs.com/gaobo543013306/p/9848032.html
總結(jié)
以上是生活随笔為你收集整理的/src/log4j.xml的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [CF407B] Long Path
- 下一篇: FastStone Capture