2011-11-17 10 views
3

数日前、私はWebアプリケーションでehcacheを使い始めました。すべてうまくいっていて、ehcacheがキャッシュに何かを置いていたときや、キャッシュから既存の値を取得していたときにログファイルに書き込まれたことを覚えています。 その時から何が変更されたのか分かりません。今はehcacheが動作しています(注意深くデバッグモードでチェックしました)が、ロギングはありません。ehcacheとロギングの問題

このような現象の原因は何ですか?

私のMavenプロジェクトでehcacheを&ログの依存関係のリスト:

<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-api</artifactId> 
    <version>1.6.1</version> 
</dependency> 
<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-simple</artifactId> 
    <version>1.6.1</version> 
</dependency> 
<dependency> 
    <groupId>com.googlecode.ehcache-spring-annotations</groupId> 
    <artifactId>ehcache-spring-annotations</artifactId> 
    <version>1.2.0</version> 
    <scope>compile</scope> 
</dependency> 
<dependency> 
    <groupId>log4j</groupId> 
    <artifactId>log4j</artifactId> 
    <scope>provided</scope> 
</dependency> 

私はlog4j.propertiesがその時点以降に変更されていないことを保証することができます。

答えて

1

put/gets/removeなどをログに記録するには、キャッシュに統計情報を有効にする必要があります。プログラムでもehcache.xmlでも制御できます。

+0

ログオプションが有効になっています。統計オプションAFAIKは、ehcacheモニターにのみ使用されます。しかし、とにかくそれも有効になっています。 – javagirl

+0

統計情報が有効になっている場合のみ、Cache about missおよびhitのログが実際にログに記録されます。 net.sf.ehcache.Cacheのレベルもデバッグレベルにある必要があります。 –

+0

はい、net.sf.ehcache = DEBUGはlog4j.propertiesにありますが、 – javagirl