使用LogBack覆盖wildfly-logger

时间:2017-03-31 09:15:33

标签: wildfly logback slf4j

我正在尝试禁用wildfly记录器并使用SLF4J + LogBack实现,但我无法得到它。

当我创建SLF4J记录器时,wildfly会给我这个对象:org.jboss.logmanager.LogContex。

我想获得一个LogBack记录器实例,而不是wildfly为我提供的默认实例。

我已经尝试禁用wildfly日志记录子系统(jboss-deployment-structure.xml),但似乎没有任何改变:

<jboss-deployment-structure>  
    <deployment>  
        <exclusions>      
            <module name="org.apache.commons.logging" />      
            <module name="org.apache.log4j" />      
            <module name="org.jboss.logging" />      
            <module name="org.jboss.logging.jul-to-slf4j-stub"
            <module name="org.jboss.logmanager" />      
            <module name="org.jboss.logmanager.log4j" />      
            <module name="org.slf4j" />      
            <module name="org.slf4j.impl" />    
        </exclusions>
    </deployment>
</jboss-deployment-structure>

我也试过这个:

<?xml version="1.0"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <deployment>
        <exclude-subsystems>
            <subsystem name="logging" />
        </exclude-subsystems>
    </deployment>
    <sub-deployment name="projectname-web.war">
        <exclude-subsystems>
            <subsystem name="logging" />
        </exclude-subsystems>
    </sub-deployment>
    <sub-deployment name="projectname-ejb.jar">
        <exclude-subsystems>
            <subsystem name="logging" />
        </exclude-subsystems>
    </sub-deployment>
</jboss-deployment-structure>

还有:

<subsystem xmlns="urn:jboss:domain:logging:2.0">                           
    <add-logging-api-dependencies value="false"/>       
</subsystem>

以下两张图片包含了这些记录器之间的差异:

enter image description here

如您所见,记录器实例是一个jboss记录器而不是LogBack。

下图显示了wildfly环境之外的正确记录器:

enter image description here

似乎没什么用。 我怎么能改变这种行为?

感谢。

0 个答案:

没有答案