跳至主要內容
Telemetry
資料庫可靠性 SQL查詢範例

按版本追蹤資料庫遷移失敗

在完成部署之前,按應用程式版本比較資料庫遷移的成功、失敗、回滾和持續時間。

入門database_migration_events已審查 2026-07-28測試用 阿帕奇 DataFusion 45.2.0

審閱者 Telemetry產品團隊 . SQL 相容性、事件契約、合成輸出和操作注意事項. 審查標準和所有權

問題已回答

哪些版本包含失敗或回滾的資料庫遷移?

部署可能看起來很健康,但部分應用的遷移會使後續應用程式請求面臨風險。記錄一個終端遷移結果可以檢查發布準備情況。

活動合約

查詢期望的欄位

欄位型別為什麼存在
timestamp_utcTimestamp終端遷移時間(UTC)。
migration_idUtf8來自原始碼控制的穩定遷移識別符號。
serviceUtf8執行遷移的服務或部署作業。
database_nameUtf8批准的邏輯資料庫名稱。
releaseUtf8應用程式或基礎設施發布。
statusUtf8成功、失敗或 rolled_back。
duration_msFloat64遷移執行持續時間。
error_typeUtf8沒有原始資料庫輸出的受控故障類別。
environmentUtf8部署環境。
DataFusion SQL

複製查詢

sql
SELECT
  release,
  service,
  database_name,
  COUNT(*) AS migrations,
  SUM(CASE WHEN status = 'success' THEN 1 ELSE 0 END) AS successful,
  SUM(CASE WHEN status = 'failed' THEN 1 ELSE 0 END) AS failed,
  SUM(CASE WHEN status = 'rolled_back' THEN 1 ELSE 0 END) AS rolled_back,
  100.0 * SUM(CASE WHEN status = 'success' THEN 1 ELSE 0 END)
    / NULLIF(COUNT(*), 0) AS success_rate_pct,
  AVG(duration_ms) AS average_duration_ms
FROM database_migration_events
WHERE timestamp_utc >= now() - INTERVAL '30 days'
  AND environment = 'production'
GROUP BY release, service, database_name
ORDER BY release DESC;

此只讀查詢是針對空型別資料表計劃和執行的 阿帕奇 DataFusion 45.2.0。確定性樣本輸出是綜合的並單獨審查;根據您自己的資料驗證欄位型別、閾值和業務定義。 閱讀測試方法。

查詢結果

按版本劃分的遷移成功率

較新的版本包含失敗的遷移和回滾的遷移,不應視為完成。

releaseservicedatabase_namemigrationssuccessfulfailedrolled_backsuccess_rate_pctaverage_duration_ms
2026.07.2application-apiapp_production5311601,470
2026.07.1application-apiapp_production5500100890

綜合範例輸出。在將其用於操作決策之前,針對您自己的事件架構和閾值執行查詢。

Migration success rate by release:來自 Track Database Migration Failures by Release 範例結果的合成 success_rate_pct 值的靜態圖表
確定性範例輸出的可索引 SVG。下載它以獲取帶有歸屬的文章、操作手冊或設計評論。

重現範例

下載公共裝置

JSON 包包含型別化事件契約, reproducible 輸入行、確切的 SQL、預期輸出、審閱註釋和引擎版本。 CSV 包含顯示的結果。

SQL 是如何工作的

  1. 1每次遷移的一個終端行可防止啟動和重試事件導致分母膨脹。
  2. 2失敗和回滾結果仍然是分開的,因為成功回滾仍然意味著遷移未交付。
  3. 3版本、服務和資料庫確定了需要審查的確切部署邊界。

需要決定的邊緣情況

  • 某些遷移工具會自動重試。在發出一個最終結果時單獨保留嘗試計數。
  • 成功的遷移在邏輯上仍然可能是錯誤的;將此檢視與應用程式執行狀況和部署後驗證配對。
  • 不要記錄原始 DDL、連線字串或不受限制的資料庫錯誤文字。

推薦儀表板

  • 條形:success_rate_pct(按版本)
  • 資料表:失敗和回滾的遷移 ID
  • 趨勢:遷移持續時間和部署計數

警示指導

當任何生產遷移失敗或回滾的最終結果時,阻止推出完成。

讀取警示設定

讓查詢範例發揮作用

相關埋點和指南

繼續分析

在真實事件中執行它

建立資料表,調整欄位並儲存結果

免費開始,傳送結構化事件,並將查詢結果用作圖表、共享儀表板小工具或警示輸入。

獲取 API 金鑰