From 85d8571b3e051244a9842b603f017fb8ed2263ab Mon Sep 17 00:00:00 2001 From: Fyodor Yarochkin Date: Mon, 16 Jan 2012 16:41:14 +0800 Subject: [PATCH] Riak node puts/gets monitoring --- plugins/other/riak_node | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 plugins/other/riak_node diff --git a/plugins/other/riak_node b/plugins/other/riak_node new file mode 100755 index 00000000..948a4eec --- /dev/null +++ b/plugins/other/riak_node @@ -0,0 +1,47 @@ +#!/usr/bin/python + + +import urllib2 +import sys + +try: + import json +except ImportError: + import simplejson as json + + +names = ["node_gets_total", "node_puts_total"] + +def getServerStatus(): + raw = urllib2.urlopen( "http://127.0.0.1:8091/stats" ).read() + return json.loads( raw ) + + + +def doData(): + for name in names: + print name + ".value " + str( getServerStatus()[name] ) + +def doConfig(): + + print "graph_title Riak puts and gets" + print "graph_args --base 1000 -l 0" + print "graph_vlabel puts/gets" + print "graph_category Riak" + + for name in names: + print name + ".label " + name + print name + ".min 0" + print name + ".type COUNTER" + print name + ".max 500000" + print name + "draw LINE1" + + + +if __name__ == "__main__": + if len(sys.argv) > 1 and sys.argv[1] == "config": + doConfig() + else: + doData() + +