1分ごとにログファイルを自動的に変更/回転する方法は?

1分ごとにログファイルを自動的に変更/回転する方法は?

多くのログメッセージを生成するレガシーアプリケーションがあります。メッセージを失ったり切ったりすることなく、毎分ファイルを回転できるようにしたいです。アプリケーション自体はファイルを変更できないため、外部で変更する必要があります。 Webサーフィン中にこの機能を使用するという提案がたくさんありましたが、cp私のcat /dev/nullアプリケーションはほぼ連続したメッセージストリームを生成するため、一部のメッセージはその過程で失われました。

どんな考えがありますか?

答え1

ログファイルをFIFO(man mkfifo)にし、入力を制限されたサイズのファイルに分割する読み取り側プロセスを配置します。

mkfifo /path/to/logfifo.app_xy
split ... </path/to/logfifo.app_xy &
/bad/app

答え2

おそらくlogrotateツールはこれを処理できます。

関連情報