イベント契約
クエリが期待するフィールド
| フィールド | 種類 | なぜ存在するのか |
|---|---|---|
| timestamp_utc | Timestamp | 接続ライフサイクル イベント時間。 |
| service | Utf8 | アプリケーションサービス。 |
| region | Utf8 | 導入地域。 |
| event_name | Utf8 | 開いた、閉じた、acquisition_timeout、または connection_error。 |
| request_id | Utf8 | 安全な影響を受けるリクエスト識別子。 |
| acquisition_ms | Float64 | 利用可能な場合、プールの取得期間。 |
クエリをコピーする
SELECT
service,
region,
SUM(CASE WHEN event_name = 'opened' THEN 1 ELSE 0 END) AS opened,
SUM(CASE WHEN event_name = 'closed' THEN 1 ELSE 0 END) AS closed,
SUM(CASE WHEN event_name = 'acquisition_timeout' THEN 1 ELSE 0 END)
AS acquisition_timeouts,
SUM(CASE WHEN event_name = 'connection_error' THEN 1 ELSE 0 END)
AS connection_errors,
COUNT(DISTINCT CASE
WHEN event_name IN ('acquisition_timeout', 'connection_error') THEN request_id
END) AS affected_requests
FROM database_connection_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY service, region
ORDER BY acquisition_timeouts DESC, connection_errors DESC;この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。
クエリ結果
接続取得のタイムアウト
us-east のチェックアウトは、タイムアウト数とライフサイクル ボリュームが最も高くなります。
| service | region | opened | closed | acquisition_timeouts | connection_errors | affected_requests |
|---|---|---|---|---|---|---|
| checkout-api | us-east | 1,840 | 1,792 | 91 | 18 | 104 |
| query-api | eu-west | 620 | 614 | 12 | 4 | 16 |
合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。
例を再現する
パブリックフィクスチャをダウンロードする
JSON バンドルには、型付きイベント コントラクトが含まれています。 illustrative 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。
SQL の仕組み
- 1ライフサイクル カウントにより、タイムアウトの症状のほかに再接続のチャーンが明らかになります。
- 2サービスとリージョンは、ルーティングと所有権のコンテキストを保持します。
- 3影響を受けるリクエストにより、インフラストラクチャのアクティビティがアプリケーションの影響に関連付けられたままになります。
決定すべきエッジケース
- 通常の自動スケーリングでは、予想どおりの開閉が行われます。
- バックグラウンド プールのメンテナンスのため、リクエスト ID が存在しない場合があります。
- プールのメトリックとデータベース接続の制限は補足的な証拠です。
推奨されるダッシュボード
- バー: acquisition_timeouts (サービス別)
- 傾向: 地域ごとの開店と閉店
- 表: affected_requests と接続エラー
レシピを活用する
関連する機器とガイド
分析を続ける
遅いデータベース クエリをフィンガープリントで検出する
生の SQL やパラメーターを保存せずに、正規化されたデータベース操作を低速クエリ レート、平均継続時間、観測された最悪の継続時間によってランク付けします。
レシピを開くデータベース接続プールの飽和状態を測定する
平均プール使用率、キューに入れられた取得待機、タイムアウト、およびアプリケーション サービスごとのアイドル容量を測定します。
レシピを開くデータベーストランザクションのロールバック率の計算
エラー カテゴリ、期間、影響を受けるアカウントを維持しながら、コミットされたトランザクションとロールバックされたトランザクションをサービスごとに比較します。
レシピを開く実際のイベントで実行する
テーブルを作成し、フィールドを調整して、結果を保存します
無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。