如何在Glassfish 3中为每个已部署的应用程序配置log4j?

Hal*_*Hax 8 java logging web-services log4j glassfish

我正在尝试使用log4j处理在Glassfish 3下运行的Web服务的日志.我看到使用带有Glassfish的log4j的大多数指南都希望我搞砸Glassfish全局设置,我想避免因为每个Glassfish实例都会部署多个应用程序.

在部署我的Web服务时,有没有办法让Glassfish执行一段代码,这将允许我调用DOMConfigurator并使用我的XML文件设置log4j?

谢谢你的帮助!

编辑:答案是将log4j.xml文件放在WEB-INF/classes中.在我们的例子中,看起来好像log4j仍未配置,但是日志记录确实仍然按预期工作.

Jos*_*ger 5

是.您需要做的就是使用您正在部署的组件部署log4j配置; log4j将使用本地范围的配置,只要它没有在父类加载器中引用.

在这种情况下,Glassfish的全球环境根本不会考虑因素.

  • 似乎这个答案的"肉"实际上是在评论中,而不是答案.请考虑编辑答案,将完整,详细的答案放在答案中. (2认同)