Tomcat 6アプリでlog4jアプリケーション(webapp)のログを機能させようとしています。WEB-INFディレクトリにlog4j-1.2.15.jarがあり、WEB-INF/classesにlog4j.dtdとlog4j.xmlがあります。
私のlog4j.xmlは次のようになります:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >
<log4j:configuration>
<appender name="massAppender" class="org.apache.log4j.RollingFileAppender">
<param name="maxFileSize" value="100KB" />
<param name="maxBackupIndex" value="2" />
<param name="File" value="${catalina.home}/logs/mass.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %5p %c{1}: %m%n " />
</layout>
</appender>
<category name="com.company.mass">
<priority value="DEBUG"/>
<appender-ref ref="massAppender"/>
</category>
<root>
<appender-ref ref="massAppender" />
</root>
</log4j:configuration>
私のサーブレットはパッケージに含まれています:
package com.company.mass;
ここで、ロガーは次のように宣言されています。
private static Logger logger = Logger.getLogger(Handler.class);
そして私のdoGet(...)メソッドの上部にあります:
logger.error("foo");
アプリをTomcatにデプロイしてサーブレットに移動すると、正しく機能します。mass.logファイルも取得しますが、何も入力されません。他のログにも表示されず、明らかなエラーはありません。何が起こっているのか分かりますか?