26.2控制台输出
默认日志配置会在写入时将消息回显到控制台。默认情况下,会记录 ERROR - 级别, WARN - 级别和 INFO 级别的消息。您还可以通过使
用 --debug 标志启动应用程序来启用“调试”模式。
$ java -jar myapp.jar --debug
您还可以在 application.properties 中指定 debug=true 。
启用调试模式后,将选择一些核心记录器(嵌入式容器,Hibernate和Spring Boot)以输出更多信息。启用调试模式并没有将应用程序配置为记
录与 DEBUG 级别的所有消息。
或者,您可以通过使用 --trace 标志(或 application.properties 中的 trace=true )启动应用程序来启用“跟踪”模式。这样做可以为选
择的核心记录器(嵌入式容器,Hibernate模式生成和整个Spring组合)启用跟踪日志记录。
26.2.1彩色编码输出
如果您的终端支持ANSI,则使用颜色输出来提高可读性。您可以将 spring.output.ansi.enabled 设置为 支持的值以覆盖自动检测。
使用 %clr 转换字配置颜色编码。在最简单的形式中,转换器根据日志级别为输出着色,如以下示例所示:
%clr(%5p)
下表描述了日志级别到颜色的映射:
水平 颜色
FATAL Red
水平 颜色
ERROR Red
WARN Yellow
INFO Green
DEBUG Green
TRACE Green
或者,您可以通过将其作为转换选项指定应使用的颜色或样式。例如,要使文本变为黄色,请使用以下设置:
%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){yellow}
支持以下颜色和样式:
blue
cyan
faint
green
magenta
red
yellow
26.3文件输出
默认情况下,Spring Boot仅记录到控制台,不会写入日志文件。如果除了控制台输出之外还要编写日志文件,则需要设置 logging.file
或 logging.path 属性(例如,在 application.properties 中)。
下表显示了 logging.* 属性如何一起使用:
表26.1。记录属性
logging.file logging.path 例 描述
(没有) (没有) 仅控制台记录。
具体文件 (没有) my.log 写入指定的日志文件。名称可以是精确位置或相对于当前目录。
(没有) 具体目录 /var/log 将 spring.log 写入指定的目录。名称可以是精确位置或相对于当前目录。
日志文件在达到10 MB时会轮换,与控制台输出一样,默认情况下会记录 ERROR - 级别, WARN - 级别和 INFO 级别的消息。可以使
用 logging.file.max-size 属性更改大小限制。除非已设置 logging.file.max-history 属性,否则以前轮换的文件将无限期归档。
日志记录系统在应用程序生命周期的早期初始化。因此,在通过 @PropertySource 注释加载的属性文件中找不到日志记录属性。