【发布时间】:2017-12-11 07:33:41
【问题描述】:
升级到 Log4j2 后,错误日志在单元测试执行期间打印到控制台。
我尝试在配置文件中添加status=FATAL 以避免在控制台上打印错误。
# ----------------------------------------------------------------
# LOGGING
# ----------------------------------------------------------------
# Note - this section is similar to the log4j2 properties syntax
# https://logging.apache.org/log4j/2.x/manual/configuration.html#Properties
status=FATAL;
test.*.log4j2.rootLogger.level=INFO;
*.*.log4j2.rootLogger.level=INFO;
*.*.log4j2.rootLogger.appenderRefs=(APPLICATION);
*.*.log4j2.appenders=(APPLICATION);
*.*.log4j2.appender.APPLICATION.type=AmazonRollingRandomAccessFile;
*.*.log4j2.appender.APPLICATION.name=APPLICATION;
*.*.log4j2.appender.APPLICATION.filePattern="var/output/logs/$APP.%d{yyyy-MM-dd-HH}";
*.*.log4j2.appender.APPLICATION.layout.type=PatternLayout;
# Standard log format but with the purchase id appended after the message.
# This location is to not break rtla processing, which parses everything up-to & including the logger (%c)
*.*.log4j2.appender.APPLICATION.layout.pattern="%d{DATE} [%p] %X{RequestId} (%t) %c: %m [Purchase: %X{PurchaseId}]%n";
但似乎没有考虑到status,它仍在控制台上打印日志。
我也尝试了以下所有选项,但没有运气:
status=FATAL; ..log4j2.status=INFO; ..log4j2.status=ERROR;
【问题讨论】:
标签: java unit-testing logging log4j2 error-logging