1. 程式人生 > >log4j配置檔案模板大全

log4j配置檔案模板大全

log4j.xml 檔案配置模板:

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
  3.     
  4. <log4j:configuration  debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/' > 
  5.  
  6.     <!-- ========================== 自定義輸出格式說明================================ -->
  7.       <!-- %p 輸出優先順序,即DEBUG,INFO,WARN,ERROR,FATAL -->
  8.       <!-- %r 輸出自應用啟動到輸出該log資訊耗費的毫秒數  -->
  9.       <!-- %c 輸出所屬的類目,通常就是所在類的全名 -->
  10. <!-- %t 輸出產生該日誌事件的執行緒名 -->
  11. <!-- %n 輸出一個回車換行符,Windows平臺為“/r/n”,Unix平臺為“/n” -->
  12. <!-- %d 輸出日誌時間點的日期或時間,預設格式為ISO8601,也可以在其後指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},輸出類似:2002年10月18日 22:10:28,921  -->
  13. <!-- %l 輸出日誌事件的發生位置,包括類目名、發生的執行緒,以及在程式碼中的行數。舉例:Testlo4.main(TestLog4.java:10)  -->
  14. <!-- ========================================================================== -->

15.

  1. <!-- ========================== 輸出方式說明================================ -->
  2. <!-- Log4j提供的appender有以下幾種:  -->
  3. <!-- org.apache.log4j.ConsoleAppender(控制檯),  -->
  4. <!-- org.apache.log4j.FileAppender(檔案),  -->
  5. <!-- org.apache.log4j.DailyRollingFileAppender(每天產生一個日誌檔案), -->
  6. <!-- org.apache.log4j.RollingFileAppender(檔案大小到達指定尺寸的時候產生一個新的檔案),  -->
  7. <!-- org.apache.log4j.WriterAppender(將日誌資訊以流格式傳送到任意指定的地方)   -->
  8. <!-- ========================================================================== -->
  9. <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
  10. <!-- <param name="Target" value="System.out"/> -->
  11. <layout class="org.apache.log4j.PatternLayout">
  12. <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c  Method: %l ]%n%p:%m%n"/>
  13. </layout>
  14. <!--  <filter class="org.apache.log4j.varia.LevelRangeFilter">
  15. <param name="LevelMin" value="DEBUG"/>
  16. <param name="LevelMax" value="DEBUG"/>
  17. </filter> -->
  18. </appender>
  19. <!-- output the debug   -->
  20. <!--  <appender name="log4jDebug" class="org.apache.log4j.DailyRollingFileAppender">
  21. <param name="File" value="log_"/>   
  22. <param name="MaxFileSize" value="KB"/>
  23. <param name="MaxBackupIndex" value="2"/> -->
  24. <appender name="log4jDebug"  class="org.apache.log4j.rolling.RollingFileAppender"> 
  25. <param name="Append" value="true"/>
  26. <rollingPolicy  class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> 
  27. <param name="FileNamePattern" value="./log/log_%d{yyyy-MM-dd}.log" /> 
  28. </rollingPolicy> 
  29. <layout class="org.apache.log4j.PatternLayout">
  30. <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c Method: %l ]%n%p:%m%n"/>
  31. </layout>
  32. <filter class="org.apache.log4j.varia.LevelRangeFilter">
  33. <param name="LevelMin" value="DEBUG"/>
  34. <param name="LevelMax" value="DEBUG"/>
  35. </filter>
  36. </appender>
  37. <!--  <appender name="log4jInfo" class="org.apache.log4j.DailyRollingFileAppender">
  38. <param name="File" value="log_"/>      
  39. <param name="DatePattern" value="'.log'yyyy-MM-dd"/>
  40. <param name="Append" value="true"/>
  41. <param name="MaxFileSize" value="5KB"/>
  42. <param name="MaxBackupIndex" value="2"/> -->
  43. <appender name="log4jInfo"  class="org.apache.log4j.rolling.RollingFileAppender"> 
  44. <param name="Append" value="true"/>
  45. <rollingPolicy  class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> 
  46. <param name="FileNamePattern" value="./log/log_%d{yyyy-MM-dd}.log" /> 
  47. </rollingPolicy>
  48. <layout class="org.apache.log4j.PatternLayout">
  49. <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c  Method: %l ]%n%p:%m%n"/>
  50. </layout>
  51. <filter class="org.apache.log4j.varia.LevelRangeFilter">
  52. <param name="LevelMin" value="INFO"/>
  53. <param name="LevelMax" value="INFO"/>
  54. </filter>
  55. </appender>
  56. <!--  <appender name="log4jWarn" class="org.apache.log4j.DailyRollingFileAppender">
  57. <param name="File" value="/log_"/>     
  58. <param name="DatePattern" value="'.log'yyyy-MM-dd"/>
  59. <param name="Append" value="true"/>
  60. <param name="MaxFileSize" value="5KB"/>
  61. <param name="MaxBackupIndex" value="2"/> -->
  62. <appender name="log4jWarn" class="org.apache.log4j.rolling.RollingFileAppender"> 
  63. <param name="Append" value="true"/>
  64. <rollingPolicy  class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> 
  65. <param name="FileNamePattern" value="./log/log_%d{yyyy-MM-dd}.log" /> 
  66. </rollingPolicy>
  67. <layout class="org.apache.log4j.PatternLayout">
  68. <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c Method: %l ]%n%p:%m%n"/>
  69. </layout>
  70. <filter class="org.apache.log4j.varia.LevelRangeFilter">
  71. <param name="LevelMin" value="WARN"/>
  72. <param name="LevelMax" value="WARN"/>
  73. </filter>
  74. </appender>
  75. <!--  <appender name="log4jError" class="org.apache.log4j.DailyRollingFileAppender"> -->
  76. <appender name="log4jError"  class="org.apache.log4j.rolling.RollingFileAppender"> 
  77. <!--  <param name="File" value="/error_"/>   
  78. <param name="DatePattern" value="'.log'yyyy-MM-dd"/> -->
  79. <param name="Append" value="true"/>
  80. <rollingPolicy  class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> 
  81. <param name="FileNamePattern" value="./log/error_%d{yyyy-MM-dd}.log" /> 
  82. </rollingPolicy>
  83.       <!--   <param name="MaxFileSize" value="5KB"/> -->
  84.       <!--   <param name="MaxBackupIndex" value="2"/> -->
  85.         <layout class="org.apache.log4j.PatternLayout">
  86.              <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c Method: %l ]%n%p:%m%n"/>
  87.         </layout>
  88.         <filter class="org.apache.log4j.varia.LevelRangeFilter">
  89.             <param name="LevelMin" value="ERROR"/>
  90.             <param name="LevelMax" value="ERROR"/>
  91.         </filter>
  92.     </appender>
  93.  <!--通過<category></category>的定義可以將各個包中的類日誌輸出到不同的日誌檔案中-->
  94.     <!--     <category name="com.gzy">
  95.             <priority value="debug" />
  96.             <appender-ref ref="log4jTestLogInfo" />
  97.             <appender-ref ref="log4jTestDebug" />
  98.         </category> -->
  99.   <appender name="MAIL"    
  100.       class="org.apache.log4j.net.SMTPAppender">    
  101.       <param name="threshold" value="debug" />    
  102.       <!-- 日誌的錯誤級別    
  103.        <param name="threshold" value="error"/>    
  104.       -->    
  105.       <!-- 快取檔案大小,日誌達到512K時傳送Email -->    
  106.       <param name="BufferSize" value="512" /><!-- 單位K -->    
  107.       <param name="From" value="[email protected]" />     
  108.       <param name="SMTPHost" value="smtp.163.com" />    
  109.       <param name="Subject" value="juyee-log4jMessage" />    
  110.       <param name="To" value="[email protected]" />    
  111.       <param name="SMTPUsername" value="test" />    
  112.       <param name="SMTPPassword" value="test" />    
  113.       <layout class="org.apache.log4j.PatternLayout">    
  114.        <param name="ConversionPattern"    
  115.         value="%-d{yyyy-MM-dd HH:mm:ss.SSS a} [%p]-[%c] %m%n" />    
  116.       </layout>    
  117.    </appender>
  118.     
  119.     
  120.      <root>
  121.         <priority value="debug"/>
  122.         <appender-ref ref="CONSOLE" />
  123.         <appender-ref ref="log4jDebug" />
  124.         <appender-ref ref="log4jInfo" />
  125.         <appender-ref ref="log4jWarn" />
  126.         <appender-ref ref="log4jError" />
  127.         <!-- <appender-ref ref="MAIL" /> -->
  128.     </root>
  129. </log4j:configuration>

 

log4j.properties檔案配置模板:

  1. # priority :debug<info<warn<error
  2.   #you cannot specify every priority with different file for log4j
  3.   log4j.rootLogger=debug,stdout,info,debug,warn,error
  4.    
  5.   #console
  6.   log4j.appender.stdout=org.apache.log4j.ConsoleAppender
  7.   log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
  8.   log4j.appender.stdout.layout.ConversionPattern= [%d{yyyy-MM-dd HH:mm:ss a}]:%p %l%m%n
  9.   #info log
  10.   log4j.logger.info=info
  11.   log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
  12.   log4j.appender.info.DatePattern= '_'yyyy-MM-dd'.log'
  13.   log4j.appender.info.File=./src/com/hp/log/info.log
  14.   log4j.appender.info.Append= true
  15.   log4j.appender.info.Threshold=INFO
  16.   log4j.appender.info.layout=org.apache.log4j.PatternLayout
  17.   log4j.appender.info.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c >> Method: %l ]%n%p:%m%n
  18.   #debug log
  19.   log4j.logger.debug=debug
  20.   log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender
  21.   log4j.appender.debug.DatePattern= '_'yyyy-MM-dd'.log'
  22.   log4j.appender.debug.File=./src/com/hp/log/debug.log
  23.   log4j.appender.debug.Append= true
  24.   log4j.appender.debug.Threshold=DEBUG
  25.   log4j.appender.debug.layout=org.apache.log4j.PatternLayout
  26.   log4j.appender.debug.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c >> Method: %l ]%n%p:%m%n
  27.   #warn log
  28.   log4j.logger.warn=warn
  29.   log4j.appender.warn=org.apache.log4j.DailyRollingFileAppender
  30.   log4j.appender.warn.DatePattern= '_'yyyy-MM-dd'.log'
  31.   log4j.appender.warn.File=./src/com/hp/log/warn.log
  32.   log4j.appender.warn.Append= true
  33.   log4j.appender.warn.Threshold=WARN
  34.   log4j.appender.warn.layout=org.apache.log4j.PatternLayout
  35.   log4j.appender.warn.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c >> Method: %l ]%n%p:%m%n
  36.   #error
  37.   log4j.logger.error=error
  38.   log4j.appender.error = org.apache.log4j.DailyRollingFileAppender
  39.   log4j.appender.error.DatePattern= '_'yyyy-MM-dd'.log'
  40.   log4j.appender.error.File = ./src/com/hp/log/error.log
  41.   log4j.appender.error.Append = true
  42.   log4j.appender.error.Threshold = ERROR
  43.   log4j.appender.error.layout = org.apache.log4j.PatternLayout
  44.   log4j.appender.error.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss a} [Thread: %t][ Class:%c >> Method: %l ]%n%p:%m%n