Logback TimeBasedRollingPolicy с весенней загрузкой - PullRequest
0 голосов
/ 05 марта 2019

Я написал TimeBasedRollingPolicy logback.xml , и хотя файл журнала создается успешно, он, похоже, читает его из application.properties .Вот мои настройки:

logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
    <include resource="org/springframework/boot/logging/logback/console-appender.xml"/>

    <appender name="ROLLING-FILE"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>${FILE_LOG_PATTERN}</pattern>
        </encoder>
        <file>${LOG_FILE}</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${LOG_FILE}-%d{yyyy-MM-dd}.log</fileNamePattern>
        </rollingPolicy>
    </appender>

    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="ROLLING-FILE"/>
    </root>

</configuration>

application.properties

logging.path=/path/to/log/folder/
logging.file=${logging.path}myLog
logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

Когда я запускаюВ моем приложении журнал успешно сохранен по правильному пути, но только как myLog .Я хотел бы, чтобы он был добавлен с датой (как в logback.xml).Примечание. Я хочу продолжать получать logging.path и logging.file из application.properties , потому что у меня их несколько в зависимости от среды.

Спасибо

1 Ответ

1 голос
/ 05 марта 2019

1) Вам нужно установить свойство logging.file или logging.path, а не оба.
Так что logging.file=/path/to/log/folder/myLog должно быть достаточно для получения файла журнала myLog по указанному пути.

В документации по загрузочной пружине упоминается об этом.

2) Это шаблон формата для журнала Rolling , а не для current log:

 <fileNamePattern>${LOG_FILE}-%d{yyyy-MM-dd}.log</fileNamePattern>  

Вы получаете этот формат автоматически для текущего файла журнала, когда он свернут / заархивирован, поскольку достигнут предел времени, определенный шаблоном. В вашем случае это означает каждый день.

...