Log4J 在控制台中创建递增的日志数
Log4J is creating incrementing no of logs in console
我使用 Log4J 通过 Baic Configurator 登录我的 Java 项目,它以一种奇怪的方式工作。它在控制台中以递增的次数记录语句。
但是,如果我检查我的日志文件,那么所有内容都会按要求准确记录一次。
如果我们在多个 Logger 配置中使用相同的附加程序,可能会发生重复记录。
示例
log4j.logger.com.demo = WARN, out
log4j.logger.com.demo.moduleone = ERROR, out
为避免它,请将记录器可加性设置为 false。
log4j.additivity.com.demo.moduleone = 假
最后在我的 log4j.properties 中添加以下内容解决了问题:
# Root logger option
log4j.rootLogger=DEBUG, stdout
# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
我使用 Log4J 通过 Baic Configurator 登录我的 Java 项目,它以一种奇怪的方式工作。它在控制台中以递增的次数记录语句。
但是,如果我检查我的日志文件,那么所有内容都会按要求准确记录一次。
如果我们在多个 Logger 配置中使用相同的附加程序,可能会发生重复记录。
示例
log4j.logger.com.demo = WARN, out
log4j.logger.com.demo.moduleone = ERROR, out
为避免它,请将记录器可加性设置为 false。 log4j.additivity.com.demo.moduleone = 假
最后在我的 log4j.properties 中添加以下内容解决了问题:
# Root logger option
log4j.rootLogger=DEBUG, stdout
# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n