<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>

<!-- ========================== 自定义输出格式说明================================ -->  <!-- %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL -->  <!-- %r 输出自应用启动到输出该log信息耗费的毫秒数 -->  <!-- %m 日志内容 -->  <!-- %c 输出所属的类目,通常就是所在类的全名 -->  <!-- %t 输出产生该日志事件的线程名 -->  <!-- %n 输出一个回车换行符,Windows平台为“/r/n”,Unix平台为“/n” -->  <!-- %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日   22:10:28,921 -->  <!-- %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10) -->  <!-- %%输出一个%号 -->  <!-- ========================================================================== -->

<!-- ========================== 输出方式说明================================ -->  <!-- Log4j提供的appender有以下几种: -->  <!-- org.apache.log4j.ConsoleAppender(控制台), -->  <!-- org.apache.log4j.FileAppender(文件), -->  <!-- org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), -->  <!-- org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), -->  <!-- org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方) -->

<!-- ========================== 布局方式说明================================ -->  <!-- Log4j提供的appender有以下几种: -->  <!-- org.apache.log4j.HTMLLayout(以HTML表格形式布局), -->  <!--org.apache.log4j.PatternLayout(可以灵活地指定布局模式), -->  <!--org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串), -->  <!--org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) -->

<!-- 关于日志level. -->  <!-- 共有8个级别,按照从低到高为:All < Trace < Debug < Info < Warn < Error < Fatal <   OFF. -->  <!-- All:最低等级的,用于打开所有日志记录. -->  <!-- Trace:是追踪,就是程序推进以下,你就可以写个trace输出,所以trace应该会特别多,不过没关系,我们可以设置最低日志级别不让他输出. -->  <!-- Debug:指出细粒度信息事件对调试应用程序是非常有帮助的. -->  <!-- Info:消息在粗粒度级别上突出强调应用程序的运行过程. -->  <!-- Warn:输出警告及warn以下级别的日志. -->  <!-- Error:输出错误信息日志. -->  <!-- Fatal:输出每个严重的错误事件将会导致应用程序的退出的日志. -->  <!-- OFF:最高等级的,用于关闭所有日志记录. -->  <!-- ========================================================================== -->

<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  自应用启动到输出该log信息毫秒数:%r  内容:%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(文件), 可以指定文件大小和文件数 这里没用这种方式 -->  <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" />   <!-- 文件到达这个个数,就开始滚存之前的记录 -->   <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 自应用启动到输出该log信息毫秒数:%r 内容:%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 自应用启动到输出该log信息毫秒数:%r 内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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  自应用启动到输出该log信息毫秒数:%r  内容:%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>

<!-- 发邮件(只有ERROR时才会发送!) -->  <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时发送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  自应用启动到输出该log信息毫秒数:%r  内容:%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>

/src/log4j.xml的更多相关文章

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

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

  2. Log4j XML配置

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

  3. log4j.xml 为什么要使用SLF4J而不是Log4J

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SY ...

  4. log4j.xml的实用例子

    大多数讲log4j配置的教程用的都是log4j.properties文件,我觉得xml或许更好一点,在这里我提供一个我已经用于生产环境的log4j.xml的例子,先上代码,然后再解释: <?xm ...

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

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

  6. Log4j XML 配置

    Xml代码 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configurat ...

  7. log4j.xml配置文件

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration S ...

  8. log4j.xml配置示例

    这是log4j1.x版本讲解,log4j-1.2.16.jar    1. 一般的log4j.xml的两种配置方式: 1.Logger 完成日志信息的处理定义输出的层次和决定信息是否输出DEBUG&l ...

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

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

随机推荐

  1. python随机数random

    1.random.random()方法用于生成一个0到1的随机浮点数:0<=n<1.0 2.random.uniform(a,b):用于生成一个指定范围内的随机浮点数,两格参数中,其中一个 ...

  2. IP地址查询接口API

    项目需要根据ip查询pos机设备所在的省份信息,经查询有以下几种免费接口: 1. 淘宝IP API http://ip.taobao.com/service/getIpInfo.php?ip=xxx ...

  3. 关于百度world 编辑器改变上传图片的保存路径图片不显示的问题

    在ueditor.mini for asp.net 中,将上传的图片保存的路径更改了,可图片在 world 编辑器中不显示,但却可以上传到指定的保存目录下,解决这个问题的方法 是: 在udditor_ ...

  4. Object-c基本语法

    // //  main.m //  OCbasic1 // //  Created by apple on 14-8-5. //  Copyright (c) 2014年 苹果IOS软件开发者. Al ...

  5. Java执行js代码

    在做项目中有时候需要用到Java调用js文件执行相应的方法 在JDK1.6添加了新的ScriptEngine类,允许用户直接执行js代码. import org.junit.Test; import ...

  6. PHP读取txt文件到数组

    $file_path = "test.txt"; if(file_exists($file_path)){ $file_arr = file($file_path); for($i ...

  7. python学习笔记_week13

    一.前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,其实这个认识是不全面的,跳板功能只是堡垒机所具备的功能属性中的 ...

  8. zookeeper(5)--基于watcher原理实现带注册中心的RPC框架

    一.带版本控制的注册中心RPC框架 server端 //注册中心接口 public interface IRegisterCenter { public void register(String se ...

  9. 32. 安装oracle11g时,先决条件一直失败的解决方法

    解决方法:1. 在命令提示符下 net share c$=c: 补充: 如果这个命令提示错误:“发生系统错误 5,拒绝访问的时候”,那我们可以修改注册表,检查AutoShareServer和AutoS ...

  10. 4. Tomcat内存溢出解决

    1.  java.lang.OutOfMemoryError: PermGen space a.如果tomcat是以bat方式启动的,则如下设置: 修改TOMCAT_HOME/bin/catalina ...