提示:学知识,特别是开发技术,要有下面的观念
- 这是个什么东西?有什么作用?
- 找个例子,看下演示,或者自己动手做一下,知道并理解它能干什么。
- 这个东西怎么实现的,或者有配置的话,怎么配置的?配置项的中关键概念是那些?
- 这个东西和其他类似功能的东西的对比,优劣?
- 使用这个东西有什么潜在的问题吗?
一.log4j日志系统介绍
1.关键组成部分
- Logger:设置总体日志级别,和要设置的那些appender,可同时设置多个appender
- Appender:输出日志的位置,常见的输出到控制台,输出到文件
- Layout:输出日志的形式
2.日志级别
Logj4日志级别有5个DEBUG、INFO、WARN、ERROR和FATAL,Log4j有一个规则:只输出级别不低于设定级别的日志信息,所以如果你配置设置的级别是error,那么你在代码里用log.info()打印的日志不会输出.
3.输出日志文件的设置选择
- 滚动生成,设置一个时间周期X,过了X之后就生成一个新日志文件
- 滚动生成,设置一个文件大小阈值threld,日志文件到达threld时设置成一个新文件
- 可以设置日志文件的位置和名字,名字可以带参数(系统环境变量)
- 某个类的日志输出为独立的日志文件
二.具体配置
假设使用gradle作为构建工具
1.buidl gradle的配置
// 日志管理依赖
implementation group: 'org.slf4j', name: 'slf4j-api'