log4j2 unlimited RollingFile

时间:2017-12-05 09:50:13

标签: log4j2

我正在使用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>

1 个答案:

答案 0 :(得分:2)

极端值设置为DefaultRolloverStrategy max。 E.g。

<DefaultRolloverStrategy max="1000000000" />

<强>更新

根据Log4j2 documentation,从版本2.8开始,可以通过将fileIndex属性设置为nomax来完成。 E.g。

<DefaultRolloverStrategy fileIndex="nomax" />