1.日志的作用
日志在Spring root中有什么作用?在普通的业务中,如果发现代码出现bug,你不打开控制台看日志,你纯纯的看哪里有bug是一件可以说是不可能的事情,因此
除了发现和定位问题之外,我们还可以通过⽇志实现以下功能:
记录⽤户登录⽇志,⽅便分析⽤户是正常登录还是恶意破解⽤户。
记录系统的操作⽇志,⽅便数据恢复和定位操作⼈。
记录程序的执⾏时间,⽅便为以后优化程序提供数据⽀持。
以上这些都是⽇志提供的⾮常实⽤的功能
2.日志使用
我们先看一下常见的日志框架: 黄色的是主要使用的,换句话说,SpringBoot内置这俩。
现在来讲一下日志的使用:
2.1 通过获取日志对象得到日志
第一步是需要获得日志对象 ,代码如下:
private static final Logger logger = LoggerFactory.getLogger(TestController.class);
传的参数就是当前的类名(或者类对象)。
@Controller
@ResponseBody//非静态页面
public class TestController {
// @Value("${name}")
// private String name;
@Autowired
private StudentComponent studentComponent;
private static final Logger logger = LoggerFactory.getLogger(TestController.class);
@RequestMapping("/sayhi")
public String sayHi() {
logger.trace("这是一个 trace级别的 日志");
logger.info("这是一个 info 级别的日志");
logger.error("这是一个 error 级别的日志");
logger.warn("这是一个 warn 级别的日志");
return studentComponent.toString();
}
}
我们可以看到只打印了info级别往后的日志,这就涉及到日志级别以及默认级别的知识点了。
2.2 日志级别
当然这个日志级别是可以设置的:
2.3 日志持久化
# 设置⽇志⽂件的⽬录
logging:
file:
path: D:\\home\\*(指定的路径)
还可以自定义设置文件名称
logging:
file:
name: D:\\home\\*(路径名称)\\名称.log
2.4 更简单的方式进行日志打印
更简单的方式就是用注解的方式:通过引入注解,相当于在编译过程中,自动给你创建了日志对象,而且名称固定为log 了,后面想打印的话,就直接引用就ok了。