Я хочу, чтобы в log4j2 была стратегия, чтобы файл журнала работал на основе времени и размера. Такой, что он должен катиться ежедневно и когда размер достигает максимум 10 КБ (для целей тестирования). Для этого я попробовал следующий пример.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xml>
<Configuration status="warn">
<Appenders>
<RollingFile name="fileLogger" fileName="E:\\Aditya\LOGS\AppLog.log" filePattern="E:\\Aditya\LOGS\AppLog-%d{yyyy-MM-dd-HH-mm-ss}-%i.log">
<PatternLayout>
<pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
<SizeBasedTriggeringPolicy size="10KB" />
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="debug">
<appender-ref ref="fileLogger" />
</Root>
</Loggers>
</Configuration>
Проблема с вышеуказанным конфигом заключается в том, что он катит файл каждую секунду. Чтобы решить эту проблему, я изменил
<RollingFile name="fileLogger" fileName="E:\\Aditya\LOGS\AppLog.log" filePattern="E:\\Aditya\LOGS\AppLog-%%d{yyyy-MM-dd-HH-mm-ss}-%%i.log">
TO
<RollingFile name="fileLogger" fileName="E:\\Aditya\LOGS\AppLog.log" filePattern="E:\\Aditya\LOGS\AppLog-%%d{yyyy-MM-dd}-%%i.log">
Теперь другая проблема заключается в том, что мои общие файлы журналов ограничиваются только 7 файлами в день. Я не знаю, почему это происходит, поскольку я не предоставил такую конфигурацию. Может кто-нибудь помочь мне решить эту проблему? Заранее спасибо.