如何在Java中以编程方式更改日志级别?
我有一些性能单元测试,它们创建了不合理的日志,我并不真正关心这些日志,实际上正在影响性能。我能否以某种方式在 Before 方法中仅针对该单元测试提高 logback 中的日志级别(并在 After 中还原它)?还是有更好的方法来解决这个问题?
我有一些性能单元测试,它们创建了不合理的日志,我并不真正关心这些日志,实际上正在影响性能。我能否以某种方式在 Before 方法中仅针对该单元测试提高 logback 中的日志级别(并在 After 中还原它)?还是有更好的方法来解决这个问题?
这对我有用:
public static void setLoggingLevel(Level level) {
ch.qos.logback.classic.Logger root = (ch.qos.logback.classic.Logger) org.slf4j.LoggerFactory.getLogger(ch.qos.logback.classic.Logger.ROOT_LOGGER_NAME);
root.setLevel(level);
}
然后在测试中,如果你想要所有级别,例如:
setLoggingLevel(Level.ALL);