イベント契約
クエリが期待するフィールド
| フィールド | 種類 | なぜ存在するのか |
|---|---|---|
| timestamp_utc | Timestamp | UTC での端末移行時間。 |
| migration_id | Utf8 | ソース管理からの安定した移行識別子。 |
| service | Utf8 | 移行を実行したサービスまたはデプロイ ジョブ。 |
| database_name | Utf8 | 承認された論理データベース名。 |
| release | Utf8 | アプリケーションまたはインフラストラクチャのリリース。 |
| status | Utf8 | 成功、失敗、または rolled_back。 |
| duration_ms | Float64 | 移行の実行期間。 |
| error_type | Utf8 | 生のデータベース出力を使用しない制御された障害カテゴリ。 |
| environment | Utf8 | 導入環境。 |
クエリをコピーする
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。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。
クエリ結果
リリースごとの移行成功率
新しいリリースには失敗した移行とロールバックされた移行の両方が含まれているため、完了したものとして扱うべきではありません。
| release | service | database_name | migrations | successful | failed | rolled_back | success_rate_pct | average_duration_ms |
|---|---|---|---|---|---|---|---|---|
| 2026.07.2 | application-api | app_production | 5 | 3 | 1 | 1 | 60 | 1,470 |
| 2026.07.1 | application-api | app_production | 5 | 5 | 0 | 0 | 100 | 890 |
合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。
例を再現する
パブリックフィクスチャをダウンロードする
JSON バンドルには、型付きイベント コントラクトが含まれています。 reproducible 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。
SQL の仕組み
- 1移行ごとに 1 つのターミナル行により、開始イベントと再試行イベントの分母が大きくなるのを防ぎます。
- 2ロールバックが成功しても移行が出荷されなかったことを意味するため、失敗した結果とロールバックされた結果は別々のままです。
- 3リリース、サービス、データベースにより、レビューが必要な正確なロールアウト境界が特定されます。
決定すべきエッジケース
- 一部の移行ツールは自動的に再試行します。 1 つの最終結果を出力する間、試行回数を個別に保存します。
- 移行が成功しても、論理的に間違っている可能性があります。このビューをアプリケーションの正常性およびデプロイ後の検証と組み合わせます。
- 生の DDL、接続文字列、または無制限のデータベース エラー テキストをログに記録しないでください。
推奨されるダッシュボード
- バー: リリースごとに success_rate_pct
- 表: 失敗した移行 ID とロールバックされた移行 ID
- 傾向: デプロイごとの移行期間と数
レシピを活用する
関連する機器とガイド
分析を続ける
実際のイベントで実行する
テーブルを作成し、フィールドを調整して、結果を保存します
無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。