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. Show Users Assigned to a Specific Role

    In a previous post I showed you how to know what Roles are assigned to a specific user. But here is ...

  2. Bootstrap Alert Auto Close

    http://stackoverflow.com/questions/23101966/bootstrap-alert-auto-close http://jsfiddle.net/mfX57/ $( ...

  3. 史上最全Vim快捷键键位图(入门到进阶)

    经典版 下面这个键位图应该是大家最常看见的经典版了. 对应的简体中文版 其实经典版是一系列的入门教程键位图的组合结果,下面是不同编辑模式下的键位图. 入门版 基本操作的入门版. 进阶版 增强版 下图是 ...

  4. sql分类及基本sql操作,校对规则(mysql学习笔记二)

    sql针对操作对象分为不同语言 数据操作(管理)语言 DML或者将其细分为 ( 查询  DQL 管理(增,删,改)  DML) 数据定义语言(对保存数据的格式进行定义) DDL 数据库控制语言(针对数 ...

  5. Lua 多维表的遍历中的赋值

    说到Lua的遍历将要使用到循环:先说遍历再说循环: 遇到这样类似结构的一个table Data={ []={p1=,pa={,,}}, []={p1=,pa={,,}}, []={p1=,pa={,, ...

  6. 【转载】学习C#的28条建议

    1. 看得懂的书,请仔细看:看不懂的书,请硬着头皮看:2. 别指望看第一遍书就能记住和掌握什么——请看第二遍.第三遍:3. 学习编程的秘诀是:编程,编程,再编程:4. 请把书上的程序例子亲手输入到电脑 ...

  7. 第六节:宿主如何使用AppDomain

    前面已经讨论了宿主以及宿主加载CLR的方式.同时还讨论了宿主如何告诉CLR创建和卸载AppDomain.为了使这些讨论更加具体,下面将描述一些常见的宿主和AppDomain使用情形.特别地,我要解释不 ...

  8. sublimeLinter-jshint 配置

    这几天知道sublime3有可以对javascript进行语法检查的文件,折腾了一上午,搞定了. 记录一下步骤: 1.先安装nodejs. 2.npm install jshint -g 3.通过su ...

  9. C语言 将产生的随机数存入数组,数据不能相同

    1.定义一个一维数,数组大小为24. 2.产生0~23的随机数. 3.将产生的随机数存入i数组,要求数组中的每个数据不能相同. 4.补充说明,这个子程序要求每次调用后,这个数组里面就 存放了0~23这 ...

  10. java 单例模式总结

    单例模式的实现方式总结: 第一种方式:同步获取实例的方法,多线程安全,懒汉模式.在调用实例的时刻初始化. public class Singleton1 { private static Single ...