sp_syspolicy_purge_health_state (Transact-SQL)
Applies to: SQL Server
Deletes the policy health states in Policy-Based Management. Policy health states are visual indicators within Object Explorer (a scroll symbol with a red "X") that help you to determine which nodes have failed a policy evaluation.
Transact-SQL syntax conventions
Syntax
sp_syspolicy_purge_health_state
[ @target_tree_root_with_id = ] 'target_tree_root_with_id'
[ ; ]
Arguments
[ @target_tree_root_with_id = ] 'target_tree_root_with_id'
Represents the node in Object Explorer where you want to clear the health state. @target_tree_root_with_id is nvarchar(400), with a default of NULL
.
You can specify values from the target_query_expression_with_id column of the msdb.dbo.syspolicy_system_health_state
system view.
Return code values
0
(success) or 1
(failure).
Remarks
You must run sp_syspolicy_purge_health_state
in the context of the msdb
system database.
If you run this stored procedure without any parameters, the system health state is deleted for all nodes in Object Explorer.
Permissions
Requires membership in the PolicyAdministratorRole fixed database role.
Important
Possible elevation of credentials: Users in the PolicyAdministratorRole role can create server triggers and schedule policy executions that can affect the operation of the instance of the Database Engine. For example, users in the PolicyAdministratorRole role can create a policy that can prevent most objects from being created in the Database Engine. Because of this possible elevation of credentials, the PolicyAdministratorRole role should be granted only to users who are trusted with controlling the configuration of the Database Engine.
Examples
The following example deletes the health states for a specific node in Object Explorer.
EXEC msdb.dbo.sp_syspolicy_purge_health_state
@target_tree_root_with_id = 'Server/Database[@ID=7]';
GO