ファイルにログを書き込むクラス。
FileLogWriterクラスの特徴を下記に示す。
- ログフォーマッタを設定で指定できる。
- ログファイルが指定サイズに達したら、出力ファイルを自動で切り替える。
- 初期処理と終了処理、ログファイルの切り替え時に、書き込み先のログファイルにINFOレベルでメッセージを出力する。
本クラスでは、ファイルへのログ書き込みに
java.io.BufferedOutputStream
を使用する。
出力バッファのサイズは設定で変更できる。
書き込み処理では、書き込み後にすぐにフラッシュし、書き込んだ内容をファイルに反映する。
プロパティファイルの記述ルールを下記に示す。
- filePath
- 書き込み先のファイルパス。必須。
- encoding
- 書き込み時に使用する文字エンコーディング。オプション。
指定しなければシステムプロパティ(file.encoding)から取得した文字エンコーディング。
- outputBufferSize
- 出力バッファのサイズ。オプション。
単位はキロバイト。1000バイトを1キロバイトと換算する。1以上を指定する。指定しなければ8KB。
- maxFileSize
- 書き込み先ファイルの最大サイズ。オプション。
単位はキロバイト。1000バイトを1キロバイトと換算する。指定しなければ自動切替なし。
指定値が解析可能な整数値(Long.parseLong)でない場合は自動切替なし。
指定値が0以下の場合は自動切替なし。
古いログファイル名は、<通常のファイル名>.yyyyMMddHHmmssSSS.old。
本クラスでは、初期処理と終了処理、ログファイルの切り替え時に、書き込み先のログファイルにINFOレベルでメッセージを出力する。