私のアプリケーションでは、sample-19.10.2012-1.42pm のような日付と時刻で 1 時間ごとにログファイルを生成したいと考えています。
誰か私にアイデアを教えてもらえますか?
DailyRollingFileAppender を探しています。
ドキュメンテーション: Log4J マニュアル DailyRollingFileAppender
構成例 (.properties):
log4j.appender.DailyRoller=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DailyRoller.datePattern='.'yyyy-MM-dd_HH
log4j.appender.DailyRoller.file=logs/myLogFile.log
log4j.appender.DailyRoller.layout=org.apache.log4j.PatternLayout
log4j.appender.DailyRoller.layout.ConversionPattern=%d{ISO8601} %-5p [%t] %c: %m%n
この例では、1 時間ごとに新しいファイルが作成されます。これは、日付パターンを調整することで変更できます。例:yy-MM-dd
毎日新しいログファイルを作成します。
変換パターンを見てください。
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{dd MMM yyyy HH:mm:ss,SSS} %-5p [%t] %c.%M (%L) %x - %m%n" />
</layout>
</appender>
FileAppenderを動的に設定できます
SimpleLayout layout = new SimpleLayout();
FileAppender appender = new FileAppender(layout,"your filename",false);
logger.addAppender(appender);