#!/usr/bin/python
# based on https://github.com/pdbrown/munin-custom/blob/master/plugins/hashrate
# improved by @deveth0 (donation to 1GzHgp9hsDRsf96MnVk2oo6EG1VmWP9jGs :) )
# usage: link to btcguild_hashrate_YOURAPIKEY
import sys
import urllib2
import json

URL = 'https://www.btcguild.com/api.php?api_key='
API_KEY =  sys.argv[0][(sys.argv[0].rfind('_')+1):]

STATS = URL + API_KEY

print STATS

command = ''
if len(sys.argv) > 1:
    command = sys.argv[1]

header = {'User-Agent':'Mozilla/5.0'}
request = urllib2.Request(STATS,headers=header)
mining_stats_raw = urllib2.urlopen(request)
mining_stats = json.load(mining_stats_raw)
workers = mining_stats['workers']


if command == 'config':
    print "graph_title BTCGuild Hashrate"
    print "graph_args --upper-limit 3000 -l 0"
    print "graph_vlabel MHash/s"
    print "graph_category Bitcoin"
    for worker in workers:
        label = workers[worker]['worker_name']
        print label + ".label " + label
    sys.exit(0)

for worker in workers:
        hash_rate = workers[worker]['hash_rate']
        label = workers[worker]['worker_name']
        print label + ".value %d" % int(hash_rate)

