/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 输出优先级,即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的更多相关文章
- 转载:log4j.properties log4j.xml 路径问题
自动加载配置文件: (1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解.log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找lo ...
- Log4j XML配置
问题描述: Log4j XML配置 问题解决: (1)编写log4j.xml配置文件 注: 如上的XML文件必须以log4j.xml文件命名,否则无法读取配置文件,同样的如果 ...
- log4j.xml 为什么要使用SLF4J而不是Log4J
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SY ...
- log4j.xml的实用例子
大多数讲log4j配置的教程用的都是log4j.properties文件,我觉得xml或许更好一点,在这里我提供一个我已经用于生产环境的log4j.xml的例子,先上代码,然后再解释: <?xm ...
- log4j日志文件 log4j.xml log4j.properties配置
1,导入log4j jar包; 2,配置log4j.xml或log4j.properties文件; ------------------------------------------------- ...
- Log4j XML 配置
Xml代码 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configurat ...
- log4j.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration S ...
- log4j.xml配置示例
这是log4j1.x版本讲解,log4j-1.2.16.jar 1. 一般的log4j.xml的两种配置方式: 1.Logger 完成日志信息的处理定义输出的层次和决定信息是否输出DEBUG&l ...
- (转)log4j(七)——log4j.xml简单配置样例说明
背景:在公司中警察需要做技术支持,查看日志,而查看日志首先要自己清楚日志是如何生成的,所以有必要知道日志的前世今生! 转载出处:http://www.cnblogs.com/godtrue/p/644 ...
随机推荐
- Python之网络编程(Socket)
1.网络通信原理与互联网协议 详见:https://www.cnblogs.com/JackLi07/p/9218039.html 2.socket层 以上是tcp/ip五层协议的结构图,我们没有看到 ...
- js 原生图片上传
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- BZOJ4195 luoguP1955 NOI2015D1T1 程序自动分析
题意:给定n个(xi = xj) 或 (xi != xj) 的条件,问是否可能成立 BZOJ链接:http://www.lydsy.com/JudgeOnline/problem.php?id=419 ...
- asp 月末 月初
上个月第一天:<%=dateadd("m",-1,year(date)&"-"&month(date)&"-1" ...
- iPhone投影
iPhone投影到Mac上面的操作,用QuickTime,选择主菜单的新建屏幕录制,然后点击录制按钮右边的箭头,相机切换到iPhone就可以了. 相关操作参照 https://jingyan.baid ...
- 学习笔记:ES6
http://es6.ruanyifeng.com/ ECMAScript 6 https://frankfang.github.io/es-6-tutorials/ ES 6 新特性列表 2017- ...
- windows server 域分发与分配软件
参考网站:https://blog.csdn.net/southwind0/article/details/80734508 1.win 2008创建域 https://jingyan.baidu.c ...
- pig简介
Apache Pig是MapReduce的一个抽象.它是一个工具/平台,用于分析较大的数据集,并将它们表示为数据流.Pig通常与 Hadoop 一起使用:我们可以使用Apache Pig在Hadoop ...
- 恺撒密码 I Python实现
'''恺撒密码 I描述凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:原文:A ...
- 深度学习原理与框架-Tensorflow基本操作-mnist数据集的逻辑回归 1.tf.matmul(点乘操作) 2.tf.equal(对应位置是否相等) 3.tf.cast(将布尔类型转换为数值类型) 4.tf.argmax(返回最大值的索引) 5.tf.nn.softmax(计算softmax概率值) 6.tf.train.GradientDescentOptimizer(损失值梯度下降器)
1. tf.matmul(X, w) # 进行点乘操作 参数说明:X,w都表示输入的数据, 2.tf.equal(x, y) # 比较两个数据对应位置的数是否相等,返回值为True,或者False 参 ...