4月 8th, 2008at 10:45

Tags: ,

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

日付ローテート&サイズ分割

RollingFileAppenderDailyRollingFileAppenderを合体させたもの。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>

リンク

http://www.okisoft.co.jp/esc/log4j/other/sample.html

このエントリーをはてなブックマークに追加