使log4j可加性等于true或false的结果是什么?

use*_*510 24 java logging log4j

简单来说,为这样的特定类添加Log4j配置additivity="true"additivity="false"添加Log4j配置的结果是什么?

<Logger name="com.mypage.glass.TryWindow" level="INFO" additivity="true">
  <AppenderRef ref="console"/>
  <AppenderRef ref="file"/>
</Logger>
Run Code Online (Sandbox Code Playgroud)

Dun*_*nes 31

默认情况下,记录器从其祖先继承appender.通过设置additivity="false",可以防止此行为.

在你的榜样,有可能是相关的追加程序com.mypage.glasscom.mypage或者即使你不设置该属性将被继承了根记录false.

  • @ user3433510假设您的根记录器配置了ConsoleAppender,以便将所有INFO消息打印到控制台.如果你有`additivity ="true"`(默认值),你的`com.mypage.glass.TryWindow`记录器也会输出到控制台.如果你想防止这种情况,可以设置`additivity ="false"`.如果这些术语中的任何一个令人困惑,我建议你阅读[log4j的简短介绍](https://logging.apache.org/log4j/1.2/manual.html). (3认同)
  • 添加属性“inheritAppenders”本来就很简单......谢谢! (3认同)
  • 但是实际文件会发生什么......意味着如果我让它为真或假,文件或控制台上输出的日志会发生什么? (2认同)