Comments: crontab を使って効率的にサービス監視する方法

Showing 1 - 4 of 4 comments.

roo さん、コメントありがとうございます。

"> /dev/null" しちゃうと、stderr に出力があった場合に、stderr の内容だけがメールに届くようになるわけですが、それだと運用が難しいな、というのが自分の考えです。

例えば、例に挙げている ping はエラーを返す場合でも、標準エラー出力には何も出力してくれません (なので || echo "ping error" とか書かざるを得ない)。

何が原因なのか分かりやすくする意味でも、エラーがあった場合に標準出力も含めて確認できる、というのが、(監視に限らず)crontab のタスクを書く上で重要だと思います。

> - タスクが異常終了した場合に (のみ)、タスクの出力を (cron が) メール送信

下記のような方法もあるようです。

標準エラー(STDERR)のみアラートメールする
http://tm.root-n.com/unix:cron:stderr2mail

> cronlog使わなくてもcronもメール通知機能ありますよね。

えぇ。ですから、cronlog は cron のメール通知機能を使っています。
cronlog は、多くの cron タスクで求められる、以下のことをさくっと書くために作りました。

- タスクが異常終了した場合に (のみ)、タスクの出力を (cron が) メール送信
- タスクの出力を個別のファイルに (各行にタイムスタンプをつけながら) 保存

いずれも cron 本体にはない機能だと思いますが、私の不勉強ならご指摘いただければ。

cronlog使わなくてもcronもメール通知機能ありますよね。
スクリプトも呼び出せるし。
ログも吐いてくれてるし。


Post a comment