SpringBoot使用的 slf4j + logback:
官网文档:https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.logging.shutdown-hook
日志输出信息为: --2022-11-08 14:44:56.836 -ERROR 10512 --- [ main] c.c.s.SpringBootLogging02Application : ERROR 错误
格式为: %clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){blue} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
- %clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){blue}
- %d :logback 的日期显示格式
-
日期和时间:毫秒精度和容易排序。
- %clr(${LOG_LEVEL_PATTERN:-%5p})
-
日志级别:
ERROR
,警告
,INFO
,调试
,或TRACE
.
-
- %clr(${PID:- }){magenta}
-
进程ID
-
- %clr([%15.15t]){faint}
-
A
---
分隔符,用于区分实际日志消息的开头。
-
- %clr(%-40.40logger{39}){cyan}
- 线程名称:括在方括号中(控制台输出时可能会被截断)。
- %clr(:){faint}
- Logger name:这通常是源类名(通常缩写)
- %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
- 日志消息
其中%clr控制的 {blue} 是日志字体的颜色,例如:
%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){blue}
将时间的字体颜色设置为蓝色:
${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}
使用的是SpringBoot中的 ${value:value2} 占位符 + null 条件的表达式:SpringBoot首先会去环境中去取 LOG_DATEFORMAT_PATTERN 的值,如果为null,那么就会取 : 后的值 -yyyy-MM-dd HH:mm:ss.SSS
LOG_DATEFORMAT_PATTERN 对应的就是 logging.pattern.dateformat= 的值
并且可以获取该值:
日志文件输出:
logging.file.name=文件名称.log 或 D:\xxx\xx\文件名称.log
如果没有指定路径那么就会在当前项目路径下创建该文件,并且该选项可以指定路径。
logging.file.path=路径
在指定路径下生成日志文件,该选项只能指定路径,不能指定文件名称,默认会使用spring.log 来记录。
自定义日志配置文件:
<configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <!-- 日志输出格式--> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{100} - %msg%n</pattern> </encoder> </appender> <!-- 控制日志范围,只输出某个包下的日志--> <logger name="com.cdulm.springbootlogging03" level="TRACE"></logger> <!-- 日志级别--> <root level="info"> <appender-ref ref="STDOUT"/> </root> </configuration>
当进行了自定义的日志文件的配置后,properties文件中的配置就会失效。
logback 结合 springProfiles 使用时需要使用以 logback-spring.xml 命名的配置文件
标签:SpringBoot,DATEFORMAT,PATTERN,HH,日志,clr,LOG From: https://www.cnblogs.com/0099-ymsml/p/16869715.html