適用対象:
Sql Server 2022 (16.x) 以降のバージョン
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Microsoft Fabric のソフトウェア ハウス
Microsoft Fabric のSQL データベース
変更フィード、スナップショット、または増分変更発行プロセスから最近のエラーを返します。
この動的管理ビューは、次の目的で使用されます。
列名 |
データ型 |
説明 |
session_id |
int |
これはログ閲覧者の履歴キャッシュによって維持される session_id です。 |
source_task |
tinyint |
内部変更フィード タスク ID。 0 = UNDEFINED 1 = TIMER 2 = CAPTURE 3 = PUBLISH 4 = COMMIT 5 = SNAPSHOT |
table_id |
int |
関連するテーブルの object_id 。 |
table_group_id |
uniqueidentifier |
テーブル グループの一意の識別子。 これはセットアップ フローによって生成される GUID です。 |
capture_phase_number |
int |
ログ閲覧者のスキャン フェーズ。キャプチャ ジョブが完了し、発行またはコミットがまだ進行中の場合、フェーズはまだ最後のスキャン (バッチ処理フェーズ 7) のままです。 詳細については、「batch_processing_phase 」の を参照してください。 スナップショットには適用されません。 |
entry_time |
datetime |
エラーがログに記録された日時。 この値は、SQL エラー ログのタイムスタンプに対応しています。 SQL Server の場合、この時刻は現地時間で報告されます。 Azure SQL Database の場合、タイムゾーンは UTC です。 |
error_number |
int |
エラー メッセージの ID。 |
error_severity |
int |
メッセージの重大度レベル (1 から 25)。 |
error_state |
int |
エラーの状態番号。 |
error_message |
nvarchar(1024) |
エラーのメッセージ テキスト。 |
batch_start_lsn |
nvarchar(23) |
エラー発生時に処理されていた行の開始 LSN 値です。
0 = ログ スキャン セッション内でエラーが発生しませんでした。 |
batch_end_lsn |
nvarchar(23) |
エラー発生時に処理されていた行の End LSN 値。
0 = ログ スキャン セッション内でエラーが発生しませんでした。 |
tran_begin_lsn |
nvarchar(23) |
失敗したトランザクションの Begin_lsn 。 スナップショット エラーの場合は NULL になります。 |
tran_commit_lsn |
nvarchar(23) |
失敗が発生した変更データ行セット内の変更行のコミット LSN。 スナップショット エラーの場合は NULL になります。 |
sequence_value |
nvarchar(23) |
エラー発生時に処理されていた行の LSN 値です。
0 = ログ スキャン セッション内でエラーが発生しませんでした。 |
command_id |
int |
発行に失敗した変更行のコマンド ID。 スナップショット エラーの場合は NULL になります。 |
この DMV には、過去 32 セッションのエラーが表示されます。 1 つのセッションに複数のエラーが含まれる場合があります。たとえば、ランディング ゾーン エラーに対する再試行などです。 この DMV には、スナップショットおよび増分変更発行プロセス中に発生したエラーも表示されます。
アクセス許可
sys.dm_change_feed_errors
動的管理ビューに対してクエリを実行するには、VIEW DATABASE STATE または VIEW DATABASE PERFORMANCE STATE 権限が必要です。 動的管理ビューの詳細については、動的管理ビューと関数 に関する記事を参照してください。
Fabric SQL データベースでは、この DMV に対してクエリを実行するために、データベースの VIEW DATABASE STATE をユーザーに付与する必要があります。 または、任意の ファブリック ワークスペースのメンバー はこの DMV に対してクエリを実行できます。
例
sys.dm_change_feed_errors
を使用して、最近発生したエラーを確認します。
SELECT *
FROM sys.dm_change_feed_errors
ORDER BY entry_time DESC;
関連するコンテンツ