我的 WAR 使用 log4j FileAppender,通过 WAR 内
log4j.properties
目录下的 classes/
文件配置。
我已经这样配置了我的 log4j 附加程序:
# Set the root logger to DEBUG.
log4j.rootLogger=DEBUG
# MonitorLog - used to log messages in the Monitor.log file.
log4j.appender.MonitorAppender=org.apache.log4j.FileAppender
log4j.appender.MonitorAppender.File=MonitorLog.log
log4j.appender.MonitorAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.MonitorAppender.layout.ConversionPattern= %-4r [%t] %-5p %c %x - %m%n
# Use the MonitorAppender to log all messages.
log4j.logger.*=DEBUG,MonitorAppender
通过此配置,我试图实现以下目标:
MonitorLog.log
文件位于 Tomcat 的 logs/
目录下此配置是否实现了这些项目,如果没有,需要更改哪些内容?
如果您知道此 WAR 只会部署到 tomcat,则可以利用系统属性
catalina.base
,它代表 Tomcat 基本文件夹的根目录(还有一个 cataline.home
,但它们通常是相同的)除非你有多个 tomcat 在同一台机器上运行并且共享服务器库,但我离题了)。
所以更新如下:
log4j.appender.MonitorAppender.File=${catalina.base}/logs/MonitorLog.log