Resource Group State Monitor

Microsoft.Windows.Cluster.HostedGroup.StateMonitoring (UnitMonitor)

Implements monitor for group monitored by local cluster node.

Knowledge Base article:

Summary

This monitor checks the status of cluster resource group as it is known to local cluster node.

On Windows 2008 clusters, this monitor will be disabled for the Available Storage resource group using an override. If you wish to enable this monitor for the Available Storage resource group, you will need to create another override and mark it as enforced.

State

Operations Manager State

Description

ClusterGroupOnline

Success

All of the resources in the group are online.

ClusterGroupPartialOnline

Warning

At least one resource in the group is online. No resources are pending or failed.

ClusterGroupPending

Warning

At least one resource in the group is in a pending state. There are no failed resources.

ClusterGroupStateUnknown

Error

The state of the group is unknown.

ClusterGroupOffline

Error

All of the resources in the group are offline or there are no resources in the group.

ClusterGroupFailed

Error

At least one resource in the group has failed.

Causes

An unhealthy state for this monitor may indicate a problem with this resource group.

Resolutions

You can attempt to bring the resource group online by using the following link:

Bring online

Element properties:

TargetMicrosoft.Windows.Cluster.HostedGroup
Parent MonitorMicrosoft.Windows.Cluster.HostedGroup.State.HealthRollup
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
Monitor TypeMicrosoft.Windows.Cluster.CheckStatePoll
RemotableTrue
AccessibilityPublic
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Cluster.HostedGroup.StateMonitoring" Accessibility="Public" Enabled="onEssentialMonitoring" Target="ClusLibrary!Microsoft.Windows.Cluster.HostedGroup" ParentMonitorID="Microsoft.Windows.Cluster.HostedGroup.State.HealthRollup" Remotable="true" Priority="Normal" TypeID="ClusLibrary!Microsoft.Windows.Cluster.CheckStatePoll" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Online" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="Partial" HealthState="Warning"/>
<OperationalState ID="Error" MonitorTypeStateID="NotOnline" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ClusterObjectName>$Target/Property[Type='ClusLibrary!Microsoft.Windows.Cluster.HostedGroup']/EscapedGroupName$</ClusterObjectName>
<PollInterval>300</PollInterval>
<SyncTime>12:08</SyncTime>
<ClusterObjectClass>MSCLUSTER_ResourceGroup</ClusterObjectClass>
<OnlineExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</OnlineExpression>
<OnlineExpressionOnDemand>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</OnlineExpressionOnDemand>
<PartialExpression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">3</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">4</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</PartialExpression>
<PartialExpressionOnDemand>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">3</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">4</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</PartialExpressionOnDemand>
<NotOnlineExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">3</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">4</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</NotOnlineExpression>
<NotOnlineExpressionOnDemand>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">3</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='State']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">4</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</NotOnlineExpressionOnDemand>
<WMIFields>Name, State</WMIFields>
</Configuration>
</UnitMonitor>