DataSource to discover SnapMirror instances

NetApp.Management.Pack.DataSource.Discovery.SnapMirror (DataSourceModuleType)

This DataSource discovers NetApp SnapMirror instances.

It runs a SNMP walk over the OID .1.3.6.1.4.1.789.1.9.20.1.2 After the walk the outcome is filtered based on the OID .1.3.6.1.4.1.789.1.9.20.1.2 to be sure the correct Data is collected.
When the DataSource is used with a discovery rule every instance discovered during the walk a SnapMirror class instance is created.

Element properties:

TypeDataSourceModuleType
IsolationAny
AccessibilityInternal
RunAsDefault
OutputTypeSystem.Discovery.Data

Member Modules:

ID Module Type TypeId RunAs 
Scheduler DataSource System.Discovery.Scheduler Default
SnmpProbe ProbeAction System.SnmpProbe Default
Filter ConditionDetection System.ExpressionFilter Default
Mapper ConditionDetection System.Discovery.FilteredClassSnapshotDataMapper Default

Overrideable Parameters:

IDParameterTypeSelector
Intervalint$Config/Interval$

Source Code:

<DataSourceModuleType ID="NetApp.Management.Pack.DataSource.Discovery.SnapMirror" Accessibility="Internal" Batching="false">
<Configuration>
<xsd:element minOccurs="1" name="IPAddress" type="xsd:string"/>
<xsd:element minOccurs="1" name="CommStr" type="xsd:string"/>
<xsd:element minOccurs="1" name="Interval" type="xsd:integer"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="Interval" Selector="$Config/Interval$" ParameterType="int"/>
</OverrideableParameters>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<DataSource ID="Scheduler" TypeID="System!System.Discovery.Scheduler">
<Scheduler>
<SimpleReccuringSchedule>
<Interval>$Config/Interval$</Interval>
<SpreadInitializationOverInterval Unit="Seconds">1800</SpreadInitializationOverInterval>
</SimpleReccuringSchedule>
<ExcludeDates/>
</Scheduler>
</DataSource>
<ProbeAction ID="SnmpProbe" TypeID="Snmp!System.SnmpProbe">
<Walk>true</Walk>
<WalkReturnMultipleItems>true</WalkReturnMultipleItems>
<IsWriteAction>false</IsWriteAction>
<IP>$Config/IPAddress$</IP>
<CommunityString>$Config/CommStr$</CommunityString>
<SnmpVarBinds>
<SnmpVarBind>
<OID>.1.3.6.1.4.1.789.1.9.20.1.2</OID>
<Syntax>0</Syntax>
<Value VariantType="8"/>
</SnmpVarBind>
</SnmpVarBinds>
</ProbeAction>
<ConditionDetection ID="Mapper" TypeID="System!System.Discovery.FilteredClassSnapshotDataMapper">
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">/DataItem/SnmpVarBinds/SnmpVarBind[1]/OID</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>1.3.6.1.4.1.789.1.9.20.1.2</Pattern>
</RegExExpression>
</Expression>
<ClassId>$MPElement[Name="NetApp.Management.Pack.Class.NetApp.SnapMirror"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="MicrosoftSystemCenterNetworkDeviceLibrary!Microsoft.SystemCenter.NetworkDevice"]/IPAddress$</Name>
<Value>$Config/IPAddress$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="NetApp.Management.Pack.Class.NetApp.SnapMirror"]/OID$</Name>
<Value>$Data/SnmpVarBinds/SnmpVarBind[1]/OID$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Data/SnmpVarBinds/SnmpVarBind[1]/Value$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="NetApp.Management.Pack.Class.NetApp.SnapMirror"]/SnapMirrorName$</Name>
<Value>$Data/SnmpVarBinds/SnmpVarBind[1]/Value$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="NetApp.Management.Pack.ContainmentClass.Snapmirrors"]/Name$</Name>
<Value>SnapMirrors</Value>
</Setting>
</Settings>
</InstanceSettings>
</ConditionDetection>
<ConditionDetection ID="Filter" TypeID="System!System.ExpressionFilter">
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>/DataItem/SnmpVarBinds/SnmpVarBind[1]/OID</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>1.3.6.1.4.1.789.1.9.20.1.2.</Pattern>
</RegExExpression>
</Expression>
</ConditionDetection>
</MemberModules>
<Composition>
<Node ID="Mapper">
<Node ID="Filter">
<Node ID="SnmpProbe">
<Node ID="Scheduler"/>
</Node>
</Node>
</Node>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>System!System.Discovery.Data</OutputType>
</DataSourceModuleType>