問題の説明
Enterprise Distributed Application Service (EDAS) を使用する場合、Log4j ログが想定どおりに生成されません。
原因
Log4j ログが上書きされます。その結果、ログが想定どおりに生成されません。
解決策
Log4j 設定ファイルのデフォルト名を変更します。
説明デフォルト名を使用すると、Log4j 設定ファイルは自動的にマスクされます。
Spring の Log4jConfigListener を設定し、web.xml に次の設定を追加して、Log4j 設定ファイルのパスを変更します。
<listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>WEB-INF/log4j-[$App_Name].xml</param-value> </context-param>
[$App_Name]
: アプリケーションの名前。アプリケーションを起動します。
説明Pandora は、組み込みの Log4j.jar ファイルを読み込み、次に組み込みの
Log4j
構成ファイルを読み込みます。この場合、アプリケーションの構成は読み込まれません。Pandora が上記のファイルを読み込んだ後、アプリケーションの
web.xml
ファイルが読み込まれると、Log4jConfigListener が実行され、アプリケーションのカスタム Log4j 構成が読み込まれます。これにより、アプリケーションの Log4j 構成が有効になります。