我有一個小問題,找不到解決方案。我想爲級別信息設置模式佈局,而不是級別警告。如果我有一個登錄級別INFO,那麼一切正常,但是如果日誌級別爲WARN
,它將被寫入控制檯兩次(如級別信息和級別警告)。只需在特定級別的所有日誌寫出我們在該級別和以下級別的日誌。Log4j2不同水平的不同appender
我想登錄級別INFO寫出如控制檯:"%-5level %d{dd-MM-yyyy HH:mm:ss} %msg%n"
和級別WARN
像"%-5level %d{dd-MM-yyyy HH:mm:ss} [%l] %msg%n"
。
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<Console name="ConsoleInfo" target="SYSTEM_OUT">
<ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="%-5level %d{dd-MM-yyyy HH:mm:ss} %msg%n"/>
</Console>
<Console name="ConsoleWarning" target="SYSTEM_OUT">
<ThresholdFilter level="WARN" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="%-5level %d{dd-MM-yyyy HH:mm:ss} [%l] %msg%n"/>
</Console>
<File name="File" fileName="logs/cli.log">
<PatternLayout pattern="%-5level %d{dd-MM-yyyy HH:mm:ss} [%l] %msg%n"/>
</File>
</Appenders>
<Loggers>
<Root level="ALL">
<AppenderRef ref="ConsoleInfo"/>
<AppenderRef ref="ConsoleWarning"/>
<AppenderRef ref="File"/>
</Root>
</Loggers>
</Configuration>