- - PR -
log4jのアペンド、個別設定に関して
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2004-05-29 11:08
同じようなこと、やり方をご存知の方いましたら
ご教授下さい。 log4jでコンソールとログファイルA、ログファイルBに出力します。 ログ出力のクラスでこのメッセージはコンソールだけとか ログファイルAだけとか 全部とか制御したいのです。 それぞれAppenderを生成し設定したのですが コンソールAppenderしか設定していないのに ログにも総て出てしまいます removeAllAppendersでAppenderを初期化してもダメです 以下がコードの抜粋です。 宣言 private static Category runlogger = Category.getInstance(A.class); private static Category conlogger = Category.getInstance(A.class); private static Category errorlogger = Category.getInstance(A.class); private static RollingFileAppender runAppender = null; private static RollingFileAppender errorAppender = null; private static ConsoleAppender consolAppender = null; 処理 PatternLayout layout = new PatternLayout(); layout.setConversionPattern("%d{yyyy-MM-dd HH:mm:ss} %m%n"); runAppender = new RollingFileAppender(layout ,"C:\\run.log"); errorAppender = new RollingFileAppender(layout ,"C:\\error.log"); consolAppender = new ConsoleAppender(layout); runAppender.setMaxFileSize("100KB"); runAppender.setMaxBackupIndex(3); errorAppender.setMaxFileSize("100KB"); errorAppender.setMaxBackupIndex(3); conlogger.addAppender(consolAppender); runlogger.addAppender(runAppender); errorlogger.addAppender(errorAppender); 出力 conlogger.debug("メッセージ"); こいつが コンソールにも、ログにもでてしまいます。 何か方法教えてください。 | ||||
|
投稿日時: 2004-05-29 18:36
この3つのロガーは全部同一のオブジェクトですよ。 あと、これは余計なお世話かもしれませんが、CategoryじゃなくてLoggerを使うのが今風です。 | ||||
1
