SNMP Availability Monitor Type

System.NetworkManagement.HealthStateSNMPAvailabilityMonitorType (UnitMonitorType)

SNMP availability monitor type

Element properties:

RunAsDefault
AccessibilityInternal
Support Monitor RecalculateFalse

Member Modules:

ID Module Type TypeId RunAs 
SnmpDataSource DataSource System.NetworkManagement.ExtendedSnmpQueryProvider Default
DisableMonitoring ProbeAction System.NetworkManagement.EnableInstanceMonitoringOverrideAction Default
EnableMonitoring ProbeAction System.NetworkManagement.EnableInstanceMonitoringOverrideAction Default
OperationStatusError ConditionDetection System.NetworkManagement.ExpressionFilter Default
OperationStatusSuccess ConditionDetection System.NetworkManagement.ExpressionFilter Default

Overrideable Parameters:

IDParameterTypeSelectorDisplay NameDescription
Intervalint$Config/Interval$IntervalThe number of seconds between monitor execution
NoOfRetriesint$Config/NoOfRetries$Number of RetriesThe number of times that an SNMP GET operation will retry if it times out
NumberOfSamplesint$Config/NumberOfSamples$Number of SamplesThe number of consecutive samples before the monitor will change health state
Timeoutint$Config/Timeout$TimeoutThe amount of time (in milliseconds) before an SNMP GET operation times out

Source Code:

<UnitMonitorType ID="System.NetworkManagement.HealthStateSNMPAvailabilityMonitorType" Accessibility="Internal">
<MonitorTypeStates>
<MonitorTypeState ID="MTSDeviceSuccess" NoDetection="false"/>
<MonitorTypeState ID="MTSDeviceError" NoDetection="false"/>
</MonitorTypeStates>
<Configuration>
<xsd:element minOccurs="1" name="Interval" type="xsd:integer"/>
<xsd:element minOccurs="0" maxOccurs="1" name="NoOfRetries" type="xsd:unsignedInt"/>
<xsd:element name="NumberOfSamples" type="xsd:unsignedInt" minOccurs="0" maxOccurs="1"/>
<xsd:element minOccurs="0" maxOccurs="1" name="Timeout" type="xsd:unsignedInt"/>
<xsd:element minOccurs="1" name="OID" type="xsd:string"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="Interval" Selector="$Config/Interval$" ParameterType="int"/>
<OverrideableParameter ID="NoOfRetries" Selector="$Config/NoOfRetries$" ParameterType="int"/>
<OverrideableParameter ID="NumberOfSamples" Selector="$Config/NumberOfSamples$" ParameterType="int"/>
<OverrideableParameter ID="Timeout" Selector="$Config/Timeout$" ParameterType="int"/>
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="SnmpDataSource" TypeID="System.NetworkManagement.ExtendedSnmpQueryProvider">
<Interval>$Config/Interval$</Interval>
<NoOfRetries>$Config/NoOfRetries$</NoOfRetries>
<Timeout>$Config/Timeout$</Timeout>
<SnmpVarBinds>
<SnmpVarBind>
<OID>$Config/OID$</OID>
<Syntax>0</Syntax>
<Value VariantType="8"/>
</SnmpVarBind>
</SnmpVarBinds>
<OutputOnError>true</OutputOnError>
</DataSource>
<ProbeAction ID="EnableMonitoring" TypeID="System.NetworkManagement.EnableInstanceMonitoringOverrideAction">
<ManagedEntityId>$Target/Id$</ManagedEntityId>
<Value>true</Value>
</ProbeAction>
<ProbeAction ID="DisableMonitoring" TypeID="System.NetworkManagement.EnableInstanceMonitoringOverrideAction">
<ManagedEntityId>$Target/Id$</ManagedEntityId>
<Value>false</Value>
</ProbeAction>
<ConditionDetection ID="OperationStatusSuccess" TypeID="System.NetworkManagement.ExpressionFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">ErrorCode</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">SnmpVarBinds/SnmpVarBind[OID="$Config/OID$"]/Syntax</XPathQuery>
</ValueExpression>
<Operator>DoesNotMatchRegularExpression</Operator>
<Pattern>^(5|128|129)$</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
<SuppressionSettings>
<MatchCount>$Config/NumberOfSamples$</MatchCount>
<SampleCount>$Config/NumberOfSamples$</SampleCount>
</SuppressionSettings>
</ConditionDetection>
<ConditionDetection ID="OperationStatusError" TypeID="System.NetworkManagement.ExpressionFilter">
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">ErrorCode</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">SnmpVarBinds/SnmpVarBind[OID="$Config/OID$"]/Syntax</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(5|128|129)$</Pattern>
</RegExExpression>
</Expression>
</Or>
</Expression>
<SuppressionSettings>
<MatchCount>$Config/NumberOfSamples$</MatchCount>
<SampleCount>$Config/NumberOfSamples$</SampleCount>
</SuppressionSettings>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="MTSDeviceSuccess">
<Node ID="EnableMonitoring">
<Node ID="OperationStatusSuccess">
<Node ID="SnmpDataSource"/>
</Node>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="MTSDeviceError">
<Node ID="DisableMonitoring">
<Node ID="OperationStatusError">
<Node ID="SnmpDataSource"/>
</Node>
</Node>
</RegularDetection>
</RegularDetections>
</MonitorImplementation>
</UnitMonitorType>