私は絶対にシャットダウンせずに実行中のタスクの広範なログ(ファイル)を生成するプログラムを作成しています。私が望むのは、Linuxプロセスが定期的に(X分ごとに(cronjob?))実行されることです。
- 現在のログファイルから現在のログを取得する
- オフライン保存/削除のために別のファイル(適切な名前)に入れます。
- データが繰り返されないように、現在のログファイルを切り捨てます。
みんなデータの損失や中断なし生産プログラムに。これにより、時間で区切られた一連のログが生成されます。
Linuxユーティリティや既知のソリューションはありますか?または、このロギング機能をプログラムに組み込む必要がありますか?
答え1
syslogd
Linuxはログファイルを管理するために使用されます。私はこれを個人的に使用していないので、問題が何であるかよくわかりませんが、本質的にログにメッセージを送信し、デーモンがファイルの回転などを処理します。
ねえ:http://linux.die.net/man/3/syslog
特定のファイルへのメッセージルーティングを設定したり、手動でログをローテーションし/etc/syslog.conf
たり、logrotate
クローンアクションを設定したりできます。
答え2
通常、デーモンはログのみを作成し、それ以上は作成しません。ログの回転はソフトウェア操作の別の部分です。これは一般的にそうですログの回転または同様のソフトウェア。