log4j.properties文件中log4j.rootLogger属性的重要性?如果我不使用这个属性会发生什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (21)

log4j.properties文件中log4j.rootLogger属性的意义何在?如果我不使用这个属性会发生什么?

示例

# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1

# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender

如果将此属性设置为ERROR模式,会发生什么情况。

提问于
用户回答回答于

log4j.rootLogger 属性为Root Logger设置Level(DEBUG)和Appender(A1 here)。这不是强制性的。根记录器没有附加的默认appender,它可以在没有appender的情况下存在。所以,你的log4j属性文件可以不设置这个属性。

根记录器是log4j层次结构中类似于Java中的Object类的最高记录器。

用户回答回答于

如果有以下配置:

log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
log4j.logger.com.me.proj2=INFO

这就是记录器层次结构的最终结果:

扫码关注云+社区