SNMP Walk Source is a source component performing SNMP WALK requests to a set of Network Devices, processing responses and introducing relevant variables into the pipeline.

FQCN

com.datumize.ddc.snmp.component.SNMPWalkSource

Overview

This source component implements a polling client that periodically accesses a SNMP compatible remote device and queries for a set of objects identifiers (OIDs). 

The expected input is a set of network devices that are compliant to SNMP protocol. SNMP agents expose management data on the managed systems as variables. The variables accessible via SNMP are organized in hierarchies. SNMP itself does not define which variables a managed system should offer. Rather, SNMP uses an extensible design which allows applications to define their own hierarchies. These hierarchies are described as a management information base (MIB). MIBs describe the structure of the management data of a device subsystem; they use a hierarchical namespace containing object identifiers (OID). Each OID identifies a variable that can be read or set via SNMP. 

The scheduling is to be defined using pipeline policies.

Properties


Common properties that apply to all source and processor components of a pipeline.

PROPERTYIDDESCRIPTION

REQUIRED

TYPE

DEFAULT

EXAMPLES

Common
IdentifierIDComponent unique Identifier within the pipeline, read only, only useful for advanced mode.YesStringAuto

MyComponent_23423

This Identifier is automatically generated by the system and you can't change it. Might be helpful for advanced pipeline configuration.

DescriptiondescriptionA short description for the component, to be visualized inside the component representation, aimed at providing additional information to understand the pipeline at a glance.NoString

Extract customer id and loyalty number.

Short and sweet description.

TopictopicAll Source and Processor components support a topic to tag the output records. If the record does not have a tag applied, this topic will be automatically applied. The topic may be used by future components to route, group or classify records.NoString

foo

All output records will be tagged using "foo", unless they have not been tagged during the execution of the step.

PROPERTYIDDESCRIPTIONREQUIREDTYPEDEFAULTEXAMPLES
Default
Endpointsendpoints

List of devices and endpoint URI where SNMP requests are to be executed. Default protocol is URL, and default port is 127.

YesURL List

APName1=127.0.0.1;APName2=udp:127.0.0.2/127

A list of valid SNMP URLs identified by name of device..

Object identifiersoidsList of OID (SNMP Object Identifier) to ask to each network device.YesSee Object Identifier (OID) section.


Advanced
SNMP Community

community

SNMP community identifier.NoStringpublic
Retries

retries

Number of retries when accessing network devices.NoInteger3
Timeout

timeout

Maximum amount of time to wait for a response.NoDuration1500ms
SNMP VersionversionSNMP versionNo

0 (v1)

1 (v2c)

2 (v3)

1
OID suffix converter

suffix-converter

Convert OID suffix to specific type.NoSee compatible Converters

Object Identifier (OID)

The Object Identifier (OID) is the identifier used to locate a variable in SNMP. 

PROPERTYIDDESCRIPTIONREQUIREDTYPEDEFAULTEXAMPLES
OIDoidList of OID (SNMP Object Identifier) to ask to each network device.YesOID 

Check MIB Collection for a number of vendors, devices and OIDs.

Output labellabel

Label to use in the output map. This label will be associated to the retrieved variable.

YesString


typeValue to use in the output map. The variable selected for the indicated OID will be converted to indicated type.Yes

STRING: String value

INT: Integer value

LONG: Long value

MAC: MAC Address

DOUBLE: Double value

FLOAT: Float value

TS:  Timestamp as LocalDateTime

TS_LONG: Timestamp as milliseconds since epoch

TS_STR: Timestamp as a String

STRING

SNMP Walk source retrieves periodically from all endpoints defined in the OIDs subtrees,  grouping the results with a common key to a single record. It works to produce a record per each endpoint/OID result.

Each record contains a map with the values:

KeyValue

endpoint

endpoint label defined in the endpoint property

timestamp

timestamp of the response

key

Result key or suffix converter output.
<oid label>Return value by this OID + key

Examples:

OID subtree

Asked oid: 1.2.3 (labeled as  "operation")

response:

1.2.3.4.5 = "abc"

1.2.3.6.7 = "dfe"

Source output: (Maps represented in JSON fromat)

[

{ "endpoint" : "access_point_1", "timestamp" : 1591063548007, "key" : "4.5", "operation": "abc", },

{ "endpoint" : "access_point_1", "timestamp" : 1591063548007, "key" : "6.7", "operation": "dfe", }

]


Multipe OIDs subtree

Asked OIDs: 1.2.3  (labeled as  "operation1" ) and 9.8  (labeled as  "operation2")

response:

1.2.3.5.3 = "x"

1.2.3.9.8.5 = 123

9.8.5.3 = "y"

9.8.9.8.5 = 456

Source output: (Maps represented in JSON fromat)

[

{ "endpoint" : "access_point_1", "timestamp" : 1591063548007, "key": "5.3", "operation1" : "x", "operation2" : 123 },

{ "endpoint" : "access_point_1", "timestamp" : 1591063548007, "key": "9.8.5", "operation1" : "y", "operation2" : 456 },

]