SLO SLA ステータスと 24 時間トレンド¶
POST /api/v1/slo/runtime/list
概要¶
現在の API Key が所属するワークスペース内の SLO について、現在の SLA ステータスと、指定時刻までの 24 時間のステータストレンドを一括取得します。モニター型 SLO とメトリクス型 SLO に対応しています。
Body リクエストパラメータ¶
| パラメータ名 | 型 | 必須 | 説明 |
|---|---|---|---|
| sloUUIDs | array | Y | SLO UUID のリスト。1~100 件を指定します。すべての SLO は現在のワークスペースに所属し、削除されていない必要があります。 |
| asOf | integer | クエリの基準時刻。Unix 秒のタイムスタンプ。正の整数で、現在時刻より後の時刻は指定できません。省略時はサーバーの現在時刻を使用します。 |
パラメータの補足説明¶
- ワークスペースの SLO 管理権限が必要です。
DF-API-KEYリクエストヘッダーで認証します。 runtime24h.pointsは 24 個の時間トレンドポイントを返します。各ポイントのステータスは、そのポイントの終了時刻に対応する SLO の統計期間に基づいて計算されます。統計期間は SLO のcheckRange(7 日または 30 日)によって決まり、この 1 時間内の可用性のみを計算するわけではありません。current.statusはnormal、degraded、incident、unknownのいずれかです。可用性がgoalに達している場合はnormal、minGoalには達しているがgoal未満の場合はdegraded、minGoal未満の場合はincident、可用性の結果がない場合はunknownです。- SLO が無効、
groupByによるグループ化が設定されている、またはデータ取得に失敗した場合、その SLO のステータスはunknown、dataStateはunavailableを返します。ステータスとデータの完全性を併せて確認してください。HTTP の成功だけでサービスが正常と判断しないでください。 - SLO が存在しない、削除されている、または現在のワークスペースに属さない場合、リクエスト全体が失敗します。
リクエスト例¶
curl 'https://openapi.guance.com/api/v1/slo/runtime/list' \
-H 'DF-API-KEY: <DF-API-KEY>' \
-H 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{"sloUUIDs":["monitor_xxx"]}'
レスポンス¶
レスポンスは共通レスポンス構造を使用します。content には以下のフィールドが含まれます。
| フィールド | 型 | 説明 |
|---|---|---|
| asOf | integer | 今回のクエリで使用した基準時刻。単位は秒です。 |
| data | array | 各 SLO の結果。sloUUID でリクエスト項目と対応付け、返却順序に依存しないでください。 |
| data[*].sloUUID | string | SLO UUID。 |
| data[*].current | object | 現在の SLA ステータス。status、dataState、updatedAt を含みます。 |
| data[*].runtime24h | object | トレンドオブジェクト。startTime、endTime、dataState、points を含みます。開始時刻と終了時刻はそれぞれ asOf - 86400 と asOf です。 |
| data[*].runtime24h.points | array | 24 個のトレンドポイント。時間の昇順で並んでいます。 |
| data[].runtime24h.points[].startTime | integer | この時間帯の開始時刻。単位は秒です。 |
| data[].runtime24h.points[].endTime | integer | この時間帯の終了時刻。このトレンドポイントのステータス取得時刻でもあります。単位は秒です。 |
| data[].runtime24h.points[].status | string | その時点の SLA ステータス。current.status と同じ列挙値です。 |
| data[].runtime24h.points[].dataState | string | このポイントのデータ状態: complete、no_data、unavailable。 |
| data[].runtime24h.points[].availability | object | 統計期間の可用性情報。value、dataState、updatedAt、startTime、endTime、dayRange を含みます。value は利用可能な結果がない場合は null です。 |
availability.startTime / endTime は実際の可用性の統計期間を示し、dayRange は 7d または 30d です。これらはトレンドポイントの 1 時間の表示期間とは異なります。updatedAt はデータの更新時刻で、有効な結果がない場合は null になることがあります。