Ограничить создание файла по умолчанию в logback.xml - PullRequest
0 голосов
/ 07 марта 2019

Я создал файлы журнала на основе идентификатора сеанса и имени пользователя для каждого имени пользователя.Проблема в том, что когда он впервые создает файл с именем по умолчанию, которое указывается в файле logback.xml.Как я могу ограничить создание файла по умолчанию?

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <property name="USER_HOME" value="C:\\logs\\analyzer" />
    <appender name="FILE-THREAD" class="ch.qos.logback.classic.sift.SiftingAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>INFO</level>
        </filter>

        <!-- This is MDC value -->
        <!-- We will assign a value to 'logFileName' via Java code -->
        <discriminator>
            <key>userRole</key>
            <defaultValue>head0</defaultValue>
        </discriminator>

        <sift>
            <!-- A standard RollingFileAppender, the log file is based on 'logFileName' at runtime -->
            <appender name="FILE-${userRole}" class="ch.qos.logback.core.FileAppender">
                <file>${catalina.base}/webapps/logs/${userRole}.log</file>

                <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
                    <Pattern>
                        <!--                        %d{yyyy-MM-dd HH:mm:ss} %-5p - %m%n -->
                        %d{HH:mm:ss:SSS} | %-5level | %thread | %logger{20} | %msg%n%rEx
                    </Pattern>
                </encoder>

                <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
                    <FileNamePattern>${catalina.base}/webapps/logs/${userRole}.%i.log.zip</FileNamePattern>
                    <MinIndex>1</MinIndex>
                    <MaxIndex>10</MaxIndex>
                </rollingPolicy>

                <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                    <MaxFileSize>10MB</MaxFileSize>
                </triggeringPolicy>
            </appender>

        </sift>
    </appender>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>
                %-5level %logger{36} - %msg%n
            </Pattern>
        </layout>
    </appender>

    <logger name="com.computhink" level="INFO" additivity="true">
        <appender-ref ref="FILE-THREAD" />
        <appender-ref ref="STDOUT" />
    </logger>

    <root level="info">
        <appender-ref ref="FILE-THREAD" />
        <appender-ref ref="STDOUT" />
    </root>

</configuration>
...