log4jロギングフレームワークを使用するJavaアプリケーションがあります。私のアプリケーションにはいくつかのモジュールがあり、各モジュールは独自のログファイルを作成します。コマンドラインからアプリケーションを起動し、実行するモジュールをアプリケーションに指示するパラメーターを渡します。モジュールが3つあるとすると、1つのモジュールを開始するたびに、3つのログファイルがすべて作成されますが、情報が入力されるのは1つだけです(開始したモジュールの1つ)。各ファイルアペンダーをに設定しました
...append = false
そのため、アプリケーションを起動するたびに、古いログデータのない新しいログファイルがあります。
これで、プロセスチェーンを作成するバッチファイルができたので、3つのモジュールすべてがバッチファイル内で次々に呼び出されます。しかし、問題は次のとおりです。最後に、最初の2つのモジュールのログファイルが空になり、最後のモジュールのみがログを正しいログファイルに保存します(もちろん、それぞれの追加オプションをfasleに設定したため、これはそのようにする必要がありますファイルアペンダー)
次の解決策を探しています。モジュールを起動するときに、このモジュールのログファイルが空かどうかを確認したいと思います。はいの場合は、ログデータをこのファイルに追加するだけです。ファイルにすでにデータがある場合は、コンテンツを削除して現在のログデータを保存します。したがって、最後に3つのモジュールすべてを呼び出すとき(毎回異なるパラメーターを使用してアプリケーションを3回起動する)、3つのログファイルすべてを埋めたいと思います。何か案は?