Log4j2 - 不同级别的单独日志 - 如何只打印 INFO 级别?

Log4j2 - Seperate logs for different levels - How do I print just the INFO levels?

如何只打印 INFO 级别?

我当前的日志正在将所有信息、警告、错误和致命级别打印到控制台 - 我明白为什么会这样。 (因为都在INFO之上)

有没有一种方法可以指定仅将 INFO 级别发送到控制台附加程序,而不是上面的所有内容?

目前有以下log4j2xml:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="App" packages="">
    <Appenders>

    <File name="logFile" fileName="C:\Users\user\workspace\logs\log.out">
        <PatternLayout>
            <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
        </PatternLayout>
    </File>

    <Console name="Console" target="SYSTEM_OUT">
        <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>

</Appenders>
<Loggers>


    <Logger name="com.App" level="info" additivity="false">
        <AppenderRef ref="logFile" level="error"/>
        <AppenderRef ref="Console" level="info"/>

    </Logger>

    <Root level="error">
        <AppenderRef ref="logFile" />
    </Root>


</Loggers>

需要使用阈值过滤器;

<ThresholdFilter level="WARN" onMatch="DENY" onMismatch="ACCEPT" />

这会阻止 WARN 级别及其以上的所有内容。所以现在它只接受信息。