Linux で実行されている WebSphere Portal Server にデプロイされたポートレット アプリケーションを構築しています。すべてのポートレット WAR は、次のような構成でログ記録に Log4j を使用し、すべての WAR に 2 つのログ ファイルがあります。
log4j.logger.im.the.package=DEBUG, InfoAppender, DebugAppender
log4j.appender.InfoAppender=org.apache.log4j.RollingFileAppender
log4j.appender.InfoAppender.Threshold=INFO
log4j.appender.InfoAppender.File=/tmp/infoWARName.log
log4j.appender.InfoAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.InfoAppender.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.DebugAppender=org.apache.log4j.RollingFileAppender
log4j.appender.DebugAppender.Threshold=DEBUG
log4j.appender.DebugAppender.File=/tmp/debugWARName.log
log4j.appender.DebugAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.DebugAppender.layout.ConversionPattern=%d %p [%c] - %m%n
展開後、すべてがチャームのように機能し、ログ ファイルがいっぱいになり始めました。数時間後、同時にログが停止しinfo.log
、debug.log
まったく更新されません。ロギングを再開するには、ポートレット WAR をサーバーに再デプロイする必要があります。
何か案は?
アップデート:
Logging JARS と関係があるのではないかと疑い始めています。WEB-INF/lib
現在、これは私のフォルダー内のJARです:
com.springsource.org.apache.commons.logging-1.1.1.jar
com.springsource.org.apache.log4j-1.2.15.jar
com.springsource.slf4j.api-1.5.6.jar
slf4j-log4j12-1.5.6.jar
2 回目の更新:
バウンティから終了までの数時間、これがすべてのポートレット アプリケーションで Log4j が構成されている方法です。ここにありweb.xml
ます:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:miAppLog4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
miAppLog4j.properties
ファイルは、WAR およびポータルの外部のフォルダーにあります。WebSphere Portal の共有ライブラリーを介して Portlet Classpath で利用できるようにしました。