/snmp_passpersist

SNMP PassPersist backend for Net-SNMP

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

This module is a SNMP passpersist backend for Net-SNMP.

The snmp_passpersist.PassPersist class present a convenient way to creare a MIB subtree and expose it to snmp via it's passpersist protocol.
Two thread are used, one for talking with snmpd and a second that trigger the update process at a fixed interval.

The keyword 'DUMP' has been added to the protocol for testing purpose.

Usage example: in a file /path/to/your/script.py :

> #!/usr/bin/python -u
> import snmp_passpersist as snmp
>
> def update():
>   pp.add_int('0.1',123)
>
> pp=snmp.PassPersist(".1.3.6.1.3.53.8")
> pp.start(update,30) # Every 30s

With the folowing line in snmpd.conf : 

pass_persist    .1.3.6.1.3.53.8.0     /path/to/your/script.py

A Real-world example is available here: https://github.com/nagius/cxm/blob/master/misc/snmp_xen.py

Another example that show the usage of the 'set' feature is available in the 'example/' directory.