An easily extensible SNMP agent, written entirely in Ruby
The gold standard for SNMP agents on Unix-like systems is the popular net-snmp. While it’s a solid agent, especially when you just want to monitor the standard MIBs, it suffers from a fairly clunky extension interface, and a fairly confusing configuration interface.
Ruby-snmpd, in contrast, is designed to be as simple as possible to configure and extend. At the moment, it suffers from a chronic lack of standard MIB support, so it cannot be considered a replacement for net-snmpd, but it fills a niche for people who need to provide custom data through SNMP.
Providing data through ruby-snmpd is as simple as writing Ruby code to generate an array or hash representing the tree of SNMP values. The only complexity is whatever is needed to generate your values.
We rely on the excellent manager-side Ruby SNMP library by David R. Halliday. All of the low-level parsing is handled by that library, and you’ll need to install it to use ruby-snmpd.