【发布时间】:2011-04-22 16:56:37
【问题描述】:
我们需要在集群 glassfish 环境中托管多个 Web 应用程序。 Logback 是 Web 应用程序使用的日志框架。修改日志配置(例如日志级别)是一个我想获得一些专家意见和建议的问题。
目前我们已将 logback 配置文件放入单独的 war 文件中,原因有几个
- 手动将 logback.xml 放在 war 文件之外会为安装程序/升级程序添加一个额外的任务。
- 在未来版本的 Web 应用程序中对配置文件所做的任何修改都必须由软件升级程序负责。任何例如这种修改可能是接受日志文件位置作为 JNDI 属性。 Web 应用程序的数量增加了这项任务的复杂性。
将配置文件放在war中的缺点是很难进行任何修改。例如添加新的记录器或更改日志级别。 JMX 是 logback 支持的替代方案,但我发现它有两个问题
- 通过 JMX 所做的任何更改都无法保留。任何服务器重新启动都会丢失配置的更改。
- logback 提供的 JMX 支持不允许添加新的 appender,例如一个新的文件追加器
如果您能就我上面提到的 logback 配置文件的放置或 JMX 问题提供任何建议,我将不胜感激。
【问题讨论】: