Cluster object property changed

Microsoft.Windows.10.0.Cluster.Discovery.ClusterObjectPropertyChanged (Rule)

This rule forces cluster discovery to run if one of the cluster object properties changes

Knowledge Base article:

Summary

This rule checks for WMI Property changes applied to Windows Server Cluster Service.

Element properties:

TargetMicrosoft.Windows.10.0.Cluster.Monitoring.Service
CategoryDiscovery
EnabledFalse
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
WmiEventProvider DataSource Microsoft.Windows.WmiEventProvider Default
RunDiscovery WriteAction Microsoft.Windows.Cluster.10.0.Monitoring.Discovery.Action Default
RunWindows64ResourceGroupDiscovery WriteAction Microsoft.Windows.10.0.Cluster.Monitoring.ResourceGroupDiscovery.Action Default

Source Code:

<Rule ID="Microsoft.Windows.10.0.Cluster.Discovery.ClusterObjectPropertyChanged" Enabled="false" Target="Microsoft.Windows.10.0.Cluster.Monitoring.Service" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Discovery</Category>
<DataSources>
<DataSource ID="WmiEventProvider" TypeID="Windows!Microsoft.Windows.WmiEventProvider">
<NameSpace>ROOT\MSCLUSTER</NameSpace>
<Query>SELECT TIME_CREATED, EventTypeMajor, EventTypeMinor, EventObjectName, EventObjectType, EventObjectPath, EventProperty FROM MSCluster_EventPropertyChange</Query>
<PollInterval>360</PollInterval>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="RunDiscovery" TypeID="Microsoft.Windows.Cluster.10.0.Monitoring.Discovery.Action">
<TimeoutSeconds>300</TimeoutSeconds>
<OSVersion>10.</OSVersion>
<DiscoverySourceId>$MPElement[Name='Microsoft.Windows.10.0.Cluster.Monitoring.Discovery']$</DiscoverySourceId>
<DiscoverUnusedNetworks>false</DiscoverUnusedNetworks>
<NetworkContainsInterfaceGuid>$MPElement[Name='Microsoft.Windows.Cluster.Network.Contains.Microsoft.Windows.10.0.Cluster.NetworkInterface']$</NetworkContainsInterfaceGuid>
<NetworkInterfaceTypeGuid>$MPElement[Name='Microsoft.Windows.10.0.Cluster.NetworkInterface']$</NetworkInterfaceTypeGuid>
<NetworkInterfacePropClusterNameGuid>$MPElement[Name='Microsoft.Windows.10.0.Cluster.NetworkInterface']/ClusterName$</NetworkInterfacePropClusterNameGuid>
<NetworkInterfacePropNameGuid>$MPElement[Name='Microsoft.Windows.10.0.Cluster.NetworkInterface']/NetworkInterfaceName$</NetworkInterfacePropNameGuid>
<DiscoverCSVResources>false</DiscoverCSVResources>
<DiscoverNonCSVResources>false</DiscoverNonCSVResources>
<ResourceGroupDiscoveryLimit>300</ResourceGroupDiscoveryLimit>
<AppendClusterNameToResourceGroupName>true</AppendClusterNameToResourceGroupName>
<ComputerName>$Target/Host/Property[Type='Windows!Microsoft.Windows.Computer']/PrincipalName$</ComputerName>
<NetBiosName>$Target/Host/Property[Type='Windows!Microsoft.Windows.Computer']/NetbiosComputerName$</NetBiosName>
</WriteAction>
<WriteAction ID="RunWindows64ResourceGroupDiscovery" TypeID="Microsoft.Windows.10.0.Cluster.Monitoring.ResourceGroupDiscovery.Action">
<DiscoverySourceId>$MPElement[Name='Microsoft.Windows.10.0.Cluster.ResourceGroups.Discovery']$</DiscoverySourceId>
<ClusterName>$Target/Property[Type='ClusLibrary!Microsoft.Windows.Cluster.Monitoring.Service']/ClusterName$</ClusterName>
<Timeout>300</Timeout>
</WriteAction>
</WriteActions>
</Rule>