【问题标题】:What does “status” mean in Log4j2 configuration?Log4j2 配置中的“状态”是什么意思?
【发布时间】:2014-01-30 16:44:23
【问题描述】:

我刚刚完成了log4j2.xml配置文件的调整,发现了一些我不太明白的地方。那么<Configuration status="SOME_STATUS_HERE">是什么?

几乎在所有示例中: http://logging.apache.org/log4j/2.x/manual/configuration.html 来自 Apache 的人员将状态添加到配置中。

例如这里是第一个:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN"> <!--status="WARN" - what is this???--> 
 
 <Appenders>
  <Console name="Console" target="SYSTEM_OUT">
   <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
  </Console>
 </Appenders>

 <Loggers>
  <Root level="error">
   <AppenderRef ref="Console"/>
  </Root>
 </Loggers>

</Configuration>

【问题讨论】:

    标签: java logging configuration log4j log4j2


    【解决方案1】:

    状态记录器由 log4j2 组件在内部使用。在配置中设置status="debug"(或“trace”)将导致此内部日志记录输出到命令行。

    它将打印有关加载了哪些 log4j2 插件组件的调试信息(所有配置元素都映射到 log4j2 插件),以及更多详细信息,例如找到了哪些附加程序和记录器、它们具有哪些参数以及它们是如何组合的。

    这对于解决配置问题很有用。

    从 Log4j 2.9 开始,您甚至可以在加载配置文件之前使用系统属性 log4j2.debug(不需要值)打开内部 Log4j2 状态日志记录。在 2.9 版之前,同样可以通过系统属性-Dorg.apache.logging.log4j.simplelog.StatusLogger.level=TRACE 来实现。

    【讨论】:

    • 如果有人想知道 Log4j2 文档中哪里提到了 Log4j2 XML &lt;Configuration&gt; 元素属性:logging.apache.org/log4j/2.x/manual/… 另请参阅此处的属性列表快照:i.stack.imgur.com/zPx1q.png
    • 如果有人正在寻找状态属性的正确级别,他们是:tracedebuginfowarnerrorfatalLog4j2 Configuration
    • @skrtxao 这有帮助.. 只是文档已更新,快照中的此特定表已移至“配置语法”标题下..
    猜你喜欢
    • 1970-01-01
    • 2011-06-18
    • 2017-06-21
    • 2021-03-29
    • 2018-07-05
    • 2021-07-03
    • 2011-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多