Getting Data In

snmpget with splunk

cpuppet
Path Finder

has anyone ever work with polling system information using snmpget and write it into files
or using a scripted data input to poll them using snmpget?

this is critical for my client who can only offer snmp as the only way to get data from the devices

Tags (1)
1 Solution

sbrant_tt
Explorer

So, if you wanted to spin it into a key=value pair to make it nice and easy for Splunk, you could do something in Python like this:

import subprocess, re

snmp_proc = subprocess.Popen('snmpget -v <snmp version> -c <community string> <IP> <OID>', shell=True, stdout=subprocess.PIPE)
raw_oid_value = snmp_proc.stdout.read()
oid_value = re.match('^.*Counter64:\s(?P<number>.*?)$', raw_oid_value)
print "snmp_key=" + oid_value

Or, you could just use something simple from a sh script and do all of the parsing in Splunk:

snmpget -c <community string> -v <snmp version> <IP> <OID>

View solution in original post

oscarjoedaly
New Member

Not to be picky about the example provided, but shouldn't it be something like:

...
oid_value = re.match('^.Counter64:\s(?P.?)$', raw_oid_value)
if oid_value:
print "snmp_key=" + oid_value.group(1)

0 Karma

sbrant_tt
Explorer

So, if you wanted to spin it into a key=value pair to make it nice and easy for Splunk, you could do something in Python like this:

import subprocess, re

snmp_proc = subprocess.Popen('snmpget -v <snmp version> -c <community string> <IP> <OID>', shell=True, stdout=subprocess.PIPE)
raw_oid_value = snmp_proc.stdout.read()
oid_value = re.match('^.*Counter64:\s(?P<number>.*?)$', raw_oid_value)
print "snmp_key=" + oid_value

Or, you could just use something simple from a sh script and do all of the parsing in Splunk:

snmpget -c <community string> -v <snmp version> <IP> <OID>

RubenOlsen
Path Finder

What you are asking is no different that any other scripted inputs.

The only advice is to reformat the data from your snmpget command to something very suitable for Splunk (i.e. key=value).

Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Best Practices: Splunk auto adjust pipeline queue

When you enable autoAdjustQueue in Splunk, maxSize should be understood as the queue size Splunk starts with ...

Introducing the 2026 - 2027 SplunkTrust cohort!

The goal of the SplunkTrust™ membership has historically been to acknowledge and recognize those who go above ...

Splunk Auto Ingestion Parallel Pipeline Scaling

Why this feature matters Many Splunk environments experience ingestion pressure long before the host is fully ...