System.NetworkManagement.Host.ExtendedSnmpQueryProvider
Applies To: System Center 2012 - Operations Manager, System Center 2012 R2 Operations Manager, System Center 2012 SP1 - Operations Manager
The System.NetworkManagement.Host.ExtendedSnmpQueryProvider data source module type provides System.SnmpData type data.
Usage
This module is commonly used to retrieve SNMP data from a specified SNMP object at a specific recurring interval. Specifically, this module is used to get information from the parent of the target object, for example, getting information on memory by querying the host of the memory (the node). If you need to query the object itself, use System.NetworkManagement.ExtendedSnmpQueryProvider instead.
Type Definition
<DataSourceModuleType ID="System.NetworkManagement.Host.ExtendedSnmpQueryProvider" Accessibility="Public" Batching="false">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>Snmp!System.SnmpVarBindsSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element name="Interval" type="xsd:integer" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="0" maxOccurs="1" name="NoOfRetries" type="xsd:unsignedInt" default="3" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="0" maxOccurs="1" name="Timeout" type="xsd:unsignedInt" default="700" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element name="SnmpVarBinds" type="SnmpVarBindsType" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element name="OutputOnError" type="xsd:string" minOccurs="0" maxOccurs="1" default="false" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
</Configuration>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<DataSource ID="ExtendedSnmpQueryProvider" TypeID="System.NetworkManagement.ExtendedSnmpQueryProvider.Internal">
<Interval>$Config/Interval$</Interval>
<NoOfRetries>$Config/NoOfRetries$</NoOfRetries>
<Timeout>$Config/Timeout$</Timeout>
<Port>$Target/Host/Property[Type="NetworkLibrary!System.NetworkManagement.Node"]/PortNumber$</Port>
<IP>$Target/Host/Property[Type="NetworkLibrary!System.NetworkManagement.Node"]/SNMPAddress$</IP>
<CommunityString>$RunAs[Name="NetworkLibrary!System.NetworkManagement.Snmp.MonitoringAccount"]/CommunityString$$Target/Host/Property[Type="NetworkLibrary!System.NetworkManagement.Node"]/VirtualCommunitySuffix$</CommunityString>
<Version>$Target/Host/Property[Type="NetworkLibrary!System.NetworkManagement.Node"]/SNMPVersion$</Version>
<SnmpVarBinds>$Config/SnmpVarBinds$</SnmpVarBinds>
<OutputOnError>$Config/OutputOnError$</OutputOnError>
</DataSource>
</MemberModules>
<Composition>
<Node ID="ExtendedSnmpQueryProvider" />
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>Snmp!System.SnmpData</OutputType>
</DataSourceModuleType>
Parameters
The System.NetworkManagement.Host.ExtendedSnmpQueryProvider module supports the following configuration parameters:
Parameter | Type | Overrideable | Description |
---|---|---|---|
Interval |
Integer |
False |
Required parameter. Contains the interval, in seconds, at which the probe performs the SNMP operation. |
NoOfRetries |
Integer |
False |
Optional parameter. The number of times that an SNMP GET operation will retry if it times out. Defaults to 3. |
Timeout |
Integer |
False |
Optional parameter. The amount of time (in milliseconds) before an SNMP GET operation times out. Defaults to 700. |
SnmpVarBinds |
SnmpVarBindsType |
False |
Required parameter. Contains a list of SNMP variable bindings as SnmpVarBind elements. |
OutputOnError |
String |
False |
Optional parameter. Indicates whether the workflow should continue if the device returns an error. |
For more information about the SnmpVarBind element, see System.NetworkManagement.SnmpDataSource.
Composition
The System.NetworkManagement.Host.ExtendedSnmpQueryProvider module is a composite module that contains the member modules described in the following table.
Workflow Run Order | Module Type | Usage |
---|---|---|
1 |
System.NetworkManagement.ExtendedSnmpQueryProvider.Internal |
Retrieves the raw data from the SNMP source. |
Related Modules
Module Type | Usage |
---|---|
Used to retrieve SNMP information from the object directly, as opposed to the parent of the object. |
External Module References
Module Type | Usage |
---|---|
Retrieves performance data for a given SNMP object. |
|
Retrieves performance data for a given SNMP object. |
|
Retrieves performance data for an SNMP node’s memory. |
Sample
The following XML example shows how System.NetworkManagement.Host.ExtendedSnmpQueryProvider is used in a unit monitor to determine whether the value of a performance counter on an SNMP object is below a given threshold. Note that because this unit monitor measures a performance counter on a node, the query is directed to the host of the counter (the node itself), rather than using System.NetworkManagement.ExtendedSnmpQueryProvider.
<UnitMonitorType ID="System.NetworkManagement.ComputedLowThresholdMonitorType" Accessibility="Internal">
<MonitorTypeStates>
<MonitorTypeState ID="MTSThresholdSuccess" NoDetection="false" />
<MonitorTypeState ID="MTSThresholdError" NoDetection="false" />
</MonitorTypeStates>
<Configuration>
<IncludeSchemaTypes>
<SchemaType>System.ExpressionEvaluatorSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element minOccurs="1" name="Interval" type="xsd:integer" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="0" maxOccurs="1" name="NoOfRetries" type="xsd:unsignedInt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="0" maxOccurs="1" name="Timeout" type="xsd:unsignedInt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="1" name="SnmpVarBinds" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="unbounded" name="SnmpVarBind">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="OID" type="xsd:string" />
<xsd:element name="Syntax" type="xsd:integer" />
<xsd:element name="Value">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="VariantType" type="xsd:integer" use="optional" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element minOccurs="1" name="ComputedPerformanceValue" type="NumericValueExpressionType" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="1" name="Threshold" type="xsd:integer" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="1" name="NumberOfSamples" type="xsd:integer" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="1" name="ObjectName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element minOccurs="1" name="CounterName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="Interval" Selector="$Config/Interval$" ParameterType="int" />
<OverrideableParameter ID="NoOfRetries" Selector="$Config/NoOfRetries$" ParameterType="int" />
<OverrideableParameter ID="Timeout" Selector="$Config/Timeout$" ParameterType="int" />
<OverrideableParameter ID="Threshold" Selector="$Config/Threshold$" ParameterType="int" />
<OverrideableParameter ID="NumberOfSamples" Selector="$Config/NumberOfSamples$" ParameterType="int" />
</OverrideableParameters>
<MonitorImplementation>
<MemberModules>
<DataSource ID="ProbeDS" TypeID="System.NetworkManagement.Host.ExtendedSnmpQueryProvider">
<Interval>$Config/Interval$</Interval>
<NoOfRetries>$Config/NoOfRetries$</NoOfRetries>
<Timeout>$Config/Timeout$</Timeout>
<SnmpVarBinds>$Config/SnmpVarBinds$</SnmpVarBinds>
</DataSource>
<ConditionDetection ID="ComputePerfValue" TypeID="System.NetworkManagement.Computation">
<NumericValue>$Config/ComputedPerformanceValue$</NumericValue>
</ConditionDetection>
<ConditionDetection ID="PerfMapper" TypeID="Performance!System.Performance.DataGenericMapper">
<ObjectName>$Config/ObjectName$</ObjectName>
<CounterName>$Config/CounterName$</CounterName>
<InstanceName />
<Value>$Data/Value$</Value>
</ConditionDetection>
<ConditionDetection ID="OperationStatusSuccess" TypeID="System.NetworkManagement.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Double">Value</XPathQuery>
</ValueExpression>
<Operator>Greater</Operator>
<ValueExpression>
<Value Type="Double">$Config/Threshold$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<SuppressionSettings>
<MatchCount>$Config/NumberOfSamples$</MatchCount>
<SampleCount>$Config/NumberOfSamples$</SampleCount>
</SuppressionSettings>
</ConditionDetection>
<ConditionDetection ID="OperationStatusError" TypeID="System.NetworkManagement.ExpressionFilter">
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Double">Value</XPathQuery>
</ValueExpression>
<Operator>LessEqual</Operator>
<ValueExpression>
<Value Type="Double">$Config/Threshold$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<SuppressionSettings>
<MatchCount>$Config/NumberOfSamples$</MatchCount>
<SampleCount>$Config/NumberOfSamples$</SampleCount>
</SuppressionSettings>
</ConditionDetection>
</MemberModules>
<RegularDetections>
<RegularDetection MonitorTypeStateID="MTSThresholdSuccess">
<Node ID="OperationStatusSuccess">
<Node ID="PerfMapper">
<Node ID="ComputePerfValue">
<Node ID="ProbeDS" />
</Node>
</Node>
</Node>
</RegularDetection>
<RegularDetection MonitorTypeStateID="MTSThresholdError">
<Node ID="OperationStatusError">
<Node ID="PerfMapper">
<Node ID="ComputePerfValue">
<Node ID="ProbeDS" />
</Node>
</Node>
</Node>
</RegularDetection>
</RegularDetections>
</MonitorImplementation>
</UnitMonitorType>
Information
Module Type |
|
Input Type |
None |
Output Type |
|
Implementation |
Composite |
Library |
System.NetworkManagement.Monitoring |