syspolicy_policy_execution_history_details (Transact-SQL)
実行された条件式、式の対象、各実行の結果、およびエラーの詳細 (発生した場合) を表示します。次の表では、syspolicy_execution_history_details ビューの列について説明します。
列名 |
データ型 |
説明 |
---|---|---|
detail_id |
bigint |
このレコードの識別子。各レコードは、ポリシーに含まれる 1 つの条件式に関する評価または適用の試行を表します。複数の対象に適用された場合、条件ごと、対象ごとに明細レコードが作成されます。 |
history_id |
bigint |
履歴イベントの識別子。各履歴イベントは、ポリシー実行の試行 1 回を表します。条件には複数の条件式や複数の対象が含まれる場合があるため、1 つの history_id に対して複数の詳細レコードが作成されることもあります。このビューを syspolicy_policy_execution_history ビューと結合するには history_id 列を使用します。 |
target_query_expression |
nvarchar(max) |
ポリシーおよび syspolicy_policy_execution_history ビューの対象。 |
execution_date |
datetime |
この詳細レコードが作成された日時。 |
result |
bit |
この対象と条件式の評価が成功したか失敗したかを表します。 0 (成功) または 1 (失敗) |
result_detail |
nvarchar(max) |
結果メッセージ。ファセットによって提供されている場合のみ利用可能です。 |
exception_message |
nvarchar(max) |
例外が発生した場合に、その例外によって生成されたメッセージ。 |
exception |
nvarchar(max) |
例外が発生した場合の説明。 |
説明
ポリシー ベースの管理のトラブルシューティングを行う場合に、失敗した対象と条件式の組み合わせ、失敗した日時、および関連するエラーを調べるには、syspolicy_policy_execution_history_details ビューに対してクエリを実行します。
次のクエリでは、syspolicy_policy_execution_history_details ビューを syspolicy_policy_execution_history_details および syspolicy_policies の各ビューと組み合わせて、ポリシーの名前、条件の名前、およびエラーの詳細を表示しています。
SELECT Pol.name AS Policy,
Cond.name AS Condition,
PolHistDet.target_query_expression,
PolHistDet.execution_date,
PolHistDet.result,
PolHistDet.result_detail,
PolHistDet.exception_message,
PolHistDet.exception
FROM msdb.dbo.syspolicy_policies AS Pol
JOIN msdb.dbo.syspolicy_conditions AS Cond
ON Pol.condition_id = Cond.condition_id
JOIN msdb.dbo.syspolicy_policy_execution_history AS PolHist
ON Pol.policy_id = PolHist.policy_id
JOIN msdb.dbo.syspolicy_policy_execution_history_details AS PolHistDet
ON PolHist.history_id = PolHistDet.history_id
WHERE PolHistDet.result = 0 ;
権限
msdb データベースの PolicyAdministratorRole ロールのメンバシップが必要です。