使用 @Slf4j 注解配置日志

2021-12-22 17:31:26
在pom.xml中添加lombok 使用@Slf4j注解; 默认可以使用log.error()、log.info()、log.debug()等输出; 设置日志级别 日志级别从小到大为 trace < debug < info < warn < error < fatal,由于默认日志级别设置为 INFO,因此info级别的日志时, trace 和 debug 级别的日志都看不到。 我们可以在 applicaition.properties文件中修改日志级别。比如将全局日志级别都改成 trace,则系统所有的日志都能看到。 ``` logging.level.root=trace ``` 我们也可以只设置某个包的日志级别,这样能够更方便准确地定位问题。比如下面配置,只对所有 com.example 包下面产生的日志级别改成 trace: ``` logging.level.com.example=trace ``` 将日志输出到文件。只需要通过 logging.file.path 配置文件存放路径即可: ``` logging.file.path=./log/ ``` 设置日志文件大小和格式 日志输出格式: ``` %d{HH: mm:ss.SSS}——日志输出时间。 %thread——输出日志的进程名字,这在Web应用以及异步任务处理中很有用。 %-5level——日志级别,并且使用5个字符靠左对齐。 %logger{36}——日志输出者的名字。 %msg——日志消息。 %n——平台的换行符。 # 日志文件大小 logging.file.max-size=10MB # 保留的日志时间 logging.file.max-history=10 # 修改在控制台输出的日志格式 logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger : %msg%n # 修改输出到文件的日志格式 logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger : %msg%n # 修改在控制台输出的日志格式 -- 如果想让不同类型的数据具有不同的高亮效果 logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %clr(%5p) [%thread] %clr(%logger){cyan} : %msg%n ``` 如果觉得类名太长(%logger),我们还可以将其设置个长度限制。比如下面限制长度为 45 个字符,超过得话包名部分会变成缩写: ``` # 修改在控制台输出的日志格式 logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %clr(%5p) [%thread] %clr(%logger{45}){cyan} : %msg%n ``` yml文件配置 日志输出: 配置属性: ``` logging.config:日志配置文件的位置。例如:classpath:logback.xml。 logging.exception-conversion-word:当日志出现异常时会用到这个转换词。 logging.file:配置日志输出的文件名,也可以配置文件名的绝对路径。 logging.level:设置日志等级。 logging.file.max-size:配置日志文件的最大值,默认10MB。 logging.path:配置日志的路径。如果没有配置logging.file,Spring Boot 将默认使用spring.log作为文件名。例如/var/log。 logging.pattern.console:用在控制台中的日志模式(stdout)。(只支持默认的Logback设置。) logging.pattern.dateformat:设置日志日期格式。 logging.pattern.file:用在文件中的日志模式 (如果启用LOG_FILE)。(只支持默认的Logback设置。) logging.pattern.level:定义渲染不同级别日志的格式。默认是%5p。 ```