我当前的项目使用 Log4j 进行日志输出,但是当它部署在 websphere 7 上时,似乎日志文件总是被服务器占用,因此 Log4J 无法关闭它并打开一个新文件。如果在 DEBUG 级别,当前日志文件可以扩展到 1.5 Gb。我浏览了一些在线教程,但没有得到可靠的解决方案。因此,我打开此线程以获取有关使 log4J 在 WS 7 上工作的任何意见或经验。
当前的 log4J 是 1.2.15,该项目是一个普通的 POJO/JSP 应用程序,没有其他容器(比如 Spring,我确实有另一个项目在 Spring/tomcat 上有相同的问题,将在另一个线程中打开)。这是 log4j.properties:
log4j.rootCategory=INFO, ROL
#
# Rolling File Appender
#
log4j.appender.ROL=org.apache.log4j.RollingFileAppender
log4j.appender.ROL.Encoding=UTF-8
log4j.appender.ROL.File=C\:\\Logs\\AppOut.log
log4j.appender.ROL.MaxFileSize=10000KB
log4j.appender.ROL.MaxBackupIndex=10
log4j.appender.ROL.layout=org.apache.log4j.PatternLayout
log4j.appender.ROL.layout.ConversionPattern=%d -- %p -- %c -- %m%n
但是这种配置不会使日志文件翻转。
更新:
似乎每次我在停止应用程序(而不是服务器)后尝试删除日志文件时,它总是说“文件被另一个应用程序打开”,它只指 Websphere。我可以保证没有其他应用程序正在打开日志文件。解除对它的锁定的唯一方法是停止application server
.
提前感谢您的任何想法。