A recovery object is triggered by a monitor state change or by a diagnostic object execution. The recovery workflow performs an action that can change the state of a monitored component.
You can query for recovery objects by defining criteria in the Microsoft.EnterpriseManagement.Configuration.MonitoringRecoveryCriteria class constructor. The criteria syntax is defined in Criteria Expression Syntax. The following property names are valid names that can be used in the criteria expression:
- Id
- Name
- Accessibility
- ManagementPackId
- Enabled
- TargetMonitoringClassId
- MonitorId
- ResetMonitor
- ExecuteOnState
- MonitoringDiagnosticId
- Remotable
- Category
- Timeout
- TimeAdded
- LastModified
- DisplayName
- Description
- HasNonCategoryOverride
The following code queries for all recovery objects that contain SystemCenter in their name.
C# | Copy Code |
---|---|
/// <summary> /// Query for recoveries. /// </summary> using System; using System.Collections.ObjectModel; using Microsoft.EnterpriseManagement; using Microsoft.EnterpriseManagement.Configuration; using Microsoft.EnterpriseManagement.Monitoring; namespace SDKSamples { class Program { static void Main(string[] args) { ManagementGroup mg = new ManagementGroup("localhost"); // The criteria specifies that you want to collect // all the recoveries that contain SystemCenter in their name. MonitoringRecoveryCriteria recoveryCriteria = new MonitoringRecoveryCriteria( "Name LIKE '%SystemCenter%'"); Console.WriteLine("Querying for data..."); ReadOnlyCollection<MonitoringRecovery> recoveries = mg.GetMonitoringRecoveries(recoveryCriteria); // Display information about each recovery. foreach (MonitoringRecovery recovery in recoveries) { Console.WriteLine("Recovery name: " + recovery.Name); Console.WriteLine("Status: " + recovery.Status.ToString()); Console.WriteLine("Category: " + recovery.Category); Console.WriteLine("Description: " + recovery.Description + Environment.NewLine); } } } } |
Send comments about this topic to Microsoft.