log4j 1.2.14のAppender
Appenderによってなにかしらに出力できるようになる。
thresholdパラメタ
閾値です。これはどのAppenderにでも追加できる。ログレベルのデフォルト値で、例えば、カテゴリでDEBUGとしてthresholdでINFOとする場合は、INFOが優先される。
ファイルはINFOでコンソールはDEBUGという風にできるようになる。
<param name="threshold" value="INFO"/>
ConsoleAppender
コンソール出力用Appender。
log4j.xmlサンプル
<appender name="Console" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss}[%p]%m%n"/> </layout> </appender>
FileAppender
ファイル出力用Appender。
log4j.xmlサンプル
<appender name="FOR_DEBUG" class="org.apache.log4j.FileAppender"> <param name="File" value="C:/temp/debug.log" /> <param name="Append" value="true" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss}[%p]%m%n"/> </layout></appender>
RollingFileAppender
ファイルサイズが指定サイズを超えたらローテートするAppenader。
log4j.xmlサンプル
<appender name="FOR_DEBUG" class="org.apache.log4j.RollingFileAppender"> <param name="File" value="C:/temp/debug.html" /> <param name="Append" value="true" /> <param name="MaxFileSize" value="1MB"/><!--100KBなどもOK--> <param name="MaxBackupIndex" value="10"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss}[%p]%m%n"/> </layout></appender>
DailyRollingFileAppender
日付ごとにローテートするAppender。
log4j.xmlサンプル
<appender name="DAILY" class="org.apache.log4j.DailyRollingFileAppender"> <param name="file" value="c:/temp/debug.log" /> <param value="'.'yyyy-MM-dd" name="DatePattern"/> <param name="append" value="true" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss}[%p]%m%n"/> </layout></appender>
Windowsではローテートに失敗するらしい
日付ローリングがうまくいかないらしい。やばいね。
http://d.hatena.ne.jp/t_yano/20060919
http://codezine.jp/a/article.aspx?aid=524
日付ローテート&サイズ分割
RollingFileAppenderとDailyRollingFileAppenderを合体させたもの。Log4j1.3ではあるらしいけど以前のバージョンではない。
http://www.okisoft.co.jp/esc/log4j/product/CompositeRollingFileAppender.html
自分で作る場合は、「http://codezine.jp/a/article.aspx?aid=524」
log4j.xmlサンプル
<appender name="FILE" class="org.apache.log4j.CompositeRollingFileAppender"> <param name="File" value="c:/temp/debug.log" /> <param name="MaxFileSize" value="50KB" /> <param name="MaxBackupIndex" value="5" /> <param name="datePattern" value="'.'yyyy-MM-dd-HH-mm" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss}[%p]%m%n"/> </layout></appender>




