繁体   English   中英

Log4j2 定义2个不同级别的根记录器

[英]Log4j2 Define 2 root loggers with different levels

我正在使用 2 个附加程序 - 控制台和名为 MyAppender 的自定义附加程序,它们应该忽略所有级别低于 ERROR 的消息(意思是 - 它应该只支持 ERROR 和 FATAL)。 控制台应该能够支持所有级别。 我尝试了几种方法来定义它,但过滤器似乎不适用于根级别的附加程序。 如何做到这一点? 我当前的 log4j2 定义:

    <?xml version="1.0" encoding="UTF-8"?>
<Configuration packages="com.mysample.logging.appenders" status="DEBUG">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <ThresholdFilter level="DEBUG" onMatch="ACCEPT" onMismatch="DENY"/>
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
        <MyAppender name="MyAppender">
            <ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>
        </MyAppender>
    </Appenders>
    <Loggers>
        <Root level="ALL">
            <AppenderRef ref="Console"/>
            <AppenderRef ref="MyAppender" />
        </Root>
    </Loggers>
</Configuration>

记录器是从根记录器开始的一个层次结构。 Log4j 的一个工作设置中没有两个根记录器。

您想要实现的是在附加程序上有不同的阈值。 检查 Piotr 建议的链接:

使用 log4j2,是否可以为附加程序分配特定级别?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM