ForHosting KIT · サイト取得・監視

障害時間から稼働率とナイン数を計算

30日間、つまり43,200分の監視期間に合計45分となる3件の障害があると、稼働率は99.9 %をわずかに下回り、ナイン数は2になります。期間と各障害の時間を同じ単位で入力してください。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日
入力した場合
周期
43,200 minutes
インシデント
10, 20, 15
結果
インシデント数
3 minutes
インシデントの合計時間
45
稼働時間
43,155
稼働率 (%)
99.8958333333

監視期間と各障害の継続時間を、明確な可用性の結果に変換します。停止時間を合計し、監視期間を超えていないか確認したうえで、稼働時間、稼働率、ナイン数を返します。秒、分、時間、日のいずれかを選び、すべて同じ単位で入力してください。通信、現在時刻、乱数は使用せず、暦や障害の重複も推測しません。

監視期間と正確な障害時間をご用意ください

まず、30日、720時間、43,200分など、報告対象の全期間をご指定ください。次に、その期間内で可用性を低下させた障害時間を列挙します。期間と障害には同じ単位をお使いください。

停止がなければ空の配列にします。本機能は各時間を別々の停止として加算し、重複を検出しません。同じサービスで同時に発生した障害は、二重計上を避けるため事前に統合してください。

期間は正の有限値、各障害時間は0以上の有限値である必要があります。合計が期間を超える入力は、誤解を招く負の可用性を返さずエラーにします。

稼働率とナイン数の算出方法

障害時間を合計して監視期間から引き、残った稼働時間を全期間で割って100倍します。99.9パーセントなら、停止は期間の千分の一です。ナイン数は停止率の常用対数を負にした値の整数部分です。

0.001は3ナイン、0.0001は4ナインとなり、中間値を上位へ切り上げません。停止が0なら完全稼働と表示し、有限のナイン数は省略します。

ステータス報告で結果をご活用ください

件数、停止合計、稼働時間、稼働率、分類は、人向けの報告にも自動処理にも利用できます。公開前に、対象期間が報告日付と一致し、計画保守の扱いが公表方針に沿っているかご確認ください。サービス目標の評価では、分類だけでなく契約上のしきい値と稼働率を比較します。

停止合計が期間を超える場合は、重複、単位の混在、対象期間の不一致を疑ってください。

月次状況を公開する

月の長さと確定済み障害から、監査可能な稼働率を算出します。

サービス目標を評価する

測定値を目標値やエラーバジェットと比較します。

障害データを検証する

重複や単位混在による不可能な合計を検出します。

利用できる単位は何ですか?

秒、分、時間、日を選べます。すべての値に同じ単位をご使用ください。

ナイン数はどう決まりますか?

停止率の常用対数を負にした値の整数部分で、上位には丸めません。

障害がない場合はどうなりますか?

空の配列なら100パーセントの完全稼働となり、有限のナイン数は返しません。

99.9 %をわずかに下回るとナイン数が2になるのはなぜですか?

ちょうどの境目の間にある値は、下の区分に入るためです。ナイン数3では停止が期間の千分の一以内である必要があり、43,200分中45分はそれを少し超えるので、届いていない目標を名乗らないようになっています。

障害の合計が監視期間より長い場合はどうなりますか?

マイナスの稼働率という意味のない結果を返す代わりに、計算を受け付けません。期間がレポートの範囲全体をカバーしているか、障害が同じ単位で入力されているかを確認してください。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/web/status-page-uptime-percent

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/web/status-page-uptime-percent \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"period":60,"incidents":[10,20,15]}'
{
  "period": 60,
  "incidents": [
    10,
    20,
    15
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.status_page_uptime_percent",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

max_incidents10000
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

稼働率とナイン数の算出方法

安定したJSONのため表示値は小数12桁に丸めますが、分類には丸め前の比率を使います。

ステータス報告で結果をご活用ください

簡単な確認はブラウザーで行え、自動化されたAPIリクエストは1回 $0.002 です。

API計算の料金はいくらですか?

APIは1リクエスト $0.002 です。同じ計算をブラウザーでも実行できます。

重複する障害を処理しますか?

いいえ。同じサービスの重複時間は事前に統合してください。

KITの完全なドキュメントを見る →