syspolicy_policy_execution_history_details (Transact-SQL)
Показывает выполненные условные выражения, целевые объекты выполнения выражений, результат каждого выполнения и сведения об ошибках, возникших при выполнении. В следующей таблице описываются столбцы представления syspolicy_execution_history_details.
Имя столбца |
Тип данных |
Описание |
---|---|---|
detail_id |
bigint |
Идентификатор записи. Каждая запись соответствует попытке выполнить или обеспечить одно условное выражение из политики. Если условие применялось к нескольким целевым объектам, для каждого условия будет выведено несколько детализированных записей — по одной на целевой объект. |
history_id |
bigint |
Идентификатор события в журнале. Каждое событие в журнале соответствует одной попытке выполнения политики. Поскольку одно условие может включать несколько условных выражений и несколько целевых объектов, history_id может создавать несколько детализированных записей. Столбец history_id можно использовать для соединения этого представления с представлением syspolicy_policy_execution_history. |
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 ;
Разрешения
Необходимо членство в роли PolicyAdministratorRole базы данных msdb.
См. также
Справочник
Административные представления на основе политик (Transact-SQL)
Основные понятия
Администрирование серверов с помощью управления на основе политик