summaryrefslogtreecommitdiffstats
path: root/Monitoring
diff options
context:
space:
mode:
Diffstat (limited to 'Monitoring')
-rw-r--r--Monitoring/conf/shack_guests.cfg13
-rwxr-xr-xMonitoring/plugins/check_btcguild_miner27
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)
+