blob: 89478b82160e9fc53c23b9a2eef49f1464ee4cc9 [file] [log] [blame]
Sapan Bhatia11a32942015-01-07 01:09:02 -05001from django.http import HttpResponse
2from monitor import driver
Sapan Bhatiae999be82015-01-12 16:48:19 -05003from core.models import *
Sapan Bhatia11a32942015-01-07 01:09:02 -05004import json
5
6def Stats(request):
7 model = request.GET['model_name']
8 pk = int(request.GET['pk'])
Sapan Bhatia0255e202015-01-10 04:51:57 +00009 meter = request.GET['meter']
10 controller_name = request.GET['controller_name']
Sapan Bhatia11a32942015-01-07 01:09:02 -050011
Scott Baker7e104cb2015-02-13 21:37:13 -080012 controller = Controller.objects.filter(name=controller_name)
13
14 if len(controller)==0:
15 # controller was not found...
16 # probably should put some kind of error response here
17 return HttpResponse(json.dumps({"stat_list": []}))
18
19 controller=controller[0]
Sapan Bhatiae999be82015-01-12 16:48:19 -050020 keystone = {'username':controller.admin_user, 'password':controller.admin_password, 'tenant_name':controller.admin_tenant, 'auth_url':controller.auth_url, 'cacert':'/etc/ssl/certs/ca-certificates.crt'}
21
22 for k,v in keystone.items():
23 keystone['os_'+k] = v
Scott Baker7e104cb2015-02-13 21:37:13 -080024
Sapan Bhatiae999be82015-01-12 16:48:19 -050025 meters = driver.get_meter(meter, model, pk, keystone)
Sapan Bhatia0255e202015-01-10 04:51:57 +000026 return HttpResponse(json.dumps(meters))