文章目录
- 日志的作用
- 自定义日志打印
- 获得日志对象
- 使用日志对象打印日志
- 日志格式说明
- 日志级别
- 日志级别的作用
- 日志级别的分类
- 日志级别的设置
- 日志持久化
- 更简单的使用日志
日志的作用
- 发现和定位问题
- 记录用户登录日志,判断用户是正常登录还是恶意登录
- 记录系统操作日志,方便数据恢复和定位操作人
- 记录程序的执行时间,为以后优化程序提供数据支持
自定义日志打印
获得日志对象
public class UserController {
private static Logger logger = LoggerFactory.getLogger(UserController.class);
}
注:
- 需要将类类型传给 LoggerFactory ,确定类的归属,更方便直观的定位到问题类
- logger 所属 org.slf4j 包,不要导错包
使用日志对象打印日志
public String sayHi(){
logger.trace("我是trace");
logger.debug("我是debug");
logger.info("我是info");
logger.error("我是error");
logger.warn("我是warn");
return "hi,spring boot";
}
注:
- 直接使用 logger 即可打印不同级别的日志
- 日志一共有六大级别,下面介绍。
日志格式说明
日志级别
日志级别的作用
- 日志级别可以帮助我们筛选重要的信息,在设置日志级别后只会打印设置的日志级别之上的日志
- 日志级别可以帮助我们控制在不同的环境下打印日志的多少。比如:通过设置日志级别实现,在开发环境下打印较多的日志,在生产环境下打印较少的日志
日志级别的分类
- trace:微量、少许的意思,级别最低
- debug:打印调试时候的关键信息
- info:普通的打印信息(默认的日志级别)
- warn:打印警告信息
- error:打印报错信息
- fatal:致命的,因代码异常导致程序退出的信息
日志级别的设置
# 为整个项目设置统一的日志级别
logging:
level:
root: warn
注:在配置文件中,通过设置 root 的日志级别来设置整个项目的日志级别。(root即代表整个项目)
# 为不同的目录设置不同的日志级别
logging:
level:
root: info
com.example.demo.controller: debug
com.example.demo.service: debug
注:分别为 controller 和 service 设置自己的日志级别
日志持久化
# 把日志信息放到指定的目录下 会自动创建文件
logging:
file:
patn: D:\\home\\log
# 把日志信息放到指定的文件下
logging:
file:
patn: D:\\home\\log\\spring.log
注:
- 日志持久化是指把日志信息进行持久化保存,比如放到文件中。方便以后查看
- 既可以指定日志信息存放的文件夹也可以指定日志信息存放的文件
更简单的使用日志
我们在 Lombok的文章中介绍过,大家可以点击查看。Lombok详细介绍+使用教程