我正在使用嵌入式Jetty 9,路径中包含slf4j.jar。默认情况下, jetty 记录大量信息。
我想禁用日志记录,或者至少将日志级别更改为INFO。如何在程序中执行此操作(即,不放入xml配置文件)?
最佳答案
由于slf4j只是一个日志外观/路由API,因此无法直接使用slf4j来设置Logger级别。
您将需要依赖基础的日志记录实现来在 namespace “org.eclipse.jetty”上设置日志记录级别。
如:
org.apache.log4j.LogManager.getLogger("org.eclipse.jetty").setLevel(Level.WARN);
java.util.logging.LoggerFactory.getLogger("org.eclipse.jetty").setLevel(Level.WARNING);
final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger("org.eclipse.jetty");
if (!(logger instanceof ch.qos.logback.classic.Logger)) {
return;
}
ch.qos.logback.classic.Logger logbackLogger = (ch.qos.logback.classic.Logger) logger;
logbackLogger.setLevel(ch.qos.logback.classic.Level.WARN);
关于logging - 如何以编程方式禁用Jetty 9日志记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13897597/