ドキュメント
Doyouok を使って定期実行ジョブ、イベント駆動の処理、バックグラウンドタスクを監視する方法をご紹介します。
クイックスタート
- ログイン後、ダッシュボードで「新規監視項目」をクリックし、タスク名とチェックイン間隔を設定します。
- 監視項目の Ping URL をコピーします。
- タスクが正常に完了するたびにこの URL をリクエストするようにします。
- 設定した間隔内にチェックインがない場合、すぐにお知らせします。
Ping URL
各監視項目には以下の形式の専用 Ping URL があります(api_key はローテーション可能なキーで、監視項目自体とは無関係です):
https://ping.doyouok.com/ping/{api_key}
GET または POST リクエストに対応し、常に固定の 200 ステータスを返します。api_key が有効かどうかに関わらず、レスポンスから情報が漏れることはなく、総当たり推測を防ぎます。
| パス | 用途 |
|---|---|
/ping/{api_key} |
チェックイン(ハートビート) |
/ping/{api_key}/start |
タスクの開始をマーク(タスクモードでのみ、実行時間の計算に使用) |
Ping URL が漏洩した場合、ダッシュボードからいつでもローテーションできます。古い URL は即座に無効になり、監視項目を再作成する必要はありません。
2 つの監視モード
ハートビートモード(LifeMonitor)
「継続的に発生すべきだが、固定スケジュールで実行されるとは限らない」プロセスに最適です。定期実行ジョブ(例:「毎晩バックアップを実行」)でも、イベント駆動の処理(例:Webhook を受信するたび、注文を処理するたびにチェックイン)でも構いません。設定した間隔内に少なくとも 1 回 Ping を受信すれば監視項目は Up の状態を維持します。間隔を過ぎても Ping を受信しない場合、監視項目は Down になりアラートが送信されます。
タスクモード(TaskMonitor)
実行ごとのログと所要時間を記録したいタスクに最適です。/start と終了時のチェックインを組み合わせることで、実行の所要時間を記録できます。終了時のチェックインのみを送信した場合は、所要時間を含まない実行ログが記録されます。
監視項目のステータス
- New —— 作成直後で、まだチェックインを受信していません。
- Up —— 正常にチェックインしています。問題ありません。
- Down —— 設定した間隔内にチェックインがなく、アラートが送信されました。
アラートの仕組み
監視項目がタイムアウトすると、リマインダーアラートを送信します(1 回目は最初のリマインダー、復旧しない場合は最後のリマインダーを送信、1 回のインシデントにつき最大 2 回)。チェックインを受信すると、カウントは直ちにリセットされます。