在客户站点上部署 Web 应用程序(在测试环境中)期间,我们遇到了应用程序日志记录问题。我将很快尝试描述当前的情况:
- 实现使用由 java.util.logging 和 apache.commons.logging 检索的 Logger。
- 在部署的包中存在一个指向 JUL 的 commons-logging.properties。
- 应用程序在 Tomcat 6.x 上运行
客户决定他想在 tomcat 上使用 Log4J 并对其进行配置,使其(通常)工作 - 当然它不适用于上述应用程序。
看来我们无论如何都需要更改日志记录实现 - 我想向您询问一些关于如何在 Web 应用程序中实现日志记录的最佳实践。以下事情应该是可能的:
- 客户需要能够在不修改 *.war 文件中的任何内容的情况下更改日志级别。-> 如果他必须修改战争文件,他必须为每个新版本都这样做......
- 应该可以进行某种滚动文件日志记录(例如:最多 10 个文件,每个文件最多 10mb)——当然也应该由客户来定义和更改此设置...
- 由于另一个客户可能想要使用标准的 JUL 日志记录 - 我当然更愿意不对首选库(在这种情况下为 Log4J)进行硬编码。