イベント契約
クエリが期待するフィールド
| フィールド | 種類 | なぜ存在するのか |
|---|---|---|
| timestamp_utc | Timestamp | リクエストの完了時刻 (UTC)。 |
| route_template | Utf8 | 境界付きルート テンプレート。生の URL ではありません。 |
| status_code | Int64 | HTTP の応答ステータス。 |
| environment | Utf8 | 導入環境。 |
クエリをコピーする
SELECT
route_template,
COUNT(*) AS requests,
SUM(CASE WHEN status_code >= 500 THEN 1 ELSE 0 END) AS errors,
60.0 * COUNT(*) / NULLIF(
date_part('epoch', MAX(timestamp_utc) - MIN(timestamp_utc)),
0
) AS requests_per_minute
FROM api_throughput_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
AND environment = 'production'
GROUP BY route_template
ORDER BY requests_per_minute DESC, route_template;この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。
クエリ結果
ルートごとに観測されたリクエストのスループット
検索では、観測されたリクエスト レートが最も高く、調査のための 5xx レスポンスもあります。
| route_template | requests | errors | requests_per_minute |
|---|---|---|---|
| /api/search | 6 | 1 | 0.2 |
| /api/checkout | 4 | 0 | 0.13 |
合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。
例を再現する
パブリックフィクスチャをダウンロードする
JSON バンドルには、型付きイベント コントラクトが含まれています。 reproducible 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。
SQL の仕組み
- 1制御されたルート テンプレートでグループ化すると、リソース識別子またはクエリ文字列ごとに 1 つのシリーズが回避されます。
- 2分母には各ルートの観測されたスパンが使用されます。これは、ルックバック ウィンドウ全体で割るよりも、まばらなルートの場合に安全です。
- 3エラー数は結果に残るため、トラフィックの急増と信頼性を同じ粒度で比較できます。
決定すべきエッジケース
- 生産チャートの場合は、完全な固定時間バケットに集計して、隣接する期間を直接比較できるようにします。
- リクエストが 1 つあるルートには観測されたスパンがありません。 NULLIF はレートを作成する代わりに null を返します。
- 顧客の需要を歪める可能性がある場合は、内部ヘルスチェックと合成トラフィックを分離します。
推奨されるダッシュボード
- 傾向: 5 分間のバケット全体における 1 分あたりのリクエスト数
- バー: requests_per_minute by route_template
- オーバーレイ: エラー率と展開マーカー
レシピを活用する
関連する機器とガイド
分析を続ける
実際のイベントで実行する
テーブルを作成し、フィールドを調整して、結果を保存します
無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。