|
|
@@ -5,10 +5,25 @@ import json
|
|
|
import os
|
|
|
from os import path
|
|
|
import struct
|
|
|
+import warnings
|
|
|
|
|
|
+warnings.filterwarnings('ignore', 'libevent')
|
|
|
import gevent.pywsgi
|
|
|
|
|
|
+import reloader
|
|
|
+
|
|
|
DATA_DIR = path.expanduser('~/sysvitals_data')
|
|
|
+handlers = None
|
|
|
+
|
|
|
+def main():
|
|
|
+ global handlers
|
|
|
+ handlers = {
|
|
|
+ 'data': get_data,
|
|
|
+ 'datum': post_datum,
|
|
|
+ }
|
|
|
+ server = gevent.pywsgi.WSGIServer(('0.0.0.0', 8892), application)
|
|
|
+ reloader.init(server)
|
|
|
+ server.serve_forever()
|
|
|
|
|
|
def application(environ, start_response):
|
|
|
split = environ['PATH_INFO'][1:].split('/')
|
|
|
@@ -24,9 +39,9 @@ def application(environ, start_response):
|
|
|
|
|
|
formats = {
|
|
|
'cpu': 'f',
|
|
|
- 'mem': 'l',
|
|
|
- 'net': 'l',
|
|
|
- 'disk': 'l',
|
|
|
+ 'mem': 'q',
|
|
|
+ 'net': 'q',
|
|
|
+ 'disk': 'q',
|
|
|
}
|
|
|
|
|
|
def get_data(split, environ):
|
|
|
@@ -90,10 +105,4 @@ def write_stat(f, key, format_code, data):
|
|
|
array[0] = data
|
|
|
f.write(struct.pack(fmt, key, *array))
|
|
|
|
|
|
-handlers = {
|
|
|
- 'data': get_data,
|
|
|
- 'datum': post_datum,
|
|
|
-}
|
|
|
-
|
|
|
-server = gevent.pywsgi.WSGIServer(('0.0.0.0', 8892), application)
|
|
|
-server.serve_forever()
|
|
|
+main()
|