- PR -

log4jについて

1
投稿者投稿内容
ペーぺー01
常連さん
会議室デビュー日: 2005/05/29
投稿数: 45
投稿日時: 2006-08-05 22:54
こんにちは

log4jを使用して、同一のログファイルに以下の2つのプロセスからログ出力を行っています。

1.webアプリからから出力されるログ
2.任意のタイミングで随時起動される通常のjavaアプリ(static void main(String args[]))(batファイルで起動)

いまのところ問題なくログ出力ができているので1つのファイルに2つのプロセス(1はアプリケーションサーバーのプロセス。2はjavaが実行される毎に起動される別プロセス)でlog4jを使ってファイルの書き込みを行って大丈夫なのでしょうか?(同時に書き込みにいってExceptionが発生したりしないでしょうか?)

ご教授・アドバイスよろしくお願いいたします。
小僧
ぬし
会議室デビュー日: 2002/08/14
投稿数: 526
投稿日時: 2006-08-06 12:44
テストレベルで使えたとして使わない方が良いと思います。
例外などが発生しないとしても、OSのファイルシステムが
絡んだログ出力漏れなどを考えると、怖いですよね。
どちらのプロセスが出力したログであるか分からないログ
が見つかった場合も面倒そうですしね。
素直に別々のログファイルに出力するか、SocketAppender
またはSYSLOGのように予め複数のプロセスから出力される
ことを想定した対象に出力することをお勧めします。
運用レベルで使うプログラムか存じ上げませんが、実運用
では、よほどの理由が無い限り安全な方式を選択します。



[ メッセージ編集済み 編集者: 小僧 編集日時 2006-08-06 12:45 ]
ペーぺー01
常連さん
会議室デビュー日: 2005/05/29
投稿数: 45
投稿日時: 2006-08-07 13:11
小僧さん
回答ありがとうございます。

実運用で使用するLogファイルですので、やはり安全性を考慮して
別ファイル・もしくはSocketAppenderを使用する事を考慮して
検討していきたいと思います。

ご教授ありがとうございまいた。
1

スキルアップ/キャリアアップ(JOB@IT)