spring boot 日志配置方法

Posted xiaobaidonghui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot 日志配置方法相关的知识,希望对你有一定的参考价值。

一、序

目前Spring Native最新的版本为0.9.2,官方文档指出已经支持了logback日志框架,但仅限于propertiesyml配置形式,对xml配置仍未很好的支持。

奈何之前所有项目都是使用的logback-spring.xml进行配置的,这篇记录一下如何使用properties替换原有的配置文件。

二、日志配置

1. 控制台日志

控制台日志的配置较简单,主要是指定打印日志的格式及字符集,原始的xml 配置如下:

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%date %-5level --- [%thread] %logger36   : %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>

转写的配置文件如下:

logging:
  charset:
    console: UTF-8 # 控制台日志输出的字符集
  pattern:
    console: '%date %-5level --- [%thread] %logger36   : %msg%n' # 控制台日志的格式

2. 文件日志

输出到文件的日志除了配置日志格式和字符集之外,还要设置文件输出的位置,而且考虑到软件安全审计的要求,通常还会设置按时间或大小的日志切割。

    <appender name="DEBUGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    	<file>/work/logs/debug.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        	<FileNamePattern>/work/logs/debug.%dyyyy-MM-dd-%i.log</FileNamePattern>
            <MaxHistory>1095</MaxHistory>
            <totalSizeCap>100GB</totalSizeCap>
            <TimeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <MaxFileSize>30MB</MaxFileSize>
            </TimeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>
        <encoder>
            <pattern>%date [%thread] %-5level %logger80 - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>

转写的配置文件如下:

logging:
  charset:
    file: UTF-8 #日志文件的字符集
  pattern:
    file: '%date [%thread] %-5level %logger80 - %msg%n' #日志文件的日志格式
  file:
    name: /work/logs/debug.log #日志文件的保存路径
  logback:
    rollingpolicy:
      file-name-pattern: '/work/logs/debug.%dyyyy-MM-dd-%i.log.gz' #滚动日志文件名,此处进行了GZ压缩
      max-file-size: 30MB #单个日志文件的最大大小
      max-history: 1095 #最多保留多少天日志
      total-size-cap: 100GB #所有备份日志允许占用的最大空间

三、参考资料

参考资料:
https://docs.spring.io/spring-native/docs/current/reference/htmlsingle/
https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties

自研广告位:

以上是关于spring boot 日志配置方法的主要内容,如果未能解决你的问题,请参考以下文章

spring boot 日志配置方法

spring boot 日志配置方法

Spring Boot 日志配置方法(超详细)

SpringBoot日志logback配置

spring-boot中logback日志配置

Spring Boot参考教程日志相关使用