Non-Critical State

Microsoft.SQLServerAppliance.PDW.Cluster.NodeStateMonitor.NonCritical (UnitMonitor)

This monitor detects if Node Component is in Non-Critical state.

Knowledge Base article:

Summary

The Windows Failover Clustering service is reporting a non-critical status for this node.

Causes

This can occur because the node is in a paused state (status: 2) or the node is in the process of joining the cluster (status: 3).

For more details, view the component's node_state property in the PDW Admin Console or query the sys.dm_pdw_component_health_status DMV.

Resolutions

To diagnose this issue:

1) On the Management node, use a Windows administrator account to view the Cluster Events in the Failover Cluster Manager.

2) Use the sys.dm_pdw_os_events_logs DMV to check for relevant failures in the Windows Event Log for the node.

The clustering service might successfully bring the node back online after a period of time. If this state remains longer than 15 minutes then follow the resolution steps.

To resolve this issue, contact Microsoft support and provide them with the alert name and details. Microsoft Support will help you to understand the failure and help you to bring the node back online or into a healthy state.

Element properties:

TargetMicrosoft.SQLServerAppliance.PDW.Cluster.Node
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServerAppliance.PDW.ComponentTwoStateType
RemotableTrue
AccessibilityPublic
Alert Message
Node in a cluster has NON-CRITICAL status
Appliance Name: {0}
Node Name: {1}
Component: {2}
Component Details: https://{3}/Topology/NodeDetails/{4}?compId={5}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServerAppliance.PDW.Cluster.NodeStateMonitor.NonCritical" Accessibility="Public" Enabled="true" Target="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Cluster.Node" ParentMonitorID="Health!System.Health.AvailabilityState" TypeID="Microsoft.SQLServerAppliance.PDW.ComponentTwoStateType" Remotable="true" Priority="Normal" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServerAppliance.PDW.Cluster.NodeStateMonitor.NonCritical.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/ApplianceID$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/NodeName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="System!System.Entity"]/DisplayName$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/ApplianceNetworkAddress$</AlertParameter4>
<AlertParameter5>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/NodeID$</AlertParameter5>
<AlertParameter6>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/ID$</AlertParameter6>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Good" MonitorTypeStateID="Good" HealthState="Success"/>
<OperationalState ID="Bad" MonitorTypeStateID="Bad" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>600</TimeoutSeconds>
<ConnectionString>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/ApplianceID$</ConnectionString>
<NodeName>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/NodeName$</NodeName>
<GroupName>$Target/Property[Type="PDWLibrary!Microsoft.SQLServerAppliance.PDW.Component"]/GroupName$</GroupName>
<ComponentName>$Target/Property[Type="System!System.Entity"]/DisplayName$</ComponentName>
<MonitoredState>NonCritical</MonitoredState>
</Configuration>
</UnitMonitor>