簡體   English   中英

如何在運行時使用新的 xml 文件重新配置 log4j2

[英]How to reconfigure log4j2 at runtime with new xml file

我在 Web 應用程序(servlet 3.0 API)中使用 log4j2

使用 WEB-INF 目錄中的log4j2.xml文件啟動應用程序時,Log4j2 會自動配置自身。

當上下文啟動時,我執行一些產生一些日志的邏輯,並且所有產生的日志都按照log4j2.xml文件中定義的規則工作。

At the end of my initialization logic I call a service that gives to me one or more log4j2 xml configuration files (for example, config1.xml , config2.xml and config3.xml ).

現在我想使用我的初始log4j2.xml文件以及所有新配置文件來“重新配置”log4j。

我找不到辦法做到這一點; 我只能找到一種以編程方式添加新 Appender、新 Logger 等的方法;

我想告訴 log4j2 “嘿,這里有一些新的配置文件;請解析它們並相應地更新您的配置”

有辦法做到這一點嗎?

謝謝

感謝 Vionixt 對我的問題的評論,我解決了這個問題。

我使用的代碼是:

System.setProperty("log4j.configurationFile", "<configFile1>,<configFile2>,<configFile3>");
LoggerContext.getContext(false).reconfigure();

LoggerContext 在哪里

org.apache.logging.log4j.core.LoggingContext

重新配置后,所有新的日志記錄規則都可用並使用了!

非常感謝你,干杯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM