0

いくつかのカテゴリに属する​​すべてのlog4jログを照合し、毎日の終わりにメールを送信する必要があります。org.apache.log4j.DailyRollingFileAppenderを使用してすべてのカテゴリを同じ (日付付き) ファイルに記録しているため、ログ ファイルを読み取らずに生成されたログをフィルター処理する方法がわかりません。誰かがjavaを使用してこれを行う方法を提案できれば素晴らしいと思います。次のコードは、フィルタリングする必要があるログのカテゴリの一部のサンプルです。

log.fatal("Fatal error message");
log.error("Error message");

最終的にフィルタリングが不可能な場合は、少なくともこれらのカテゴリの関数をオーバーライドする方法を見つけることができれば十分です。私の log4j.properties は次のようになります。

log =/usr/end_of_day_logs
log4j.rootLogger = DEBUG, FILE

log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.FILE.File=${log}/log.out
log4j.appender.FILE.Append=true
log4j.appender.FILE.DatePattern='.'yyyy-MM-dd
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm} [%C %x~ %M:%L] %-5p - %m%n
4

2 に答える 2