簡體   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