
ジョブを開始する前に/var/log/messagesをクリアし、ジョブ後に/var/log/messagesのデータを分析するcronのテストスクリプトを定期的に実行します。テストの開始時にデバイスログが消去されるため、これは予想される動作ではありません。
テスト実行中にのみデバイスログをキャプチャする方法では、テストはそのデータのみを分析できますか?
答え1
あまり不器用な方法があるかもしれませんが、走ることはできます。
tail -0f /var/log/messages > captured_logs
テストスクリプトの実行時または使用
logger -i "Test started"
# ...test script...
logger -i "Test stopped"
(望むよりlogger
)とgrep
完全なログの次のセクション。ログがロールオーバーするとどうなるかわからないので注意してください。さらに堅牢になりました解決策は読むことです。syslogd
■ソケット(-p
オプション)、例:socat
socat UNIX-CLIENT:/var/run/log STDOUT
STDOUTよりも複雑なものは、お客様のニーズに適しています。 (このソケットからログをキャプチャするように設定(オプション)syslogd
して、特定の時間に独自のインスタンスを実行することもできます。)-a