目录
一、日志的作用
一般程序日志出自下面几个方面的需求:
1. 记录用户操作的审计日志,甚至有的时候就是监管部门的要求。
2. 快速定位问题的根源
3. 追踪程序执行的过程。
4. 追踪数据的变化
5. 数据统计和性能分析
6. 采集运行环境数据
一般在程序上线之后,一旦发生异常,第一件事就是要弄清楚当时发生了什么。用户当时做了什么操作,环境有无影响,数据有什么变化,是不是反复发生等,然后再进一步的确定大致是哪个方面的问题。确定是程序的问题之后再交由开发人员去重现、研究、提出解决方案。这时,日志就给我们提供了第一手的资料。
二、日志级别
1. DEBUG Level
指出细粒度信息事件,主要用来调试应用程序。
2.INFO level
表明粗粒度级别,上强调应用程序的运行过程,比如进入某个业务分支。
3. WARN level
表明出现潜在错误。
4. ERROR leve
指出虽然发生错误事件,但不影响系统的继续运行。
5.FATAL level
指出每个严重的错误事件将会导致应用程序的退出。
Log4j建议只使用四个级别,优先级从高到低分别是 ERROR、WARN、INFO、DEBUG。 等于或高于日志记录器当前配置级别的日志的将被打印出来。
优先级为:DEBUG<INFO<WARNING<ERROR<CRITICAL
日志的默认级别是warning级别及以上,debug和info都不会再控制台输出
三、几个重要的概念
Logger 记录器:提供日志的接口,供应用代码使用
Handle 处理器:将(记录器产生的)日志记录发送到哪里,即输出到哪里
Filter 过滤器:提供了更好的粒度控制,它可以决定输出哪些日志记录,提供一种优雅的方式决定一个日志记录是否发送到handle
Formatter 格式化器:指定日志记录输出的具体格式
四、Logger 记录器
1、概述
是一个树形层级结构,在使用接口debug、info、warning、error、critical之前必须创建Logger实例,即创建一个记录器,如果没有显式上的进行创建,则默认创建一个roo