|
|
@@ -36,6 +36,7 @@ def main():
|
|
|
server = gevent.pywsgi.WSGIServer(('0.0.0.0', config.api_port), application)
|
|
|
if config.debug:
|
|
|
reloader.init(server)
|
|
|
+ print 'listening on', config.api_port
|
|
|
server.serve_forever()
|
|
|
|
|
|
class HTTPException(Exception):
|
|
|
@@ -193,6 +194,22 @@ def get_stats(split, query, environ):
|
|
|
for subfield, array in field_data.iteritems():
|
|
|
stats[field].setdefault(subfield, {})
|
|
|
stats[field][subfield][date] = average(array, interval)
|
|
|
+ elif field == 'disk':
|
|
|
+ field_data = {}
|
|
|
+ for mountpoint, disk_sfs in subfields.items():
|
|
|
+ used_key = mountpoint + '_used'
|
|
|
+ free_key = mountpoint + '_free'
|
|
|
+ field_data[used_key] = [None] * 1440
|
|
|
+ field_data[free_key] = [None] * 1440
|
|
|
+ for i in xrange(1440):
|
|
|
+ if disk_sfs['total'][i] == -1:
|
|
|
+ continue
|
|
|
+ used = disk_sfs['used'][i]
|
|
|
+ field_data[used_key][i] = used
|
|
|
+ field_data[free_key][i] = disk_sfs['total'][i] - used
|
|
|
+ for subfield, array in field_data.iteritems():
|
|
|
+ stats[field].setdefault(subfield, {})
|
|
|
+ stats[field][subfield][date] = average(array, interval)
|
|
|
return stats
|
|
|
|
|
|
def post_datum(split, query, environ):
|