活動合約
查詢期望的欄位
| 欄位 | 型別 | 為什麼存在 |
|---|---|---|
| timestamp_utc | Timestamp | 連線生命週期事件時間。 |
| service | Utf8 | 應用服務。 |
| region | Utf8 | 部署區域。 |
| event_name | Utf8 | 開啟、關閉、acquisition_timeout 或 connection_error。 |
| request_id | Utf8 | 安全受影響的請求識別符號。 |
| acquisition_ms | Float64 | 池獲取持續時間(如果可用)。 |
DataFusion SQL
複製查詢
sql
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 的結帳超時次數和生命週期量最高。
checkout-api
91
comparison 18
query-api
12
comparison 4
| 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 |
綜合範例輸出。在將其用於操作決策之前,針對您自己的事件架構和閾值執行查詢。
SQL 是如何工作的
- 1生命週期計數揭示了除了超時症狀之外的重新連線流失。
- 2服務和區域保留路由和所有權上下文。
- 3受影響的請求使基礎設施活動與應用程式影響相關聯。
需要決定的邊緣情況
- 正常的自動縮放會建立預期的開啟和關閉。
- 後台池維護可能缺少請求 ID。
- 池指標和資料庫連線限制是補充證據。
推薦儀表板
- 酒吧:acquisition_timeouts(按服務)
- 趨勢:按地區開盤和收盤
- 資料表:affected_requests 和連線錯誤
讓查詢範例發揮作用
相關埋點和指南
繼續分析
在真實事件中執行它
建立資料表,調整欄位並儲存結果
免費開始,傳送結構化事件,並將查詢結果用作圖表、共享儀表板小工具或警示輸入。