博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Log4j官方文档翻译(六、日志的级别)
阅读量:7162 次
发布时间:2019-06-29

本文共 1664 字,大约阅读时间需要 5 分钟。

hot3.png

org.apache.log4j.Level 类提供了下面几种日志级别,你也可以通过继承这些类,自定义级别

  • ALL 所有日志级别都包括
  • DEBUG 指定信息事件的粒度是DEBUG,在调试应用的时候会有帮助
  • ERROR 指定错误事件,并且这些事件还会保证应用继续运行
  • FATAL 指定严重的错误事件,该事件会导致应用暂停
  • INFO 指定信息消息,强调应用粗粒度的运行情况
  • OFF 最高等级,相当与关闭了日志
  • TRACE 指定比DEBUG更细粒度的调试日志
  • WARN 输出具有潜在风险的信息

如何使用不同的级别

log4j中日志的级别是排好序的,一般的标准是

ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF
如果日志本身使用的是WARN输出,但是log4j设置的级别是FATAL,则不会输出;相反,如果设置的是DEBUG,则会输出。

下面这个例子,展示了如何过滤DEBUG和INFO消息。

import org.apache.log4j.*;public class LogClass {private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);public static void main(String[] args) {log.setLevel(Level.WARN);log.trace("Trace Message!");log.debug("Debug Message!");log.info("Info Message!");log.warn("Warn Message!");log.error("Error Message!");log.fatal("Fatal Message!");}}

当编译后执行,会得到如下的结果:

Warn Message! Error Message! Fatal Message!

在配置文件中设置级别

log4j支持在配置文件中设置日志的默认级别,这样就不用修改源代码,就可以改变日志的级别了。

下面就给出了一个配置文件的例子,与上面log.setLevel(Level.WARN)方法相同的工作:

log = /usr/home/log4j log4j.rootLogger = WARN, FILE log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=${log}/log.out log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.conversionPattern=%m%n

然后运行下面的代码:

import org.apache.log4j.*; public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class); public static void main(String[] args) {
log.trace("Trace Message!"); log.debug("Debug Message!"); log.info("Info Message!"); log.warn("Warn Message!"); log.error("Error Message!"); log.fatal("Fatal Message!"); } }
运行上述的代码,就会得到:
Warn Message! Error Message! Fatal Message!

转载于:https://my.oschina.net/u/204616/blog/545055

你可能感兴趣的文章
红帽企业版6.0 KVM虚拟化实战攻略01
查看>>
vgscan命令--Linux命令应用大词典729个命令解读
查看>>
剑指Offer(java版):在O(1)时间删除链表节点
查看>>
SQLite 递增主键(Autoincrement)
查看>>
linux的FTP服务
查看>>
Squid代理服务器+ACL访问控制+Squid日志分析&&任务计划
查看>>
nagios完整配置文档(第三、四章)
查看>>
Jenkins+Maven+SVN+Nexus 搭建持续集成环境
查看>>
Android 6.0RunTime Permission完美解决方案
查看>>
使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
查看>>
等额本金和等额本息还款
查看>>
我的友情链接
查看>>
杨老师课堂由杨亦涛主讲
查看>>
SUDO_USER和SUDO_UID
查看>>
SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录
查看>>
cisco ASA 密码恢复
查看>>
C语言进阶【暑期特别篇】深入剖析(un)signed及溢出(下)
查看>>
Oracle笔记(八) 复杂查询及总结
查看>>
apache两种工作模式详解
查看>>
代码管理工具—SVN
查看>>