一旦需要自定义滚动和触发策略,就不能再依赖Spring boot的日志记录配置,必须使用特定于供应商的日志记录配置。下面是一个使用Logback和
TimeBasedRollingPolicy
:
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>server.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>server.log.%d{yyyy-MM-dd}.gz</fileNamePattern>
<maxHistory>30</maxHistory>
<totalSizeCap>3GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd } [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="FILE" />
</root>
</configuration>
当您使用
.gz
扩大如果将此文件另存为
logback.xml
并将其放在类路径上,Spring boot将自动检测它,否则,您可以使用
logging.config
属性:
logging.config=classpath:logback.xml