1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
  3. <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
  4. <!--
  5. 根节点的配置顺序:
  6. renderer
  7. appender
  8. plugin
  9. logger
  10. category
  11. root
  12. loggerfactory
  13. categoryfactory
  14. -->
  15. <!-- ========================================================================================= -->
  16. <!--
  17. org.apache.log4j.ConsoleAppender 控制台输出
  18. org.apache.log4j.FileAppender 文件日志输出
  19. org.apache.log4j.DailyRollingFileAppender 每个时间段产生一个日志文件
  20. org.apache.log4j.RollingFileAppender 文件大小到达指定尺寸的时候产生一个新的文件
  21. org.apache.log4j.WriterAppender 将日志信息以流格式发送到任意指定的地方
  22. org.apache.log4j.net.SMTPAppender 发邮件输出日志
  23. org.apache.log4j.net.SocketAppender Socket日志
  24. org.apache.log4j.nt.NTEventLogAppender Window NT日志
  25. org.apache.log4j.net.SyslogAppender
  26. org.apache.log4j.net.JMSAppender
  27. org.apache.log4j.AsyncAppender
  28. org.apache.log4j.varia.NullAppender
  29. org.apache.log4j.jdbc.JDBCAppender
  30. -->
  31. <!-- ========================================================================================= -->
  32. <!--
  33. 控制台输出:org.apache.log4j.ConsoleAppender
  34. Threshold=WARN 指定日志消息的输出最低层次。
  35. ImmediateFlush=true 默认值是 true,意谓着所有的消息都会被立即输出。
  36. Target=System.err 默认情况下是:System.out,指定输出控制台
  37. -->
  38. <appender name="Console" class="org.apache.log4j.ConsoleAppender">
  39. <param name="Threshold" value="ALL"></param>
  40. <param name="ImmediateFlush" value="true"></param>
  41. <param name="Target" value="System.out"></param>
  42. <layout class="org.apache.log4j.TTCCLayout" />
  43. </appender>
  44. <!-- ========================================================================================= -->
  45. <!--
  46. 文件日志输出:org.apache.log4j.FileAppender
  47. Threshold=WARN 指定日志消息的输出最低层次。
  48. ImmediateFlush=true 默认值是 true,意谓着所有的消息都会被立即输出。
  49. File=mylog.txt 指定消息输出到 mylog.txt 文件。
  50. Append=false 默认值是 true,即将消息增加到指定文件中,false 指将消息覆盖指定的文件内容。
  51. -->
  52. <appender name="File" class="org.apache.log4j.FileAppender">
  53. <param name="Threshold" value="ALL"></param>
  54. <param name="ImmediateFlush" value="true"></param>
  55. <param name="File" value="F:\\FileAppender.txt"></param>
  56. <param name="Append" value="false"></param>
  57. <layout class="org.apache.log4j.TTCCLayout" />
  58. </appender>
  59. <!-- ========================================================================================= -->
  60. <!--
  61. 每个时间段产生一个日志文件:org.apache.log4j.DailyRollingFileAppender
  62. Threshold=WARN 指定日志消息的输出最低层次。
  63. ImmediateFlush=true 默认值是 true,意谓着所有的消息都会被立即输出。
  64. File=mylog.txt 指定消息输出到 mylog.txt 文件。
  65. Append=false 默认值是 true,即将消息增加到指定文件中,false 指将消息覆盖指定的文件内容。
  66. DatePattern=.yyyy-ww 每周滚动一次文件,即每周产生一个新的文件。
  67. 当然也可以指定按月、周、天、时和分。即对应的格式如下:
  68. .yyyy-MM 每月
  69. .yyyy-ww 每周
  70. .yyyy-MM-dd 每天
  71. .yyyy-MM-dd-a 每天两次
  72. .yyyy-MM-dd-HH 每小时
  73. .yyyy-MM-dd-HH-mm 每分钟
  74. -->
  75. <appender name="DailyRollingFile" class="org.apache.log4j.DailyRollingFileAppender">
  76. <param name="Threshold" value="ALL"></param>
  77. <param name="ImmediateFlush" value="true"></param>
  78. <param name="File" value="F:\\DailyRollingFileAppender.txt"></param>
  79. <param name="Append" value="false"></param>
  80. <param name="DatePattern" value=".yyyy-MM-dd-HH-mm"></param>
  81. <layout class="org.apache.log4j.TTCCLayout" />
  82. </appender>
  83. <!-- ========================================================================================= -->
  84. <!--
  85. 文件大小到达指定尺寸的时候产生一个新的文件:org.apache.log4j.RollingFileAppender
  86. Threshold=WARN 指定日志消息的输出最低层次。
  87. ImmediateFlush=true 默认值是 true,意谓着所有的消息都会被立即输出。
  88. File=mylog.txt 指定消息输出到 mylog.txt 文件。
  89. Append=false 默认值是 true,即将消息增加到指定文件中,false 指将消息覆盖指定的文件内容。
  90. MaxFileSize=100KB 后缀可以是 KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到 mylog.log.1 文件。
  91. MaxBackupIndex=2 指定可以产生的滚动文件的最大数。
  92. -->
  93. <appender name="RollingFile" class="org.apache.log4j.RollingFileAppender">
  94. <param name="Threshold" value="ALL"></param>
  95. <param name="ImmediateFlush" value="true"></param>
  96. <param name="File" value="F:\\RollingFileAppender.txt"></param>
  97. <param name="Append" value="false"></param>
  98. <param name="MaxFileSize" value="1KB"></param>
  99. <param name="MaxBackupIndex" value="3"></param>
  100. <layout class="org.apache.log4j.TTCCLayout" />
  101. </appender>
  102. <!-- ========================================================================================= -->
  103. <!-- ========================================================================================= -->
  104. <!--
  105. org.apache.log4j.HTMLLayout 以HTML表格形式布局
  106. org.apache.log4j.PatternLayout 可以灵活地指定布局模式
  107. org.apache.log4j.xml.XMLLayout XML文件布局日志
  108. org.apache.log4j.SimpleLayout 包含日志信息的级别和信息字符串
  109. org.apache.log4j.TTCCLayout 包含日志产生的时间、线程、类别等等信息
  110. -->
  111. <!-- ========================================================================================= -->
  112. <!--
  113. 以HTML表格形式布局:org.apache.log4j.HTMLLayout
  114. LocationInfo=true 默认值是false,输出java文件名称和行号
  115. Title=日志信息 默认值是"Log4J Log Messages"
  116. -->
  117. <appender name="HTML" class="org.apache.log4j.ConsoleAppender">
  118. <layout class="org.apache.log4j.HTMLLayout">
  119. <param name="LocationInfo" value="true"></param>
  120. <param name="Title" value="日志信息"></param>
  121. </layout>
  122. </appender>
  123. <!-- ========================================================================================= -->
  124. <!--
  125. 可以灵活地指定布局模式:org.apache.log4j.PatternLayout
  126. ConversionPattern=%m%n 指定怎样格式化指定的消息,如:%-4r %-5p %d{yyyy-MM-dd HH:mm:ssS} %c %m%n
  127. Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数如下:
  128. -X号 X信息输出时左对齐;
  129. %p 输出日志信息优先级,即 DEBUG,INFO,WARN,ERROR,FATAL,
  130. %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS}
  131. %r 输出自应用启动到输出该 log 信息耗费的毫秒数
  132. %c 输出日志信息所属的类目,配置文件中的名字,通常就是所在类的全名(若使用 rootLogger)
  133. %t 输出产生该日志事件的线程名
  134. %l 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及行数。举例:Testlog4.main(TestLog4.java:10)
  135. %x 输出和当前线程相关联的 NDC(嵌套诊断环境),尤其用到像 java servlets 这样的多客户多线程的应用中。
  136. %% 输出一个"%"字符
  137. %F 输出日志消息产生时所在的文件名称
  138. %L 输出代码中的行号
  139. %m 输出代码中指定的消息,产生的日志具体信息
  140. %n 输出一个回车换行符,Windows 平台为"\r\n",Unix 平台为"\n"输出日志信息换行
  141. %M 输出日志信息所属的方法
  142. 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如:
  143. %20c 指定输出 category 的名称,最小的宽度是 20,如果 category 的名称小于 20 的话,默认的情况下右对齐。
  144. %-20c 指定输出 category 的名称,最小的宽度是 20,如果 category 的名称小于 20 的话,"-"号指定左对齐。
  145. %.30c 指定输出 category 的名称,最大的宽度是 30,如果 category 的名称大于 30 的话,就会将左边多出的字符截掉,但小于 30 的话也不会有空格。
  146. %20.30c 如果 category 的名称小于 20 就补空格,并且右对齐,如果其名称长于 30 字符,就从左边交远销出的字符截掉
  147. -->
  148. <appender name="Pattern" class="org.apache.log4j.ConsoleAppender">
  149. <layout class="org.apache.log4j.PatternLayout">
  150. <param name="ConversionPattern" value="级别:[%-6p] 时间:[%d{yyy-MMM-dd HH:mm:ss,SSS}] %-50l %m%n"></param>
  151. </layout>
  152. </appender>
  153. <!-- ========================================================================================= -->
  154. <!--
  155. XML文件布局日志:org.apache.log4j.xml.XMLLayout
  156. LocationInfo=true 默认值是 false,输出 java 文件和行号
  157. -->
  158. <appender name="XML" class="org.apache.log4j.ConsoleAppender">
  159. <layout class="org.apache.log4j.xml.XMLLayout">
  160. <param name="LocationInfo" value="true"></param>
  161. </layout>
  162. </appender>
  163. <!-- ========================================================================================= -->
  164. <!-- ========================================================================================= -->
  165. <logger name="ConsoleLog" additivity="false">
  166. <level value="WARN" />
  167. <appender-ref ref="Console" />
  168. </logger>
  169. <logger name="FileLog" additivity="false">
  170. <level value="WARN" />
  171. <appender-ref ref="File" />
  172. </logger>
  173. <logger name="DailyRollingFileLog" additivity="false">
  174. <level value="WARN" />
  175. <appender-ref ref="DailyRollingFile" />
  176. </logger>
  177. <logger name="RollingFileLog" additivity="false">
  178. <level value="WARN" />
  179. <appender-ref ref="RollingFile" />
  180. </logger>
  181. <logger name="HTMLLog" additivity="false">
  182. <level value="WARN" />
  183. <appender-ref ref="HTML" />
  184. </logger>
  185. <logger name="PatternLog" additivity="false">
  186. <level value="WARN" />
  187. <appender-ref ref="Pattern" />
  188. </logger>
  189. <logger name="XMLLog" additivity="false">
  190. <level value="WARN" />
  191. <appender-ref ref="XML" />
  192. </logger>
  193. <!-- ========================================================================================= -->
  194. <!--
  195. 优先级:ALL < DEBUG < INFO <WARN < ERROR < FATAL < OFF
  196. -->
  197. <root>
  198. <priority value="ALL" />
  199. <appender-ref ref="Console" />
  200. </root>
  201. </log4j:configuration>
-------------------------------------------------------------------------------------------------------------------------------

log4j.xml配置文件的更多相关文章

  1. log4j.xml配置文件详解

    一 log4j.xml 配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:c ...

  2. 怎样在log4j.xml配置文件中引入变量:小公司经验较多的我和阿里UC等大公司经验较多的Boss,一些技术交流和探讨

    从最初学习使用log4j的时候,网上和书本上主要都是使用"log4j.properties"这种属性格式,配置日志.多年以来,一直使用这种格式,总的来说,简单.够用.    而有十 ...

  3. log4j日志文件 log4j.xml log4j.properties配置

    1,导入log4j  jar包; 2,配置log4j.xml或log4j.properties文件; ------------------------------------------------- ...

  4. 转载:log4j.properties log4j.xml 路径问题

    自动加载配置文件: (1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解.log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找lo ...

  5. Log4j XML配置

    问题描述:     Log4j  XML配置 问题解决:     (1)编写log4j.xml配置文件 注:     如上的XML文件必须以log4j.xml文件命名,否则无法读取配置文件,同样的如果 ...

  6. (转)log4j(七)——log4j.xml简单配置样例说明

    背景:在公司中警察需要做技术支持,查看日志,而查看日志首先要自己清楚日志是如何生成的,所以有必要知道日志的前世今生! 转载出处:http://www.cnblogs.com/godtrue/p/644 ...

  7. log4j(七)——log4j.xml简单配置样例说明

    一:测试环境与log4j(一)--为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受 (1)这里栗子有一点特别呀!给出了包名唉!想必有用,是的,配置文件中要特别说明一下 ...

  8. Log4j配置详解之log4j.xml

    Log4j配置详解之log4j.xml Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息. ...

  9. 解决log4j.xml问题http//jakarta.apache.org/log4j/ uri is not registered

    在Eclipse中,配置log4j.xml出现"http //jakarta.apache.org/log4j/ uri is not registered"的错误信息. 原始的l ...

随机推荐

  1. Win2008R2PHP5.4环境加载Zend模块

    1.需要2个文件 Zend Optimizer和Zend Guard Loade s 下载Zend Guard Loader包.(官方地址:http://www.zend.com/en/product ...

  2. shell下添加计划性任务

    */1 * * * * /bin/sh /tmp/hello.sh ###每1分钟执行以下/tmp下的hello.sh脚本 service crond restart   重启任务计划 * 12  * ...

  3. sqlserver同步表的脚本

    /* --同步读者 insert into [172.21.200.8].gdlisxp.dbo.读者库(借书证号,读者条码,姓名,性别,身份证号, 读者级别,级别代码,单位代码,单位,可外借,发证日 ...

  4. 使用JavaScript获取Request中参数的值

    本人很少写博客,有不正确的地方还希望大家多多指导. 假设现在有一个URL,如下. http://www.jacky.com/?id=1101&name=jacky 如何通过JS访问到id和na ...

  5. [译]Memory Reordering Caught in the Act

    原文:http://preshing.com/20120515/memory-reordering-caught-in-the-act/ 编写lock-free的C/C++程序时,在保证memory  ...

  6. js一些实用例子

    1.获取焦点选中文本内容 $("#id").focus(function(){ this.select(); }); 2.表单提交方式 A.自动提交 setTimeout(func ...

  7. Jquery数组操作技巧

    Jquery对数组的操作技巧. 1. $.each(array, [callback]) 遍历[常用]  解释: 不同于例遍 jQuery 对象的 $.each() 方法,此方法可用于例遍任何对象(不 ...

  8. PHP生成随机字符串包括大小写字母

    PHP生成随机字符串包括大小写字母,这里介绍两种方法: 第一种:利用字符串函数操作 <?php /** *@blog <www.phpddt.com> */ function cre ...

  9. SQL Server 基础:拾遗

    1.一条完整的sql语句: select top | distinct 字段, 表达式, 函数, ... from 表表达式 where 筛选条件 group by 分组条件 having 筛选条件 ...

  10. 解决Genymotion下载设备失败的方法(Connection Timeout)

    一直下载不下来,报错. 解决办法: 打开 C:\Users\用户名\AppData\Local\Genymobile目录 打开genymotion.log文件,在里面最下面几行,找到如下日志 [Deb ...