日志的作用
- 排除和定位问题
- 记录用户登录日志,方便分析用户是正常登录还是恶意破解用户。
- 记录系统的操作日志,方便数据恢复和定位操作人
- 记录程序执行时间,方便为以后优化程序提供数据支持。
自定义日志打印
- 在一个类中先获取到打印日志对象(日志框架提供的日志对象,而日志框架默认已经集成到spring boot里了)
- 使用日志对象提供的方法实现日志的打印。
@Controller
@ResponseBody
public class UserController {
//1.先得到日志对象
private final static Logger log= LoggerFactory.getLogger(UserController.class);//设置当前类的类型
@RequestMapping("/sayhi")
public void sayHi(){
//2.使用日志对象提供的打印方法进行日志打印
log.trace("我是 trace");
log.debug("我是 debug");
log.info("我是 info");
log.warn("我是 warn");
log.error("我是 error");
}
}
日志级别
(1) track:少许(级别最低)
(2) debug:调试日志
(3) info:普通信息日志(默认的日志级别)
(4) warn:警告日志
(5) error:错误日志
(6) fatal:致命的(系统输出的日志,不能自定义打印)
全局日志级别设置
在配置文件中设置
2.设置局部日志级别
# 设置局部文件夹的日志级别
logging.level.com.example.demo.controller=trace
当存在局部日志级别和全局日志级别设置时,那么当访问局部日志时,使用的是局部日志级别。也就是局部日志级别的优先级 大于 全局日志级别。
# 设置全局的日志级别
logging.level.root=info
# 设置局部文件夹的日志级别
logging.level.com.example.demo.controller=trace
日志持久化
将日志永久的保存到磁盘的某个位置。
- 在配置文件中设置日志的保存路径,当设置了保存路径之后,那么日志就会自动的进行持久化。
# 设置日志的保存目录
logging.file.path=E:/directry/
- 在配置文件中设置日志的保存名称,日志会自动进行持久化。
#设置日志的保存名称
logging.file.name=E:/directry/spring-boot.log
更简单的实现自定义日志的打印
添加lombok到当前项目
- 先下载editStarters插件。【file—settings—plugins】
- 在pom.xml 中,右键,generate,选择edit starters
点击OK
@Controller
@ResponseBody
@Slf4j //替代了之前需要通过 LoggerFactory.getLogger操作
public class UserService {
@RequestMapping("/sayhi2")
public void sayHi2(){
log.trace("我是trace");
log.debug("我是debug");
log.info("我是info");
log.warn("我是warn");
log.error("我是error");
}
}