我可以通过编程方式从log4j2的记录器中删除附加程序吗?
该网站说:“Log4j 2 API不会公开以任何方式添加,修改或删除附加程序,过滤器或操纵配置的方法”:
https://logging.apache.org/log4j/2.x/manual/configuration.html
但是,如果有人可以提出一种间接的方法来实现这一目标,我将非常感激。
谢谢。
最佳答案
有一种方法LoggerConfig#removeAppender(String name)将删除特定的附加程序,而LoggerConfig#clearAppenders()将删除所有附加程序。假设您有一个名为CONSOLE
的附加程序:
final LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
final Configuration config = ctx.getConfiguration();
config.getRootLogger().removeAppender("CONSOLE");
ctx.updateLoggers();
关于logging - 如何以编程方式从Log4j2中的记录器中删除附加程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41629360/