Я пытаюсь настроить скользящий список журналов, который будет опрокидываться каждый день, а также опрокидывание, когда файл журнала достигает определенного порогового размера. У меня есть основная работающая настройка, но если я перезапущу приложение, поведение опрокидывания полностью сломается.файл скользящего журнала не очищается
Моей текущий Appender конфигурация, основанная на http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedFNATP
<appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${my.log.dir}/mylog.txt</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>${my.log.dir}/mylog-%d{yyyy-MM-dd}.%i.txt</fileNamePattern>
<cleanHistoryOnStart>true</cleanHistoryOnStart>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 10KB -->
<maxFileSize>10KB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<pattern>%-5level %d{HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n</pattern>
</encoder>
</appender>
Я добавил «LogSpammer» сценарий для быстрого получения данных журнала, и первый раз, когда я запустить приложение, кажется, все в порядке. mylog.txt
достигает ~ 10 КБ и сбрасывается в один из файлов с датой.
Но если перезапустить приложение, дела идут наперекосяк. Основной файл журнала никогда не очищается, но он копируется снова и снова, причем размер копии увеличивается каждый раз. Больше ничего не очищается.
Я позволил этому работать, пока каждый «опрокидывание» не было более 500 КБ, а над моей maxFileSize
из 10KB.
Это просто ошибка? Если нет, я что-то не так с конфигурацией делаю? Как я могу это исправить?