2015-03-02 409 views
0

相关:如何轻松设置slf4j在运行时的日志级别?

How to change slf4j level at runtime?SLF4J debugging level configuration + Logging framework integrationSet Dynamic Console Logging Level Using SLF4JSetting log level of message at runtime in slf4jHow to dynamically change log level in SLF4j OR Log4J

是有可能做到这一点很容易

编辑:貌似你不能那样做。人们必须与底层的实现混为一谈。我正在使用简单的罐子。

感谢

+0

是否要更改当前正在运行的应用程序的级别,或者是否还想为下一次应用程序启动保留更改?它是桌面应用程序,还是运行在应用程序服务器中? – SubOptimal 2015-03-02 07:43:01

+0

“轻松”是主观的 - 所引用的所有答案都不是什么“容易”的方式? – 2015-03-02 07:48:06

+0

只是想在运行时改变它programmaticaly。没有任何其他问题的答案让我轻松地做到这一点,没有很多麻烦。 – 2015-03-02 16:12:51

回答

0

我做这种方式,但也有其他:

String tmpName = "newLogConfig.xml" 
    try (InputStream defaultIs = Log4jReconfigurator.class.getResourceAsStream()) { 
     logger.warn("Using log4j configuration " + tmpName); 
     new DOMConfigurator().doConfigure(is, LogManager.getLoggerRepository()); 
    } catch (IOException e) { 
     logger.error("Failed to reconfigure log configuration", e); 
    } 

我提供预定义的记录模板,这可以让你在运行时加载它们。

+0

我正在使用简单的罐子。所以它看起来像我不得不用混凝土的东西来骗人。 – 2015-03-02 16:14:47

0

您不能配置SLF4J,您需要配置SLF4J配置为使用的具体日志记录框架。

相关问题