Data ONTAP Virtualization: Hyper-V LUN Replication Status Monitor

DataONTAP.Virtualization.HyperV.LUN.Replication.Status.Monitor (UnitMonitor)

This monitor checks whether the SnapMirror relationships protecting this LUN are broken or have lag time exceeding the lag thresholds.

Knowledge Base article:

Summary

This monitor checks whether the SnapMirror relationships protecting this LUN are broken or have lag time exceeding the lag thresholds.

Resolutions

Perform a SnapMirror update if the SnapMirror relationships for this LUN that are broken or has lag time exceeding the lag threshold.

Element properties:

TargetDataONTAP.Virtualization.HyperV.LUN
Parent MonitorSystem.Health.AvailabilityState
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.3SingleEventLog3StateUnitMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Data ONTAP Virtualization: Hyper-V LUN Replication Status
Event Description: {0}
RunAsDataONTAP.SecureReference.RunAsProfileVirtualization

Source Code:

<UnitMonitor ID="DataONTAP.Virtualization.HyperV.LUN.Replication.Status.Monitor" Accessibility="Public" Enabled="true" Target="DataONTAP.Virtualization.HyperV.LUN" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.3SingleEventLog3StateUnitMonitorType" ConfirmDelivery="true" RunAs="DS!DataONTAP.SecureReference.RunAsProfileVirtualization">
<Category>Custom</Category>
<AlertSettings AlertMessage="DataONTAP.Virtualization.HyperV.LUN.Replication.Status.Monitor_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UIGeneratedOpStateIdd206bc0931f6436c94ca235e347ce237" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="UIGeneratedOpStateId347b90026bfe430ba20053c0c3497072" MonitorTypeStateID="SecondEventRaised" HealthState="Warning"/>
<OperationalState ID="UIGeneratedOpStateId4ab6b280d40f48c18b755a17d64c9131" MonitorTypeStateID="ThirdEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName/>
<FirstLogName>OnCommand</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1612</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Data ONTAP Virtualization MP</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>$Target/Property[Type="DataONTAP.Virtualization.HyperV.LUN"]/LUNPath$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>$Target/Property[Type="DataONTAP.Virtualization.HyperV.LUN"]/Controller$</Pattern>
</RegExExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName/>
<SecondLogName>OnCommand</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1611</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Data ONTAP Virtualization MP</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>$Target/Property[Type="DataONTAP.Virtualization.HyperV.LUN"]/LUNPath$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>$Target/Property[Type="DataONTAP.Virtualization.HyperV.LUN"]/Controller$</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
<ThirdComputerName/>
<ThirdLogName>OnCommand</ThirdLogName>
<ThirdExpression>
<And>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1610</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1622</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Data ONTAP Virtualization MP</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<And>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>$Target/Property[Type="DataONTAP.Virtualization.HyperV.LUN"]/LUNPath$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>$Target/Property[Type="DataONTAP.Virtualization.HyperV.LUN"]/Controller$</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</And>
</ThirdExpression>
</Configuration>
</UnitMonitor>