Java(Seasar2)のログ出力クラス「Log4J」の設定方法のメモ。
設定ファイル「log4j.properties」
設定ファイルは、「/プロジェクトルート/src/main/resources/log4j.properties」。
デフォルトでコンソールへの出力設定はあるので、そちらを流用してログファイル出力設定を以下のように記述してみた。
ポイントは、「DailyRollingFileAppender」を使用しているところ。
「DatePattern」で日時のパターンを設定することで、当日のログは「sample.log」へ、過去のログは「sample.log.yyyy-MM-dd」といったようにしてくれる。
あとは、ログレベルを指定する「log4j.rootLogger」に、追加したログファイル出力設定を追加してやる。
# ログレベル log4j.rootLogger=INFO, C, FILE # コンソール出力設定 log4j.appender.C=org.apache.log4j.ConsoleAppender log4j.appender.C.Target=System.out log4j.appender.C.ImmediateFlush=true log4j.appender.C.layout=org.apache.log4j.PatternLayout log4j.appender.C.layout.ConversionPattern=%-5p %d [%t] %m%n # ログファイル出力設定 log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender log4j.appender.FILE.File=C:\\Tools\\Pleiades\\tomcat\\7.0\\logs\\cm.log log4j.appender.FILE.DatePattern='.'yyyy-MM-dd log4j.appender.FILE.Append=true log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.ConversionPattern=%-5p %d [%t] %m%n
ログ出力の処理とログの結果
ログ出力させるための処理はこんな感じで。
// ログインスタンス Logger logger = Logger.getLogger(getClass()); // ログ出力 logger.info("テストログです。");
で、実際のログがこちら。
INFO 2013-12-11 21:02:22,337 [http-bio-8080-exec-1] テストログです。
今後、細かい設定もちゃんと押さえておきたいと思う。
参考サイト
S2JDBC経由で発行されたSQLを確認する方法【全SQL編】 – MoonMt.Lab IT開発技術 調査報告書
コメント