Share via


syspolicy_policy_execution_history_details (Transact-SQL)

Muestra las expresiones de condiciones que se ejecutaron, los destinos de las expresiones, el resultado de cada ejecución y detalles sobre los errores, si se produjo alguno. En la tabla siguiente se describen las columnas de la vista syspolicy_execution_history_details.

Nombre de la columna

Tipo de datos

Descripción

detail_id

bigint

Identificador de este registro. Cada registro representa el intento para evaluar o exigir una expresión de condición en una directiva. Si se aplica a varios destinos, cada condición tendrá un registro de detalle para cada uno.

history_id

bigint

Identificador del evento del historial. Cada evento del historial representa un intento de ejecutar una directiva. Dado que una condición puede tener varias expresiones de condiciones y varios destinos, un identificador history_id puede crear varios registros de detalle. Utilice la columna history_id para unir esta vista a la vista syspolicy_policy_execution_history.

target_query_expression

nvarchar(max)

Destino de la directiva y vista syspolicy_policy_execution_history.

execution_date

datetime

Fecha y hora cuando se creó este registro de detalle.

result

bit

Corrección o error de este destino y evaluación de la expresión de condición:

0 (correcto) o 1 (error).

result_detail

nvarchar(max)

Mensaje del resultado. Sólo está disponible si lo proporciona la faceta.

exception_message

nvarchar(max)

Mensaje generado por la excepción, si se produjo alguna.

exception

nvarchar(max)

Descripción de la excepción, si se produjo alguna.

Comentarios

Cuando solucione problemas de la administración basada en directivas, consulte la vista syspolicy_policy_execution_history_details para determinar en qué combinaciones de expresión de condición y destino se produjo un error y cuándo, y revise los errores relacionados.

La consulta siguiente combina la vista syspolicy_policy_execution_history_details con las vistas syspolicy_policy_execution_history_details y syspolicy_policies para mostrar el nombre de la directiva, el nombre de la condición y detalles sobre los errores.

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 ;

Permisos

Requiere la pertenencia a la función PolicyAdministratorRole en la base de datos msdb.