Я прочитал официальный документ log4j2 и получил вопрос о RollingFileAppender.
Вот что говорится в документе:
Ниже приведен пример конфигурации, в которой используется RollingFileAppender с указанием времени и размера. на основе политик запуска будет создавать до 100 архивов в один и тот же день (1-100) , которые хранятся в каталоге на основе текущего года и месяца, и сжимает каждый архив используя gzip и будет катиться каждый час. Во время каждого ролловера эта конфигурация будет удалять файлы, которые соответствуют " / app- .log.gz" и имеют возраст 30 дней или старше, но сохраняют самые последние 100 ГБ или самые последние 10 файлов, в зависимости от того, что наступит первый.
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Properties>
<Property name="baseDir">logs</Property>
</Properties>
<Appenders>
<RollingFile name="RollingFile" fileName="${baseDir}/app.log"
filePattern="${baseDir}/$${date:yyyy-MM}/app-%d{yyyy-MM-dd-HH}-%i.log.gz">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
<DefaultRolloverStrategy max="100">
<!--
Nested conditions: the inner condition is only evaluated on files
for which the outer conditions are true.
-->
<Delete basePath="${baseDir}" maxDepth="2">
<IfFileName glob="*/app-*.log.gz">
<IfLastModified age="30d">
<IfAny>
<IfAccumulatedFileSize exceeds="100 GB" />
<IfAccumulatedFileCount exceeds="10" />
</IfAny>
</IfLastModified>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
Я думаю, что эта конфигурация создаст до 100 архивов в один и тот же час дня, не 100 архивов в тот же день , может Кто-нибудь, кто даст мне руку? Спасибо!