活動合約
查詢期望的欄位
| 欄位 | 型別 | 為什麼存在 |
|---|---|---|
| timestamp_utc | Timestamp | 資料庫故障時間。 |
| database_system | Utf8 | 資料庫系統。 |
| operation_name | Utf8 | 受控的應用程式操作。 |
| sqlstate | Utf8 | 可移植的 SQLSTATE 程式碼(如果可用)。 |
| release | Utf8 | 應用發布。 |
| request_id | Utf8 | 安全父請求識別符號。 |
DataFusion SQL
複製查詢
sql
SELECT
database_system,
release,
operation_name,
sqlstate,
COUNT(*) AS failures,
COUNT(DISTINCT request_id) AS affected_requests
FROM database_error_events
WHERE timestamp_utc >= now() - INTERVAL '7 days'
GROUP BY database_system, release, operation_name, sqlstate
ORDER BY failures DESC, affected_requests DESC;此只讀查詢是針對空型別資料表計劃和執行的 阿帕奇 DataFusion 45.2.0。確定性樣本輸出是綜合的並單獨審查;根據您自己的資料驗證欄位型別、閾值和業務定義。 閱讀測試方法。
查詢結果
SQLSTATE 導致的資料庫故障
結帳時的序列化失敗在該版本的資料庫錯誤中占主導地位。
40001
184
comparison 176
23505
62
comparison 62
| database_system | release | operation_name | sqlstate | failures | affected_requests |
|---|---|---|---|---|---|
| postgresql | api-88 | checkout | 40001 | 184 | 176 |
| postgresql | api-88 | project-create | 23505 | 62 | 62 |
綜合範例輸出。在將其用於操作決策之前,針對您自己的事件架構和閾值執行查詢。
SQL 是如何工作的
- 1SQLSTATE 比對原始錯誤字串進行分組更安全、更穩定。
- 2操作名稱保留應用程式所有權。
- 3不同的請求估計面向客戶的影響。
需要決定的邊緣情況
- 並非每個驅動程式都一致地公開 SQLSTATE。
- 相同的 SQLSTATE 可能有不同的原因。
- 儲存經過清理的錯誤類別,而不是完整的語句值或伺服器訊息。
推薦儀表板
- 條形:SQLSTATE 失敗
- 趨勢:按版本劃分的失敗情況
- 資料表:受影響的操作和請求計數
讓查詢範例發揮作用
相關埋點和指南
繼續分析
在真實事件中執行它
建立資料表,調整欄位並儲存結果
免費開始,傳送結構化事件,並將查詢結果用作圖表、共享儀表板小工具或警示輸入。