サイトの死活監視
重要なネットショップは数分ごと、静かなページは1時間ごとなど、確認の間隔を自分で決められます。毎回、応答の有無と速さを調べ、通知はサイトが落ちたときと復旧したときだけ届きます。利用ごとのお支払いで、月額契約は不要です。
指定したURLに定期的にアクセスし、正常に応答しているかどうかを確認する死活監視ツールです。応答の有無とステータスコードを記録し、サイトが停止した時点をあとから振り返りたい運営者や開発者に向いています。
監視の間隔を自分で決められる仕組み
多くの死活監視サービスは、提供元が決めた間隔で常に動く仕組みです。すでに自社のスケジューラーや自動化の仕組みを持っている場合は、確認の頻度を自分で決めたいはずです。このツールでは、監視するアドレスと確認の間隔を登録します。重要なネットショップなら数分ごと、更新の少ないページなら1時間ごと、リリース作業の間だけ細かく、といった設定ができます。登録後は、その間隔どおりに自動で確認が続きます。
毎回の確認内容と通知のタイミング
確認のたびに、サイトが応答したか、どんな応答だったか、応答までにどれだけかかったかを調べ、前回の結果と比べます。通知が届くのは状態が変わったとき、つまりサイトが落ちたときと復旧したときだけで、変化のない定期確認のたびに知らせが来ることはありません。そのため、通知が来たときは本当に何かが起きたと判断できます。登録はすぐに受け付けられ、その後の監視は裏側で続きます。
確認の流れ
URLを登録すると、設定した間隔でアクセスを行い、応答があったかどうかとステータスコードを記録します。応答がない、または遅い場合も結果に残ります。
向いている場面
自社サイトやオンラインショップ、予約フォームなど、止まっては困るページの監視に向いています。障害発生から気づくまでの時間を短くできます。
活用例
自社ECサイトの監視
有限会社ささき印刷では、注文フォームのページを監視し、応答が止まっていないかを日常的に確認しています。
予約システムの監視
フリーランスの田中大輔さんは、自分で運用している予約ページの死活監視に使い、停止の記録をあとから見返せるようにしています。
複数拠点の代表ページ確認
株式会社山田商事は、支店ごとの案内ページが正しく表示され続けているかをこの機能で確認しています。
よくある質問
取得したアクセス結果はどのように扱われますか?
確認のためにForHostingのサーバーから対象URLへアクセスします。取得した内容を第三者へ提供することはありません。
監視の間隔はどれくらいに設定できますか?
間隔はタスク作成時に指定いただきます。1回の確認あたりのタイムアウトは30秒です。
なぜ利用ごとの支払いなのですか?
現在アカウント制度はなく、実行した確認の回数分だけPayPalで直接お支払いいただく仕組みです。
日本語のサポートはありますか?
申し訳ありませんが、日本語でのサポートは行っておりません。サポートは英語またはスペイン語で、担当者が直接対応します。
ページのURLではなくホスト名で監視できますか?
はい。監視したいページのアドレスの代わりに、ホスト名だけを指定することもできます。どちらの場合も、決めた間隔で応答の有無と応答までの時間を確認します。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
認証済みのPOSTでタスクを作成し、結果はWebhookまたは署名付きリンクで受け取ります。この機能はAPIで利用でき、対話型のWebツールとしては提供していません。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/web/uptime \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'const res = await fetch("https://api.kit.forhosting.com/web/uptime", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://example.com"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/uptime",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://example.com"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/uptime", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://example.com"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://example.com"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/uptime", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"url": "https://example.com"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.uptime",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
timeout_sec | 30 |
max_crawl_pages | 25 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
確認できる項目
タイムアウトは1回あたり30秒に設定されています。応答の有無に加え、HTTPステータスコードを記録します。
通知について
メールやTelegramへの通知機能は近日対応予定です。現在はWebとAPIから履歴を確認する形です。
技術的な質問
ダウンタイムの履歴はあとから確認できますか?
はい、実行した確認の結果はWebとAPIの両方から履歴として参照できます。
料金はいくらですか?
1回の確認につき$0.002です。1日24回確認しても1ヶ月で数十円程度に収まります。