【问题标题】:how to set the log level at runtime in slf4j easily?如何在 slf4j 中轻松设置运行时的日志级别?
【发布时间】:2015-05-02 11:46:40
【问题描述】:

【问题讨论】:

  • 您要更改当前运行应用程序的级别,还是要在下一次应用程序启动时也保留更改?它是桌面应用程序还是在应用程序服务器中运行?
  • “容易”是主观的——你引用的所有答案在哪些方面不“容易”?
  • 只是想在运行时以编程方式更改它。其他问题的答案都没有让我轻松完成。

标签: java logging slf4j


【解决方案1】:

你不能配置 SLF4J,你需要配置 SLF4J 配置的具体日志框架。

【讨论】:

    【解决方案2】:

    我是这样做的,但还有其他方法:

     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);
        }
    

    我提供了预定义的日志模板,这允许您在运行时加载它们。

    【讨论】:

    • 我正在使用简单的 jar。所以看起来我不得不用具体的东西来愚弄。
    猜你喜欢
    • 2011-02-06
    • 1970-01-01
    • 1970-01-01
    • 2020-09-23
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多