Logback TimeBasedRollingPolicy ведет логи по конкретному числу дней и устанавливает максимальный размер файла - PullRequest
0 голосов
/ 09 ноября 2018

В настоящее время моя конфигурация входа в систему ежедневно создает новый файл журнала. Я хотел бы изменить конфигурацию, чтобы сохранить данные в течение 14 дней, но установить максимальный размер файла 50 МБ.

Я использую <maxFileSize>50MB</maxFileSize>, чтобы установить максимальный размер файла журнала в 50 МБ.
Что касается ведения логов в течение 14 дней (2 недели), я не знаю, как их изменить.

Это то, что я имею до сих пор:

  <appender name="FILE-AUDIT"
            class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>${LOG_PATH}/myapp_debug.log</file>
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <Pattern>
        %d{yyyy-MM-dd HH:mm:ss} - %msg%n
      </Pattern>
    </encoder>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <!-- rollover daily -->
      <fileNamePattern>${LOG_PATH}/archived/myapp_debug.%d{yyyy-MM-dd}.%i.log
      </fileNamePattern>
      <timeBasedFileNamingAndTriggeringPolicy
              class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
        <maxFileSize>50MB</maxFileSize>
      </timeBasedFileNamingAndTriggeringPolicy>
    </rollingPolicy>
  </appender>

Я вижу некоторые источники в Интернете, которые обновляются еженедельно, и они просто используют что-то вроде:

<fileNamePattern>${LOG_PATH}/archived/myapp_debug.%d{yyyy-ww}.%i.log

но что касается моего требования, мне просто нужно вести журнал, а не ролловер.
Кроме того, образец выше работает еженедельно ... 2 недели.

Спасибо!

...