Как динамически изменить переменную logback (имя файла)? - PullRequest
0 голосов
/ 04 декабря 2018

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

На данный момент это мой вход в систему ($ {TECH} - это то, что я хочу изменить):

<configuration debug="false" scan="true" scanPeriod="30 seconds">
    <springProperty scope="context" name="directory.log.tech" source="bpa.batch.directory.log.technique"/>
    <appender name="TECHNIQUE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>DEBUG</level>
            <onMatch>DENY</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${directory.log.tech}\%d{yyyyMMdd}.${TECH}.log</fileNamePattern>
        </rollingPolicy>
        <encoder>
            <pattern>%msg%n</pattern>
        </encoder>
    </appender>

    <logger name="fr.hm.bpa.log.LogTechnique" level="TRACE">
        <appender-ref ref="TECHNIQUE" />
    </logger>
</configuration>

Может кто-нибудь объяснить, как изменить его во время работы моего кода?Заранее спасибо.

...