我的要求是在当前日期目录中打印日志,并且在以下情况下需要将日志翻转到当前日期目录中: 1)达到最大文件大小 2)或日期已更改
所以今天的日期是2019年7月16日,因此目录结构应为
16_07_2019 / fde.log(当前日志)
16_07_2019 / fde.1.log(由于最大大小)
16_07_2019 / fde.2.log(由于最大大小)
15_07_2019 / fde.log(昨天的日志)
15_07_2019 / fde.1.log(由于最大大小,昨天的日志)
我的logback.xml是:
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<appender name="FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/VVV/AA/%d{yyyy_MM_dd}/fde.log</file>
<rollingPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>/VVV/AA/%d{yyyy_MM_dd}/fde.%i.log
</fileNamePattern>
<maxFileSize>2MB</maxFileSize>
</rollingPolicy>
<encoder>
<pattern>%d{MM:dd HH:mm:ss.SSS} [%t] [%level] [%logger{36}] - %msg%n
</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="FILE"/>
</root>
</configuration>
不是创建当前日期目录,而是创建%d{yyyy_MM_dd}
目录。我不确定为什么吗?
此外,根据我的要求,这个xml看起来还不错吗?
使用SpringBoot:2.0.5版本
答案 0 :(得分:0)
尝试一下:
<file>/VVV/AA/logs/fde.log</file>
<rollingPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>/VVV/AA/logs/fde-%d{yyyy_MM_dd}.%i.log</fileNamePattern>
<maxFileSize>2MB</maxFileSize>
</rollingPolicy>
仅滚动显示文件名,而不显示日志文件目录。