Как определить несколько скользящих политик для одного файла журнала при выходе из системы? - PullRequest
0 голосов
/ 10 февраля 2020

Я сталкиваюсь с той же проблемой, что и упомянутая в Есть ли способ определить несколько скользящих политик для одного файла журнала при обратной записи? Может кто-нибудь знать, как написать несколько скользящих политик, которые создают журнал как тест. log, test.1.log, test.2.log.gz, test.3.log.gz и т. д. ... Здесь сначала создается нормальный файл журнала, а затем - архив того же самого.
Позже этот весь журнал будет прочитан filebeat.

Также пробовал с двумя приложениями, такими как

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>test.log</file>
            enter code here
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
              <fileNamePattern>archives/tests.%i.log</fileNamePattern>
              <minIndex>1</minIndex>
              <maxIndex>1</maxIndex>
            </rollingPolicy>

            <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
              <maxFileSize>5MB</maxFileSize>
            </triggeringPolicy>
            <encoder>
              <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
            </encoder>
          </appender>

        <appender name="FILETEST" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>test.log</file>

            <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
              <fileNamePattern>archives/tests.%i.log.gz</fileNamePattern>
              <minIndex>2</minIndex>
              <maxIndex>7</maxIndex>
            </rollingPolicy>

            <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
              <maxFileSize>5MB</maxFileSize>
            </triggeringPolicy>
            <encoder>
              <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
            </encoder>
          </appender>

         <logger name="test-logger" level="DEBUG" additivity="false">
                <appender-ref ref="FILE"/>
               <appender-ref ref="FILETEST"/>
        </logger>

Это приводит к генерации test.log, test.1.log, test.2.log.gz, который я хочу, но здесь он вызывает при этом на начальном уровне записывается как в файл test.log, так и в test.1.log, это снова приводит к потере данных в ротации.

...