チャンネルをサービス外にする
out_of_commission を切り替えると、チャンネルを削除せず、参照している過去の測定を壊さずに、プールから除外できます。out_of_commission の変更はすべて、チャンネルのインシデント履歴に停止レコードを開くか閉じるので、いつ — そしてなぜ — チャンネルが停止していたかを後から確認できます。
out_of_commission と一緒に、停止内容を説明する 3 つのオプションフィールドを渡せます:
これら 3 つのフィールドは
out_of_commission の遷移にのみ注釈 を付けます — フラグを変えない PATCH では無視されます。チャンネルが既に持っている値を再送しても、新しい停止としては扱われず、no-op となります。
out_of_commission として表示します。
out_of_commission はチャンネル作成時には設定できません — 作成エンドポイントは BAD_REQUEST で拒否します。まずチャンネルを作成し、その後 PATCH でサービス外にすることで、停止がインシデント履歴に記録されます。out_of_commission にしようとすると、CONFLICT(HTTP 409)が返ります — 先に測定をクローズしてください(end_time を PATCH します)。
修理中ではなく恒久的な退役の場合は、incident_category に decommissioned を使用します: インシデントは無期限にオープンのままとなり、修理時間の統計から除外されます。
チャンネルインシデント履歴
out_of_commission の遷移はすべて インシデント として記録されます — 1 回の停止につき 1 行で、チャンネルが停止したときに開かれ、復旧したときに閉じられます。この履歴を使って、ダウンタイムを監査したり、停止を原因に紐付けたり、チャンネル単位の平均修理時間を算出したりできます。
1 つのチャンネルにつき、同時にオープンにできるインシデントは 1 つだけです(現在進行中の停止)。既に停止しているチャンネルに out_of_commission: true を送っても no-op となり、既存の停止を新しい行に分割することはありません。
インシデントのフィールド
インシデント履歴を読み取る
HTTP API を使ってチャンネルのインシデントを一覧できます。新しい停止の順に返されます:items、count、total)です。より長い履歴をページングするには、limit(1〜100、既定 20)と offset を渡してください。
インシデント履歴が導入される前から存在していたチャンネルには、
is_estimated: true のバックフィル行が 1 行あります。その started_at はチャンネルの最終更新時刻であり、実際に停止が始まった時刻の上限にすぎません — これらの行は「遅くともこの時点までにはダウンしていた」という情報として扱い、修理時間の統計を計算する際にはスキップしてください。次のステップ
装置
サイト、サイクラー、チャンネルと、測定との紐付け。
ラボビュー
プロジェクトのライブなチャンネル占有状況。