crontap-uptime-monitor について
crontap-uptime-monitorは、CrontapでHTTPエンドポイントの稼働状況を管理するエージェントスキルです。プローブの設定や状態確認、メンテナンス中の一時停止を行うユーザー向けで、MCPとRESTの手順を扱います。
主な機能
- 01HTTP稼働監視の作成
- 02プローブ間隔と失敗閾値の設定
- 03監視の一時停止と再開
- 04日ごとのプローブ記録の確認
- 05エンドポイント状態と通知感度の検証
活用シーン
- 01公開ヘルスチェックエンドポイントの追跡
- 02メンテナンス中の停止と再開の確認
- 03失敗プローブのステータスコードやネットワークエラーの確認
MCP 対応
Crontap MCPで監視の作成・更新やプローブ記録の取得を行います。REST APIを代替手段として使う手順も記載されています。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ crontap/ skills --skill crontap-uptime-monitorインストール後、Claude Code で/crontap-uptime-monitorを入力して読み込まれたか確認します。
詳細
HTTP エンドポイントを監視する
Crontap の稼働時間モニターは HTTP GET プローブを送信します。HTTP 200〜399 は正常です。 ネットワークエラー、タイムアウト、その他のステータスコードは、プローブの失敗としてカウントされます。
前提条件
必要なツールを使う前に、利用可能かどうかを確認してください。いずれかが 利用できない場合は、処理を中断し、ユーザーに次の選択肢を正確に2つ提示してください。
https://mcp.crontap.com/mcpで Crontap MCP に接続します。MCP アクセスは Crontap のすべてのプランで利用できます。- 生の API を使う場合は、
$CRONTAP_CLIENT_IDと$CRONTAP_API_KEYを設定します。生の API アクセスには Ultra が必要です。
ユーザーがいずれかを選ぶまで、どちらかを勝手に選んだり、処理を続けたりしないでください。
- 監視対象の依存関係を表す、軽量なヘルス URL を選びます。
- 必要な間隔と連続失敗のしきい値を確認します。
- 計画済みデプロイ中にモニターを一時停止するかどうかを決めます。
ワークフロー
- 名前、URL、間隔、しきい値を指定してモニターを作成します。
- 保存された実行間隔と保留中の状態を確認します。
- 最初のチェックが実行されたら、UTC の1日分のプローブを調べます。
- メンテナンス期間中にアラートが誤解を招く場合は、
statusをpausedに設定します。 - メンテナンス後、正常に再開するために
statusをpendingに設定します。
MCP の例
2回失敗するとダウンになる、5分間隔のモニターを作成します。
{
"tool": "create_monitor",
"arguments": {
"name": "Public API health",
"url": "https://api.example.com/health",
"intervalMinutes": 5,
"failureThreshold": 2,
"emailCooldownMinutes": 15
}
}
メンテナンス中に一時停止します。
{
"tool": "update_monitor",
"arguments": {
"monitorId": "<monitor-id>",
"status": "paused"
}
}
確認後に再開します。
{
"tool": "update_monitor",
"arguments": {
"monitorId": "<monitor-id>",
"status": "pending"
}
}
プローブの証拠を調べます。
{
"tool": "get_monitor_probes",
"arguments": {
"monitorId": "<monitor-id>",
"day": "2026-09-14"
}
}
REST による代替手段
REST は Ultra API アクセスがある場合にのみ使用してください。
curl --fail-with-body https://api.crontap.com/v1/monitor \
-X POST \
-H "ClientId: $CRONTAP_CLIENT_ID" \
-H "ApiKey: $CRONTAP_API_KEY" \
-H "Content-Type: application/json" \
--data '{
"name": "Public API health",
"url": "https://api.example.com/health",
"intervalMinutes": 5,
"failureThreshold": 2
}'
一時停止するには、{"status":"paused"} を /v1/monitor/<monitor-id> に PUT で送信します。再開するには pending を使用します。
確認
- 少なくとも1回のプローブと、そのステータスコードまたはネットワークエラーを確認します。
- 正常なエンドポイントによって、モニターの状態が pending から up に遷移することを確認します。
- down と復旧のアラートを検証する場合は、別途用意したテストエンドポイントを使用します。本番環境のヘルスルートを壊さないでください。
- 設定したしきい値が、希望するアラート感度に合っていることを確認します。
安全性とプランの上限
- 公開されているか、意図的に到達可能にしたエンドポイントを監視します。プローブを可能にするためだけに、非公開の管理ルートを公開しないでください。
- 認証情報が埋め込まれた URL は避けてください。ヘルスチェック用に設計されたエンドポイントを使用します。
- Starter プランと有料プランでは、モニター数と実行間隔の下限が異なります。
- 作成または更新時にプラン上限エラーが返された場合は、4つの選択肢からなる段階的なプラン構成を説明し、実現可能な最小の選択肢を示します。
トラブルシューティング
- プローブの 401 または 403 は、ヘルスエンドポイントに公開状態でプローブできないことを意味します。
- 短時間の停止が頻発する場合は、失敗のしきい値を上げる必要があるかもしれません。ただし、影響を見えなくする前に、ユーザーへの影響を確認してください。
- タイムアウトは、ヘルスハンドラーの応答が遅いか、下流の依存関係に問題があることを示している可能性があります。
- 一時停止中にプローブがないのは正常です。
参考資料
コメント
Markdown 対応