cronなどで実行する定時バッチ処理って仕込んだ直後は動作を確認しますけど、そのあとはそこまで気にしません。しかし、運用しているサーバでは様々な設定変更が行われるため、いつの間にかバッチがこけてしまっていたということがあります。
ではバッチの実行結果を通知しようというアイデアがあります。cron では MAILTO を設定すれば実行結果をメールしてくれます。最近ではメールではなく Slack に通知するほうが多いでしょうか。しかし、これは二つの問題があります。
一つ目は、監視するサーバが増えバッチ処理も増えてくると、運用担当者のメールボックスは完了通知メールで溢れかえってしまうことです。一つ一つに目を通して確認することは不可能です。メールソフトでフィルタリングして失敗した通知メールだけをチェックするなどの対応が必要になります。
もう一つは、実行自体が行われなかったことを検知できないことです。運用担当者がメールが来てないことに気付かない限り無理ですね。
これらの問題を解決するため、運用監視ツールでバッチ処理の成否を監視するという方法を考えました。大抵の運用監視ツールでは監視対象サーバから能動的に送られるステータスの監視も行えます。ステータスが失敗になったらアラートをあげるのですが、それとは別に一定期間ステータスを受信していない場合にもアラートを上げるわけです。
というようなアイデアを以前から考えていたのですが、なかなか実際に試す機会がないため、ひとまずアイデアだけ書き出してみました。実際に試せたら、また記事にします。
(2023/8/15追記)
ようやく実際に試すことが出来ました。