我希望能够以编程方式设置所有记录器的日志记录级别。 这有效:
Logger log = Logger.getLogger(Example.class);
LogManager.getLogger(Example.class).setLevel(Level.FATAL);
log.debug("Should not see!");
LogManager.getLogger(Example.class).setLevel(Level.DEBUG);
log.debug("Should see!");
然而,这不是:
Logger log = Logger.getLogger(Example.class);
LogManager.getRootLogger().setLevel(Level.FATAL);
log.debug("Should not see!");
LogManager.getRootLogger().setLevel(Level.DEBUG);
log.debug("Should see!");
答案 0 :(得分:2)
从LogManager.getCurrentLoggers()
获取记录器名称,然后设置LogManager.getLogger("<name from loop>").setLevel(Level.FATAL)
;使用循环。
当您获得LogManager.getRootLogger()
获取根级别记录器时。它不会影响所有个人配置。