Java Logback日志记录maven多模块

Java Logback日志记录maven多模块,java,spring-boot,maven,logback,wildfly-13,Java,Spring Boot,Maven,Logback,Wildfly 13,我正在开发一个由多个模块组成的应用程序,这些模块将部署在wildfly 13上。其中一个模块使用我项目的另一个模块作为jar maven依赖项 期望值 我希望我的依赖项使用自己的logback.xml登录到自己的文件中。我希望应用程序使用自己的logback.xml文件登录控制台,并使用独立于依赖项的文件 它现在做什么 目前,两个应用程序模块(com.test.app.console.ca.operation) 其中包括jar依赖项和依赖项,使用依赖项的logback.xml,所有内容都记录在同

我正在开发一个由多个模块组成的应用程序,这些模块将部署在wildfly 13上。其中一个模块使用我项目的另一个模块作为jar maven依赖项

期望值

我希望我的依赖项使用自己的logback.xml登录到自己的文件中。我希望应用程序使用自己的logback.xml文件登录控制台,并使用独立于依赖项的文件

它现在做什么

目前,两个应用程序模块(com.test.app.console.ca.operation

其中包括jar依赖项和依赖项,使用依赖项的logback.xml,所有内容都记录在同一个文件中。这对我来说非常奇怪,因为主应用程序中的其他模块(不依赖于库jar)正确地登录到了正确的文件中

能帮我理解并解决这个问题吗

项目详情

两者都使用logback作为记录器。依赖关系是一种安全实现,它将通信信息记录在一个文件中,该文件必须位于应用程序日志以外的单独文件中。应用程序和依赖项都有一个经典的maven结构,资源文件夹中有logback.xml文件

主要模块logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <property resource="application.properties" />
    <appender name="STDOUT"
        class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder 
            by default -->
        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>
    <!--Application Log (Daily rolling file appender) -->
    <appender name="appCaLog"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>${jboss.server.log.dir}/main_modules_app.log</File>
        <rollingPolicy
            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${jboss.server.log.dir}/main_modules_app.log.%d{yyyy-MM-dd}.log
            </FileNamePattern>
        </rollingPolicy>

        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>

    <logger name="com.test.app.console.ca.usermanagement"
        level="${cops.usermanagement.log.level}" additivity="false">
        <appender-ref ref="appCaLog" />
    </logger>

    <logger name="com.test.app.console.ca.operation"
        level="${cops.operation.log.level}" additivity="false">
        <appender-ref ref="appCaLog" />
    </logger>

    <logger name="com.test.app.console.ca"
        level="${cops.main.log.level}" additivity="false">
        <appender-ref ref="appCaLog" />
    </logger>

    <root level="INFO">
        <appender-ref ref="appCaLog" />
    </root>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <appender name="STDOUT"
        class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder 
            by default -->
        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>
    <!--Application Log (Daily rolling file appender) -->
    <appender name="dependencyCaCryptoLog"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>${jboss.server.log.dir}/dependency_module.log</File>
        <rollingPolicy
            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${jboss.server.log.dir}/dependency_module.log.%d{yyyy-MM-dd}.log
            </FileNamePattern>
        </rollingPolicy>

        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>

    <logger name="com.test.app.console.ca.crypto"
        level="INFO" additivity="false">
        <appender-ref ref="dependencyCaCryptoLog" />
    </logger>

    <root level="INFO">
        <appender-ref ref="dependencyCaCryptoLog" />
    </root>
</configuration>

%d{ISO8601}[%thread]-5级别%logger-%msg%n
${jboss.server.log.dir}/main\u modules\u app.log
${jboss.server.log.dir}/main_modules_app.log.%d{yyyy-MM-dd}.log
%d{ISO8601}[%thread]-5级别%logger-%msg%n
依赖项logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <property resource="application.properties" />
    <appender name="STDOUT"
        class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder 
            by default -->
        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>
    <!--Application Log (Daily rolling file appender) -->
    <appender name="appCaLog"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>${jboss.server.log.dir}/main_modules_app.log</File>
        <rollingPolicy
            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${jboss.server.log.dir}/main_modules_app.log.%d{yyyy-MM-dd}.log
            </FileNamePattern>
        </rollingPolicy>

        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>

    <logger name="com.test.app.console.ca.usermanagement"
        level="${cops.usermanagement.log.level}" additivity="false">
        <appender-ref ref="appCaLog" />
    </logger>

    <logger name="com.test.app.console.ca.operation"
        level="${cops.operation.log.level}" additivity="false">
        <appender-ref ref="appCaLog" />
    </logger>

    <logger name="com.test.app.console.ca"
        level="${cops.main.log.level}" additivity="false">
        <appender-ref ref="appCaLog" />
    </logger>

    <root level="INFO">
        <appender-ref ref="appCaLog" />
    </root>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <appender name="STDOUT"
        class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder 
            by default -->
        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>
    <!--Application Log (Daily rolling file appender) -->
    <appender name="dependencyCaCryptoLog"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>${jboss.server.log.dir}/dependency_module.log</File>
        <rollingPolicy
            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${jboss.server.log.dir}/dependency_module.log.%d{yyyy-MM-dd}.log
            </FileNamePattern>
        </rollingPolicy>

        <encoder>
            <pattern>%d{ISO8601} [%thread] %-5level %logger - %msg %n</pattern>
        </encoder>
    </appender>

    <logger name="com.test.app.console.ca.crypto"
        level="INFO" additivity="false">
        <appender-ref ref="dependencyCaCryptoLog" />
    </logger>

    <root level="INFO">
        <appender-ref ref="dependencyCaCryptoLog" />
    </root>
</configuration>

%d{ISO8601}[%thread]-5级别%logger-%msg%n
${jboss.server.log.dir}/dependency\u module.log
${jboss.server.log.dir}/dependency_module.log.%d{yyyy-MM-dd}.log
%d{ISO8601}[%thread]-5级别%logger-%msg%n