概要
カスタム Documentum DFS アプリケーションで log4j の TRACE レベルを有効にするのに苦労しています。このアプリケーションは Tomcat 7.0 で実行され、Log4j 1.2.13 を使用し、WAR アーカイブとしてパッケージ化されています。
CustomServiceAppender
他のすべてのレベル、つまり DEBUG およびそれ以上のレベルで問題なく動作する、という名前のアペンダーがあります。開発中は、このアペンダーを DEBUG レベルに設定し、本番環境では INFO または WARN に変更します。その後、ロギングは期待どおりに動作します (ロギングが制限されます)。
ただし、ログに表示したい TRACE レベルでログを記録するコードをいくつか作成しました。再起動、再デプロイ、キャッシュの削除、log4j と commons-logging のバージョンの確認を試みました (それぞれ 1.2.13 と 1.1.1)。また、XML 構成ファイルはなく、プロパティ ファイルが取得されていることがわかります。
DFS のデフォルトのロガー、つまりDfLogger
クラスを使用します。
構成の変更 - なぜ機能しないのですか?
では、次の行をlog4j.properties
次のように変更します。
log4j.logger.com.mycompany.services=DEBUG,CustomerServiceAppender
に
log4j.logger.com.mycompany.services=TRACE,CustomerServiceAppender
...うまくいきません!ただし、以下は機能します。
log4j.logger.com.mycompany.services=INFO,CustomerServiceAppender
ここで何が起こっているのですか?TRACE を有効にできないのはなぜですか?
log4j.properties
参考までに、完全な構成ファイルを次に示します (変更された名前を識別します)。
#------------------- COMMON LOGGING LEVELS --------------------------
log4j.logger.com.emc.documentum.fs.rt = WARN, A1, F1
log4j.logger.com.emc.documentum.fs.datamodel = WARN, A1, F1
log4j.logger.com.emc.documentum.fs.services = WARN, A1, F1
log4j.logger.com.emc.documentum.fs.tools = WARN, A1, F1
log4j.logger.com.documentum.debug=ERROR, A1, F1
log4j.rootLogger=ERROR, A1
#------------------- CONSOLE LOG --------------------------
log4j.logger.com.mycompany.services=ERROR,A1
log4j.appender.A1.Threshold=ERROR
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} %5p [MYCOMPANY-SP] %c - %m%n
#------------------- ALL --------------------------
log4j.appender.F1=org.apache.log4j.RollingFileAppender
log4j.appender.F1.File=E\:/Documentum/logs/dfs-runtime.log
log4j.appender.F1.MaxFileSize=10MB
log4j.appender.F1.layout=org.apache.log4j.PatternLayout
log4j.appender.F1.layout.ConversionPattern=%d{ISO8601} %5p [MYCOMPANY-SP] %c- %m%n
#------------------- ASPECT_TRACE --------------------------
log4j.logger.com.emc.documentum.fs.tracing = DEBUG, ASPECT_TRACE
log4j.appender.ASPECT_TRACE=org.apache.log4j.RollingFileAppender
log4j.appender.ASPECT_TRACE.File=E\:/Documentum/logs/dfs-runtime-trace.log
log4j.appender.ASPECT_TRACE.MaxFileSize=10MB
log4j.appender.ASPECT_TRACE.layout=org.apache.log4j.PatternLayout
log4j.appender.ASPECT_TRACE.layout.ConversionPattern=%d{ISO8601} %5p [MYCOMPANY-SP] %m%n
#------------------- Customer TBO --------------------------
log4j.logger.no.customer=DEBUG,CustomerTBOAppender
log4j.appender.CustomerTBOAppender=org.apache.log4j.RollingFileAppender
log4j.appender.CustomerTBOAppender.File=E\:/Documentum/logs/CustomerTBO.log
log4j.appender.CustomerTBOAppender.MaxFileSize=10MB
log4j.appender.CustomerTBOAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.CustomerTBOAppender.layout.ConversionPattern=%d{ISO8601} %5p [MYCOMPANY-SP] [%t] %c - %m%n
#------------------- Customer Service --------------------------
log4j.logger.com.mycompany.services=TRACE,CustomerServiceAppender
log4j.appender.CustomerServiceAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.CustomerServiceAppender.File=E\:/Documentum/logs/CustomerService.log
log4j.appender.CustomerServiceAppender.Append=true
log4j.appender.CustomerServiceAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.CustomerServiceAppender.layout.ConversionPattern=%d{ISO8601} %5p [MYCOMPANY-SP] [%t] %c - %m%n
****************************************************************************************