【问题标题】:Logback: Load groovy configLogback:加载 groovy 配置
【发布时间】:2017-06-30 16:27:27
【问题描述】:

如何以编程方式加载自定义命名 groovy 配置 (logback-config.groovy) 配置?
当我尝试时:

LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
loggerContext.reset();
JoranConfigurator configurator = new JoranConfigurator();
configurator.setContext(loggerContext);
configurator.doConfigure(this.getClass().getResource("/logback-config.groovy"));

得到expt:

ch.qos.logback.core.joran.spi.JoranException:解析 XML 时出现问题 文档。查看以前报告的错误。

怎么了?

【问题讨论】:

    标签: java logback logback-groovy


    【解决方案1】:

    这里的问题是JoranConfigurator 仅适用于 XML 配置;对于 Groovy 配置文件,logback 使用不同的类 GafferConfigurator。 (不幸的是,logback 文档并没有很好地宣传这一事实。)但与其直接引用GafferConfigurator,不如使用ContextInitializer 类来代替:

    LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
    loggerContext.reset();
    new ContextInitializer(loggerContext).configureByResource(this.getClass().getResource("/logback-config.groovy"));
    

    这允许您同时处理 XML 和 Groovy 文件类型,并利用一些 logback 的内置错误检查。

    【讨论】:

      猜你喜欢
      • 2015-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      相关资源
      最近更新 更多