2011-11-10 6 views
1

私は、休止状態を使用するtomcatアプリケーションを持っています。私は、WEB-INFに入ると...次へHibernateがLog4Jにログしない

log4j.logger.net.sf.hibernate.SQL=trace 

をlog4j.propertiesを変更しかし、私は、私が使用していたログファイルには何も見てないですとき。

log4j.rootLogger=debug, stdout 
.... 
log4j.appender.file=org.apache.log4j.FileAppender 
log4j.appender.file.File=hibernate.log 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 

ログは自分のアプリで正常に動作しているようです。

アイデア?

+0

は「hibernate.show_sql」プロパティがfalseに設定されているが、あなたの休止状態設定のxml file.Isをチェック! –

答えて

4

これはわかりませんが、新しいバージョンのHibernateバージョンがlog4jの代わりにslf4jを使うかもしれないと思います。これを避けるにはslf4j-log4j-bridgeを使います。 Mavenを使用している場合は、依存関係は行に沿って表示されます

<!-- slf4j -> log4j bridge (some libraries use slf4j) --> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>1.5.6</version> 
     <type>jar</type> 
     <scope>compile</scope> 
    </dependency> 

必要に応じてバージョンを変更してください。

+0

私は... \t \t com.googlecode.sli4j \t \t sli4j-SLF4J - シンプル \t \t 2.0 \t \t Jackie

+0

を使用しています私はsli4jに慣れていないんだけど、ウェブサイト"セッターメソッドは必要ありません。特別な注釈もなく、宣言してsli4jに残りをさせてください。最終的には既に設定されているロガーはスキップされ、sli4jはそれらをオーバーライドしようとはしません。"問題は、Hibernateロガーが 'private static final'として宣言されていることです。この場合、sli4jは独自のロガーを挿入しませんか? – esaj

+0

代わりにこれを追加しようとしましたが、私はx2のチェックを行ったと思います – Jackie

0

Hibernateはnet.sfパッケージ階層の下にもはやであるため、以下のことを試してみてくださいません:

log4j.logger.org.hibernate.SQL=trace 
+0

ありがとうございます。しかし、古いバージョンを使用しています。 – Jackie

+0

私は、ハイバネートが 'net.sf'の下にあったときにslf4jをまだ使用していなかったと思います。あなたが本当に問題を発見したかどうか疑問に思っています。 – cherouvim

関連する問題