Как я могу включить дополнительный файл журнала / свойства в logbakc-spring.xml

Я работаю с Spring, и я настроил свой логгер, используя logback-spring.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"/>

    <!-- defined in application.yml ... -->
    <springProperty scope="context" name="logFilePath" source="erp.log.path"/>
    <springProperty scope="context" name="APPNAME" source="spring.application.name"/>
    <springProperty scope="context" name="PROFILE" source="spring.cloud.config.profile"/>

    <property name="APP_LOG_PATH" value="${logFilePath}/${APPNAME}/${PROFILE}"/>


    <appender name="apiRest" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>${FILE_LOG_PATTERN}</pattern>
        </encoder>
        <file>${APP_LOG_PATH}/rest/rest_api.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${APP_LOG_PATH}/rest/rest_api%i.log</fileNamePattern>
        </rollingPolicy>

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

    <logger name="api.rest" level="debug">
        <appender-ref ref="apiRest"/>
    </logger>

    <!-- others logger, like order, product ... -->

    <root level="info">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="logfile"/>
    </root>

</configuration>

Я хочу разделить другой файл конфигурации logback по разным функциям (например, порядок, продукт) и включить их в logback-spring.xml, затем я получил файл logback-spring.xml, файл log-api-rest.xml и log- файл property.xml.

лог-апи-rest.xml

<?xml version="1.0" encoding="UTF-8"?>
<included>
    <include resource="log-property.xml"/>

    <appender name="apiRest" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>${FILE_LOG_PATTERN}</pattern>
        </encoder>
        <file>${APP_LOG_PATH}/rest/rest_api.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${APP_LOG_PATH}/rest/rest_api%i.log</fileNamePattern>
        </rollingPolicy>

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

    <logger name="api.rest" level="debug">
        <appender-ref ref="apiRest"/>
    </logger>
</included>

срубы property.xml

<?xml version="1.0" encoding="UTF-8"?>
<included>
    <springProperty scope="system" name="logFilePath" source="erp.log.path"/>
    <springProperty scope="system" name="APPNAME" source="spring.application.name"/>
    <springProperty scope="system" name="PROFILE" source="spring.cloud.config.profile"/>

    <property scope="system" name="APP_LOG_PATH" value="${logFilePath}/${APPNAME}/${PROFILE}"/>
</included>

А в logback-spring.xml просто включены log-property.xml и log-api-rest.xml (возможно, существуют другие файлы logger), но это не работает, как я ожидал. Как я могу это исправить.

0 ответов

Другие вопросы по тегам