A perl net-snmp agentX to export Redis performance counters
Perl D
Latest commit 4deb9f5 Jul 1, 2013 @masterzen Fix formatting with perl tidy
Signed-off-by: brice <brice@daysofwonder.com>


REDIS Server SNMP Agent.
Copyright (c) 2011 Brice Figureau <brice.figureau@daysofwonder.com>


redis-snmp is a Redis Net-SNMP agent written in Perl, and using the Net-Snmp 
Perl bindings.

It connects to a redis server and returns information to Net-SNMP when needed.
It parses the Redis INFO command results.

This work is based on Baron Schwartz Mysql Cacti Templates, available at:

This software is released under the GPL v2.


This package requires Net-SNMP version 5.4.3 or better. Previous versions have bugs preventing
returning 64 bits MIBs objects correctly from a perl agentX.



Please build the package:
$ dpkg-buildpackage -rfakeroot -uc- b

and install it
Then, modify /etc/default/redis-snmp


Modify the Makefile, and:
$ sudo make install

Then create an init.d startup script. You can look to the debian one
in debian/init.d

Install the MIB file in your mibs directory.


Configure net-snmp

master agentx
to /etc/snmp/snmpd.conf, and restart snmpd
Make sure the redis-snmp agent is able to open the agentX socket (permissions
and location of said socket can be managed with the snmpd.conf agentXPerms

Configure redis-snmp

Under debian, the daemon can be configured with /etc/default/redis-snmp.
On all platform, the configuration is done with command line arguments:

-h|--host HOST          connect to redis HOST
-P|--port PORT          port to connect to (default 6379)
-p|--password DBPASS   use DBPASS as password to connect to redis
--oid OID               registering OID
-i|--refresh            refresh interval in seconds


You'll find in the opennms directory the various configuration snippets
that can be used to let opennms graph the value reported by this agent.


Add the content of opennms/redis.datacollection-config.xml to
your datacollection-config.xml file.

Then add this group to your hosts:
<systemDef name="Net-Snmp">

And now, add the graph definitions from the opennms/redis.snmp-graph.properties file 
to your snmp-graph.properties.