logback.xml 设置文件大小
时间: 2023-09-08 11:15:03 浏览: 67
在logback中,可以通过设置 `<rollingPolicy>` 元素来控制日志文件的大小。具体操作如下:
1. 在logback.xml文件中添加rollingPolicy元素,并设置属性。
```xml
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/myapp.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>logs/myapp.%i.log.zip</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>100MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
```
2. 在 `<rollingPolicy>` 元素中,设置 `class` 属性为 `ch.qos.logback.core.rolling.FixedWindowRollingPolicy`,并设置 `fileNamePattern`、`minIndex`、`maxIndex` 属性。其中,`fileNamePattern` 属性指定日志文件名的格式,`minIndex` 和 `maxIndex` 属性指定日志文件的最小索引和最大索引。
3. 在 `<appender>` 元素中,设置 `class` 属性为 `ch.qos.logback.core.rolling.RollingFileAppender`,并在其中添加 `triggeringPolicy` 元素。在 `triggeringPolicy` 元素中,设置 `class` 属性为 `ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy`,并设置 `maxFileSize` 属性。`maxFileSize` 属性指定日志文件的最大大小。
通过以上设置,当日志文件达到指定的大小时,会自动创建新的日志文件,并将旧的日志文件进行压缩。