我正在使用log4j2并尝试使用log-rotation进行记录。具体来说,我想以10MB的最大大小登录并无限制地旋转。下面的配置生成3代滚动文件,因为“DefaultRolloverStrategy max”设置为3.请问,请指导我如何记录最大大小为10MB的无限数量的文件?
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Properties>
<Property name="format1">%m%n</Property>
<Property name="logfile">${sys:logDirectory}/log.log</Property>
<Property name="logfile-archive">${sys:logDirectory}/log_%d{yyyy-MM-dd}.%i.log
</Property>
</Properties>
<Appenders>
<RollingFile name="logfile001" append="true" fileName="${logfile}"
filePattern="${logfile-archive}">
<PatternLayout>
<pattern>${format1}</pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="10MB" />
</Policies>
<DefaultRolloverStrategy max="3" />
</RollingFile>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="logfile001" />
</Root>
</Loggers>
</Configuration>
答案 0 :(得分:2)
将极端值设置为DefaultRolloverStrategy max
。 E.g。
<DefaultRolloverStrategy max="1000000000" />
<强>更新强>
根据Log4j2 documentation,从版本2.8开始,可以通过将fileIndex
属性设置为nomax
来完成。 E.g。
<DefaultRolloverStrategy fileIndex="nomax" />