use-parent-handlers =“false”不起作用

时间:2018-03-24 09:30:06

标签: jboss-eap-7

我希望我做错了,可以说出它是什么。 我正在使用JBoss EAP 7.0.4。

我遇到了日志记录问题,虽然我定义了use-parent-handers="false",但每个日志也会打印在根记录器(=控制台)中。

这是我的standalone.xml:

<profile>  
        <subsystem xmlns="urn:jboss:domain:logging:3.0">  
            <console-handler name="CONSOLE">  
                <level name="TRACE"/>  
                <formatter>  
                    <named-formatter name="COLOR-PATTERN"/>  
                </formatter>  
            </console-handler>  
            <periodic-rotating-file-handler name="FILE" autoflush="true">  
                <formatter>  
                    <named-formatter name="PATTERN"/>  
                </formatter>  
                <file relative-to="jboss.server.log.dir" path="server.log"/>  
                <suffix value=".yyyy-MM-dd"/>  
                <append value="true"/>  
            </periodic-rotating-file-handler>  
            <periodic-rotating-file-handler name="TEST" autoflush="true">  
                <formatter>  
                    <named-formatter name="PATTERN"/>  
                </formatter>  
                <file relative-to="jboss.server.log.dir" path="test.log"/>  
                <suffix value=".yyyy-MM-dd"/>  
                <append value="true"/>  
            </periodic-rotating-file-handler>  
            <logger category="org.jboss.modules" use-parent-handlers="false">  
                <level name="TRACE"/>  
                <handlers>  
                    <handler name="TEST"/>  
                </handlers>  
            </logger>  
            <root-logger>  
                <level name="INFO"/>  
                <handlers>  
                    <handler name="CONSOLE"/>  
                    <handler name="FILE"/>  
                </handlers>  
            </root-logger>  
            <formatter name="PATTERN">  
                <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>  
            </formatter>  
            <formatter name="COLOR-PATTERN">  
                <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>  
            </formatter>  
        </subsystem>

添加此记录器后:

<logger category="org.jboss.modules" use-parent-handlers="false">  
                <level name="TRACE"/>  
                <handlers>  
                    <handler name="TEST"/>  
                </handlers>  
            </logger> 

每条痕迹也会打印到控制台。

再次删除此记录器后,控制台将按预期打印。

据我所知,如果我没有定义use-parent-handlers =“false”,这将是正常的行为,但我做了,我不明白为什么它不起作用。

如果您需要更多信息,请随时提出。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您应该能够执行以下CLI命令,并且看到控制台上没有显示跟踪日志记录。

/subsystem=logging/periodic-rotating-file-handler=TEST:add(named-formatter=PATTERN, suffix=".yyyy-MM-dd", append=true, autoflush=true, file={relative-to=jboss.server.log.dir, path=test.log})  
/subsystem=logging/logger=org.jboss.modules:add(use-parent-handlers=false, handlers=[TEST], level=TRACE)  
:reload

:reload并非必需,但会重新加载服务器,以便显示您想要查看的日志。