SpringBoot - 无法打开日志记录环境值,将被忽略



我正在为我的 SpringBoot 应用程序设置日志记录系统。但我经常遇到Logging environment value 'resources/logback.xml' cannot be opened and will be ignored警告。

我的application.properties文件包含logging.config=resources/logback.xml,我已经将logback.xml文件放在resources目录下。我的 SpringBoot 版本是:1.1.4.RELEASE

我尝试过的:

  1. 我已经测试了绝对路径,问题仍然存在,所以我认为不是文件路径导致了问题。

  2. 我已经更改了文件的权限,它是 777,对所有人开放。因此,权限不应该是问题。

然后我检查了有警告的 Java 文件:LoggingApplicationListener.java

代码如下:

// User specified configuration
if (environment.containsProperty("logging.config")) {
    String value = environment.getProperty("logging.config");
    try {
        ResourceUtils.getURL(value).openStream().close();
        system.initialize(value);
        }
    catch (Exception ex) {
        // Swallow exception and continue
    }
    this.logger.warn("Logging environment value '" + value + "' cannot be opened and will be ignored");
}

从代码来看,这个警告是不可避免的吗?但是,配置已成功初始化,尽管它说它忽略了配置。

所以是的。首先,我不确定您为什么使用1.1.4,但除此之外。这本质上是 1.1.4 中的一个错误。如果你移动到1.1.5,你会看到他们更新了代码。

  try {
       ResourceUtils.getURL(value).openStream().close();
       system.initialize(value);
  } catch (Exception var7) {
      this.logger.warn("Logging environment value '" + value + "' cannot be opened and will be ignored");
  }

另外,我相信正确的值是"类路径:logback.xml"。这是因为尽管您可能在本地环境中运行,您的文件实际上位于某个 src/main/java/resources 中,但在编译应用程序时,资源将移动到类路径(或类所在的位置(。

相关内容

最新更新