三、日志
1.日志的使用
使用
@RestController
public class LogController {public static final Logger log = LoggerFactory.getLogger(LogController.class);@GetMapping("/index")public String index(){log.info("请求info 信息");log.debug("请求debug 信息");log.warn("请求warn 信息");log.error("请求错误信息");return "OK";}}
-
日志级别
- FATAL 灾难信息
- ERROR 错误
- WARN 警告
- INFO 运维过程信息
- DEBUG 调试信息
- TRACE 堆栈信息
-
一般的使用
- INFO
- DEBUG
-
设置日志的级别
logging:level:root: info
-
注意:打印的内容越多,级别也就越低
-
设置组
logging: # 设置组group:controller: cn.sycoder.springbootlog.controllerlevel:root: info # cn.sycoder.springbootlog.controller: warncontroller: warn
2.使用lombok简化日志操作
-
导入依赖
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId> </dependency>
-
使用
@Slf4j @RestController public class LogController {@GetMapping("/index")public String index(){log.info("请求info 信息");log.debug("请求debug 信息");log.warn("请求warn 信息");log.error("请求错误信息");return "OK";} }
-
底层反编译
2.使用lombok简化日志操作
-
导入依赖
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId> </dependency>
-
使用
@Slf4j @RestController public class LogController {@GetMapping("/index")public String index(){log.info("请求info 信息");log.debug("请求debug 信息");log.warn("请求warn 信息");log.error("请求错误信息");return "OK";} }
-
底层反编译
3.日志输出格式
-
图示
-
模仿springboot 写一下日志文件
logging:pattern:console: "%d %clr(%-5p){yellow} %clr(${pid}){magenta} ---[%20t] %-40.40c : %m %n"
4.输出日志到文件
-
背景:项目持续跑,日志文件会越来越大。
4.1指定路径输出
-
指定路径
logging:file:path: F:\03-Spring\SpringBoot\homework\springboot-log
4.2指定名称输出
-
指定名称
logging:file:name: F:\03-Spring\SpringBoot\homework\springboot-log\sy.log
-
注意:指定名称输出的优先级会更高
4.3拆分日志文件
-
注意版本信息,如果版本太低的时候不支持 logback
-
按照日期的格式拆分
- sy2023-01-10-1.log
- sy2023-01-10-2.log
-
拆分日志文件
logdir: F:\03-Spring\SpringBoot\homework\springboot-log\ logging:logback:rollingpolicy:max-file-size: 2KBfile-name-pattern: ${logdir}sy-%d{yyyy-MM-dd}-%i.logfile:name: ${logdir}sy.log