Log4j2:如何在控制台日志中查找是否已找到日志配置文件

时间:2019-12-05 07:27:55

标签: logging configuration log4j log4j2

我想知道log4j2是否已找到我的配置文件或寻找该配置文件时遇到的错误。基本上,我想查看log4j2自己的日志。

我实际上是按照here的描述,试图将(非标准)日志文件的名称和位置放在web.xml中,我想知道为什么它没有被提取

这是我的web.xml

        <context-param>
            <param-name>log4jConfiguration</param-name>
            <param-value>classpath:log4j2-assessment.xml</param-value>
        </context-param>

        <context-param>
            <param-name>isLog4jContextSelectorNamed</param-name>
            <param-value>false</param-value>
        </context-param>

其他信息:之所以需要执行所有这些操作,是因为我想为我的log4j2.xml文件指定一个自定义名称,而我无法使用{ {1}}属性,因为我对logging.file本身有一个自定义名称,并且使用自定义名称,Spring不会及时加载application.properties属性以开始记录)

P.S:如果我不重命名logging.file文件,它将被毫无问题地拾取。

1 个答案:

答案 0 :(得分:2)

  

我想查看log4j2自己的日志。

您可以在运行配置的帮助下将记录器的记录级别设置为TRACE:

org.apache.logging.log4j.simplelog.StatusLogger.level=TRACE

来源:here (scroll to "Status Messages")

Before a configuration is found, status logger level can be controlled with system property

输出显式显示搜索哪些配置文件以及在何处。 请注意,没有输出,如果成功找到一个文件,它将在找到文件后立即停止搜索。

为证明其有效性,只需添加一个虚拟log4j2.properties-之后log4j2应该停止搜索任何配置文件,这意味着最后搜索到的文件名就是找到的文件名。