以前参加していたプロジェクトでバッチプログラムを開発する事案があり、 ログ出力には Log4J を採用してプログラムを開発しました。 ところが、後付けでログ出力方式が決まり^^; ログファイル名をサーバーの環境変数から取得しなければならなくなってしまいました。 環境変数からログファイル名を取得…それぐらい Log4J なら簡単だよね、と思いつつやってみたら、出来ません。 ログファイル名は設定ファイルに記述されていて、固定なのです…。 しかし、Log4J は簡単に拡張することが出来ます。 「環境変数からログファイル名を取得する」というような場合には Appender を自作すれば解決できます。 今回の場合、バッチプログラムの動作環境が JRE 1.4 なので環境変数が取得できない件も考慮し、 JVM の起動引数からファイル名を取得する Appender を自作しました。 package jp