2017-10-10 103 views
1

我正在尝试为spring启动(1.4.2)应用程序设置log4j2日志记录。 我想创建环境特定的log4j2文件。 我的设置是这样 在application.yml文件使用弹簧启动设置特定于环境的log4j2 1.4.2

logging: 
    config: classpath:log4j2_qa.xml 

我已经log4j2_qa.xml创建。 application.yml和loq4j2_qa.xml文件都在src/main/resources下。当我运行应用程序时出现以下错误

错误StatusLogger未找到log4j2配置文件。使用默认配置:仅将错误记录到控制台。

当我将log4j2_qa.xml重命名为log4j2.xml时,它不会给出错误。

回答

0

log4j2_qa.xml不是有效的log4j-2配置文件名,表示。
但是log4j2.xml是。

这是有效的log4j-2配置文件名的一个片段。
注意,为了事项:

  1. 的Log4j将检查“log4j.configurationFile”系统属性,如果设置,将尝试使用该文件扩展名匹配的 ConfigurationFactory加载配置。

  2. 如果没有设置系统属性,ConfigurationFactory属性将在类路径中查找log4j2-test.properties。

................

  • 如果JSON文件不能位于XML ConfigurationFactory将尝试 在类路径上找到log4j2.xml

  • 如果找不到配置文件,将使用DefaultConfiguration。这将导致日志记录输出到控制台。

  • 你说:

    我想创造环境的具体log4j2文件

    Spring Boot profiles旨在实现这一目标。 这甚至是他们的主要角色。
    A qa配置文件有意义。

    +0

    我在我的应用程序中有配置文件。您能否给我一个如何在配置文件中配置日志记录级别的示例。 Application.properties文件具有配置文件设置。 – Newbie