首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用log4j servlet初始化?

如何禁用log4j servlet初始化?
EN

Stack Overflow用户
提问于 2015-10-07 19:52:30
回答 1查看 472关注 0票数 0

场景如下:我有一个现有的web应用程序,它通过servlet初始化log4j:

代码语言:javascript
复制
<servlet>
    <servlet-name>log4j-init</servlet-name>
    <servlet-class>com.app.Log4jInitServlet</servlet-class>
    <init-param>
        <param-name>log4j-init-file</param-name>
        <param-value>WEB-INF/classes/log4j.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

不,我想通过在-Dlog4j.configuration=file:/usr/local/log4j.xml JVM中传递的外部文件来覆盖这个初始化: log4j.configuration

当我启动应用程序服务器时,我可以看到外部文件首先被拾取,但随后通过初始化servlet的内部文件将覆盖这些更改。

我的问题是,如何通过某种JVM配置(更好)禁用servlet初始化,而不必修改应用程序web.xml和/或初始化servlet?或者是否有一种方法来指定初始化的顺序?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-07 20:12:17

log4j不是核心log4j的一部分。我将假设您正在使用教程中建议的init,在这种情况下,https://logging.apache.org/log4j/1.2/manual.html将使用servlet文件参数中指定的任何文件用于init。

我认为,如果不修改web.xml或init,就无法完成这一任务。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33001243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档