S2Daoバインド後のSQLのみを別のログファイルに出力する
ほとんど個人的な備忘録。
log4jレベルだとは予想してましたが、如何せん、log4j.propertiesの書き方を忘れてるよ。。。 orz
とりあえず、FAQ/S2DAO - SeasarWikiの情報を基に、以下の内容をlog4j.propertiesに追記することで対応。
log4j.category.org.seasar.extension.jdbc.impl=DEBUG, S log4j.additivity.org.seasar.extension.jdbc.impl=true log4j.appender.S=org.apache.log4j.DailyRollingFileAppender log4j.appender.S.File=${catalina.home}/webapps/test/WEB-INF/logs/sql.log log4j.appender.S.DatePattern='.'yyyy-MM-dd log4j.appender.S.layout=org.apache.log4j.PatternLayout log4j.appender.S.layout.ConversionPattern=%X{host} %d{yyyy/MM/dd HH:mm:ss} %p %m%n log4j.appender.S.Threshold=DEBUG
あとでSeasar2のソースを見てみたら、
- org.seasar.extension.jdbc.impl.BasicBatchHandler
- org.seasar.extension.jdbc.impl.BasicSelectHandler
- org.seasar.extension.jdbc.impl.BasicUpdateHandler
でそれぞれログ出力しているのを確認できました。