diff options
Diffstat (limited to 'Monitoring')
-rw-r--r-- | Monitoring/conf/shack_guests.cfg | 13 | ||||
-rwxr-xr-x | Monitoring/plugins/check_btcguild_miner | 27 |
2 files changed, 40 insertions, 0 deletions
diff --git a/Monitoring/conf/shack_guests.cfg b/Monitoring/conf/shack_guests.cfg index 45617461..79796541 100644 --- a/Monitoring/conf/shack_guests.cfg +++ b/Monitoring/conf/shack_guests.cfg @@ -26,6 +26,7 @@ define host{ hostgroups bitcoin-miner } +#Chinaman define host{ use generic-host host_name chinaman @@ -36,6 +37,18 @@ define host{ hostgroups bitcoin-miner,tinc-nodes,ssh-servers contact_groups krebsminers } +define service { + host_name chinaman + service_description BTCGUILD hash rate checker + use generic-service + check_command check_btcguild_miner!4bf1543d2eca8648277bdc66c326eea9!txgen_chinaman!600 + contact_groups krebsminers + } + +define command { + command_name check_btcguild_miner + command_line $USER1$/check_btcguild_miner $ARG1$ $ARG2$ $ARG3$ + } define host{ use generic-host diff --git a/Monitoring/plugins/check_btcguild_miner b/Monitoring/plugins/check_btcguild_miner new file mode 100755 index 00000000..aacdefc9 --- /dev/null +++ b/Monitoring/plugins/check_btcguild_miner @@ -0,0 +1,27 @@ +#!/usr/bin/python2 +import json,urllib,datetime,sys +if len(sys.argv) != 4 : + print "** Usage: %s APIKEY WORKER_NAME LOW_WORKER_SPEED" % sys.argv[0] + print "** aka YOU ARE MADE OF STUPID" + exit (3) + +API_KEY=sys.argv[1] +WORKER_NAME=sys.argv[2] +LOW_WORKER_SPEED=float(sys.argv[3]) +url="http://www.btcguild.com/api.php?api_key=%s" % API_KEY +try: + result = json.load(urllib.urlopen(url)) +except e: + print "?? cannot parse json or connect to server" + exit (1) + +for k,v in result["workers"].iteritems(): + if v["worker_name"] == WORKER_NAME: + curr = v["hash_rate"] + if curr < LOW_WORKER_SPEED: + print "!! %f is below expected %f" (curr,LOW_WORKER_SPEED) + exit (2) + else: + print "++ everything fine, current speed is %f" % curr + exit(0) + |