本文へ移動
Telemetry
API の信頼性 SQL レシピ

SLO に対する API の可用性の測定

毎日の可用性を計算し、サービスが明示的な目的を達成したかどうかを示します。

中級者api_requestsレビュー済み 2026-07-27テスト済み アパッチ DataFusion 45.2.0

レビュー者 Telemetry 製品チーム . SQL の互換性、イベント コントラクト、合成出力、および操作上の注意事項. 基準と所有権を確認する

質問に回答しました

各サービスは 1 日あたりの可用性目標を達成しましたか?

SLO は、信頼性率を決定境界に変換します。良好なイベント、全体的なイベント、および目標をまとめて管理することで、コンプライアンス レビューを監査可能にします。

イベント契約

クエリが期待するフィールド

フィールド種類なぜ存在するのか
timestamp_utcTimestampリクエストの完了時間。
serviceUtf8安定したサービス名。
slo_eligibleBooleanリクエストが SLO 分母に属するかどうか。
slo_goodBooleanリクエストが SLO を満たしたかどうか。
DataFusion SQL

クエリをコピーする

sql
SELECT
  date_trunc('day', timestamp_utc) AS day,
  service,
  SUM(CASE WHEN slo_eligible THEN 1 ELSE 0 END) AS eligible_requests,
  SUM(CASE WHEN slo_eligible AND slo_good THEN 1 ELSE 0 END)
    AS good_requests,
  100.0 * SUM(CASE WHEN slo_eligible AND slo_good THEN 1 ELSE 0 END)
    / NULLIF(SUM(CASE WHEN slo_eligible THEN 1 ELSE 0 END), 0)
    AS availability_pct,
  99.9 AS objective_pct
FROM api_requests
WHERE timestamp_utc >= now() - INTERVAL '30 days'
GROUP BY date_trunc('day', timestamp_utc), service
HAVING SUM(CASE WHEN slo_eligible THEN 1 ELSE 0 END) > 0
ORDER BY day, service;

この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。

クエリ結果

毎日のサービスの利用可能性

クエリ API は、7 月 26 日に 99.9% の目標を達成できませんでした。

dayserviceeligible_requestsgood_requestsavailability_pctobjective_pct
2026-07-25query_api182,400182,27499.9399.9
2026-07-26query_api176,820176,50199.8299.9
2026-07-27ingestion_api248,100247,97699.9599.9

合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。

Daily service availability: Measure API Availability Against an SLO 結果例からの合成 availability_pct 値の静的チャート
決定論的な出力例のインデックス可能な SVG。記事、ランブック、または出典を明示した設計レビューのためにダウンロードしてください。

例を再現する

パブリックフィクスチャをダウンロードする

JSON バンドルには、型付きイベント コントラクトが含まれています。 illustrative 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。

SQL の仕組み

  1. 1明示的な適格性により、分母がヘルスチェックやサポートされていないトラフィックから保護されます。
  2. 2slo_good は、目的で正確さと遅延の両方が必要な場合、両方をエンコードできます。
  3. 3目標は観察値の横に返されるため、チャートとレビューで意思決定の境界が維持されます。

決定すべきエッジケース

  • ページングおよびコンプライアンス レポートには完全なタイム バケットを使用します。
  • 除外されたトラフィックを文書化して、サイレント分母の変更によって SLO が改善されないようにします。
  • 日次ビューはレビューに役立ちます。高速エラー バジェット アラートには通常、より短いウィンドウが必要です。

推奨されるダッシュボード

  • トレンド: availability_pct (目標ラインあり)
  • 統計: 選択した期間の準拠日数
  • 表: サービス日を欠席した場合の不良イベント

アラートガイダンス

ページングにはマルチウィンドウのエラーバジェットバーンアラートを使用し、コンプライアンスレビューにはこの日次ビューを使用します。

アラート設定を読む

レシピを活用する

関連する機器とガイド

分析を続ける

実際のイベントで実行する

テーブルを作成し、フィールドを調整して、結果を保存します

無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。

API キーを取得する