log4j2中"Configuration status"和"Root level"有什么区别

What is the difference between "Configuration status" and "Root level" in log4j2

这里是一个简单的配置。

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
  <Appenders>
    <RollingFile name="RollingFile" fileName="logs/app.log"
                 filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
      <PatternLayout>
        <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
      </PatternLayout>
      <Policies>
        <SizeBasedTriggeringPolicy size="250 MB"/>
      </Policies>
    </RollingFile>
  </Appenders>
  <Loggers>
    <Root level="error">
      <AppenderRef ref="RollingFile"/>
    </Root>
  </Loggers>
</Configuration>

其实Configuration status="warn"<Root level="error">的目的是什么。这些级别如何影响日志文件?

<Configuration status="warn"> 仅适用于 Log4j 内部事件。

<Root level="error"> 是根记录器的配置,它将对所有日志应用 error 日志级别,除了在单独的记录器中配置的日志(上面的配置中没有) .