java - 不使用 appender 的 Log4J 记录器

标签 java logging log4j

如果我有一个用于初始化记录器的 log4j.xml 文件,其中定义了一个没有任何 appender-ref 标记的记录器 (foo)在其中,这个记录器做了什么?如果它什么都不做,对性能有影响吗?

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
  <appender name="console" class="org.apache.log4j.ConsoleAppender"> 
    <param name="Target" value="System.out"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%-5p %c{1} - %m%n"/> 
    </layout> 
  </appender> 

  <logger name="foo">
    <level value="WARN"/>
  </logger>

  <root> 
    <priority value ="debug" /> 
    <appender-ref ref="console" /> 
  </root>

</log4j:configuration>

最佳答案

来自手册:“给定记录器的每个启用的记录请求都将转发到该记录器中的所有附加程序以及层次结构中更高的附加程序”所以我猜他们将从根继承。

关于java - 不使用 appender 的 Log4J 记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48420102/

相关文章:

java - 为什么 int 不能与 null 进行比较,而 Integer 可以与 null 进行比较

Java:来自字节码的新实例

javascript - 单击使用 JavaScript 记录

python - 日志记录模块不在 IPython 中打印

java - log4j 附加程序优先级冲突?

java - 从intellij插件开发中运行gradle任务

java - 重新设计 Java 单选按钮

debugging - IBM Worklight - 调试 Worklight 验证器和/或登录模块

java - Log4j:如何为 Logger 使用自定义名称?

java - 如何为 Web 应用程序配置 log4j.xml?