10 @cherrypy.tools.accept(media='application/json')
12 data = cherrypy.request.body.read(int(cherrypy.request.headers['Content-Length']));
13 json_data = json.loads(data);
14 measurement_interval = -1;
19 if 'event' in json_data:
20 if 'measurementFields' in json_data['event']:
21 if 'measurementInterval' in json_data['event']['measurementFields']:
22 measurement_interval = float(json_data['event']['measurementFields']['measurementInterval']);
24 if 'additionalFields' in json_data['event']['measurementFields']:
25 if 'SgNB Request Rate' in json_data['event']['measurementFields']['additionalFields']:
26 sgnb_req_count = float(json_data['event']['measurementFields']['additionalFields']['SgNB Request Rate']);
28 if 'SgNB Accept Rate' in json_data['event']['measurementFields']['additionalFields']:
29 sgnb_accpt_count = float(json_data['event']['measurementFields']['additionalFields']['SgNB Accept Rate']);
31 if 'TS' in json_data['event']['measurementFields']['additionalFields']:
32 timestamp = json_data['event']['measurementFields']['additionalFields']['TS'];
34 print("{2}: Sgnb Request Rate = {0}, SgnB Accepts Rate = {1}\n".format( sgnb_req_count * 1000000.0 /measurement_interval, sgnb_accpt_count * 1000000.0/measurement_interval, timestamp));
35 #print "Received = ", json_data;
39 #=============================
40 if __name__ == '__main__':
44 'request.dispatch': cherrypy.dispatch.MethodDispatcher(),
45 'tools.sessions.on': True,
46 'tools.response_headers.on':True,
47 'tools.response_headers.headers':[('Content-Type','application/json')],
48 'tools.staticdir.on': True,
49 'tools.staticdir.dir':'/tmp/ves'
53 host_name = '127.0.0.1';
56 cherrypy.config.update({'server.socket_host':host_name, 'server.socket_port':port});
57 cherrypy.tree.mount(VES(), '/', config=conf);
58 cherrypy.engine.start();
59 cherrypy.engine.block();