用于Spring Boot日志记录的默认CONSOLE_LOG_PATTERN是什么?在哪里可以找到它



Spring Boot参考文档4.6。Custom Log Configuration(自定义日志配置(说明了表示要在控制台上使用的默认日志记录模式的默认系统属性(仅默认Logback设置支持(。

  • Spring环境:logging.pattern.console
  • 系统属性:CONSOLE_LOG_PATTERN

我想默认的日志行外观对所有SpringBoot框架用户来说都很熟悉:

2020-08-04 12:00:00.000  INFO 24568 --- [           main] c.c.MyWonderfulSpringApplication          : The following profiles are active: local

只要我想看看它的外观,并从定义自己的版本中获得灵感,我在哪里可以找到当前使用的Spring Boot版本的默认值?

我刚刚发现这个配置在Spring Boot项目下的DefaultLogbackConfiguration文件中可用:

private static final String CONSOLE_LOG_PATTERN = "%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} "
+ "%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}";

要查找某个Spring Boot版本的模式,请执行以下操作之一:

  • 浏览GitHub上的源文件:Spring Boot 2.3.x
  • 在IntelliJ Idea中,按2x左移,然后在Classes选项卡中搜索DefaultLogbackConfiguration

我的发现来源于https://www.logicbig.com/tutorials/spring-framework/spring-boot/logging-console-pattern.html.

如果您使用的是logback-spring.xml,那么将以下内容添加到您的xml中会自动为控制台appender获取spring的默认logback配置。

<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<include resource="org/springframework/boot/logging/logback/console-appender.xml" />
<root level="INFO">
<appender-ref ref="CONSOLE" />
</root>

参考:https://docs.spring.io/spring-boot/docs/2.2.6.RELEASE/reference/html/howto.html#howto-为记录配置logback

最新更新