对log4j.properties的一点介绍
来源:互联网 发布:michael jackson 知乎 编辑:程序博客网 时间:2024/06/05 06:27
除去以#开头的注释以及空行,第一行有用的内容是:
log4j.rootLogger是最最重要的一个属性了,它定义日志信息的“输出级别”和“输出目的地”。关键看“=”后面的值,“DEBUG, CONSOLE,A1”这里我们要把它分成两部分:第一个逗号之前的是第一部分,指定“输出级别”;后面的是第二部分,指定“输出目的地”。可以同时指定多个“输出目的地”,以逗号隔开。
具体到上面这一行:它指定的“输出级别”是“DEBUG”;它指定的“输出目的地”是“CONSOLE”和“A1”。
注意:
“输出级别”有可选的五个值,分别是DEBUG、INFO、WARN、ERROR、FATAL,它们是由Log4j系统定义的。
“输出目的地”就是我们自己定义的了,就在log4j.properties的后面部分,此文件定义的“输出目的地”有CONSOLE、FILE、ROLLING_FILE、SOCKET、LF5_APPENDER、MAIL、DATABASE、A1、im。该文件之所以可作主模板,就是因为它比较全面地定义了各种常见的输出目的地(控制台、文件、电子邮件、数据库等)。
下面详细解释“log4j.rootLogger=DEBUG, CONSOLE,A1”这一行:
指定“输出级别”是“DEBUG”,即,仅输出级别大于等于“调试(DEBUG)”的日志信息。如果此处指定的是“WARN”则仅调用warn()、error()、fatal()方法输出的日志信息才被输出到“输出目的地”,而调用debug()、info()方法输出的日志信息不被输出到“输出目的地”。明白了吗?Log4j就是以这种方式来过滤控制日志信息的输出与否,这也是对日志信息进行级别分类的目的。 指定“输出目的地”是“CONSOLE”和“A1”,即,将指定的日志信息(根据日志级别已进行了过滤)同时输出到的“控制台”和“SampleMessages.log4j文件”。
为什么说“CONSOLE”表示将日志信息输出到“控制台”呢?那就要看一下后文的定义了:
# 应用于控制台
为什么说“A1”表示将日志信息输出到“SampleMessages.log4j文件”呢?还要看后文的定义:
注意:这里的定义没有指定输出文件的路径,它的路径实际上是 java.user.path的值。您应该已经注意到,在定义“输出目的地”时,还可以指定日志格式、时间、布局等相关信息。略过。
另外,我可以根据需要,将这一行修改为:
将“错误(ERROR)”及“致命错误(FATAL)”级别的日志信息同时输出到控制台、文件,并且发电子邮件向系统管理员报告。是不是很爽?(如果将“调试(DEBUG)”级别的日志信息邮件给管理员,恐怕迟早会把他/她的邮箱涨爆,哪怕用的是Gmail!再次理解了“将日志信息分为不同级别”的意图了吧?)
3、目前在使用的一个“应用于输出到文件”的log4j.properties设置
- 对log4j.properties的一点介绍
- log4j.properties文件的介绍
- 对LOG4J日志操作的一点心得
- 我对Log4J的一点初认识
- 我对Log4J的一点初认识- -
- log4j的配置文件log4j.properties
- log4j的配置文件,log4j.properties
- log4j.properties的应用
- log4j.properties的问题
- 有用的 log4j.properties
- log4j.properties的使用
- 有用的log4j.properties
- log4j的properties配置文件:
- log4j.properties的配置
- log4j.properties的配置
- log4j.properties的配置
- log4j.properties的配置
- log4j.properties的配置
- AjaxPro.dll的使用
- 写在boy二次奋斗之始
- css实现图片在div中水平和垂直居中(但图片宽高要小于div宽高)
- 最常用的ajax代码
- 为mysql数据库表格添加一个新列
- 对log4j.properties的一点介绍
- silverlight与Flash的技术比较
- 说说DataGridView在winform的分页效果
- 应用身份验证措施
- jQuery中文入门指南,翻译加实例,jQuery的起点教程
- 计算机软件技术资格和水平考试各省联系地址
- 浅谈C语言中如何取随机数
- 30岁IT人价值在哪里?
- PHP学习使用资源简单总结