我正试图从log4j 1移动。X到2。x,我遇到了一些麻烦。我使用的是slf4j/log4j1.2。X,但我试图摆脱slf4j的东西,只是使用log4j。
我有一个web应用程序,它使用两个共享的jar,它们有自己的log4j配置文件。以前,我可以使用DOMConfigurator加载它们:
DOMConfigurator.configure(Loader.getResource(sContext.getInitParameter(CoreServicesListener.INIT_SYSLOGGING_FILE)));
不确定如何在log4j2中执行此操作。我在网上查了几个资源,似乎没有什么能让我找到正确的道路。我希望有人能帮忙。
最简单的解决方案是将您的自定义ServletContextListener
替换为log4j-web
模块(参考文档)。
log4j-web
模块使用servlet上下文参数"log4jConfiguration",它接受字符串插值。如果由于任何原因不能更改旧的参数名称,则可以设置"log4jconfiguration"的值。到${web:initParam.old_param_name}
(cf. Web Lookup).