Ejemplo n.º 1
0
def jsonResponse(request):
    m = request.GET['m']
    client = CephClient()
    if m == 'tree':
        context = dict()
        context['data'] = client.osd_tree()
        if len(context['data']):
            data = context['data'][0]
    elif m == 'overview':
        data = client.pool_df(name=request.GET['name'],
                              stats=request.GET['stats'])

    elif m == 'query':
        #pdb.set_trace()
        dist = client.image_dist(pool=request.GET['pool'],
                                 id=request.GET['id'])
        data = {
            'pg': [{
                'key': 'objects',
                'values': []
            }],
            'osd': [{
                'key': 'objects',
                'values': []
            }]
        }

        for pgid, value in dist['pg'].items():
            data['pg'][0]['values'].append({'x': pgid, 'y': value})
        for osdid, value in dist['osd'].items():
            data['osd'][0]['values'].append({'x': 'osd.' + osdid, 'y': value})

    return HttpResponse(json.dumps(data), content_type="application/json")
Ejemplo n.º 2
0
def osdTree(request):
    template_name = 'ceph/_json.html'
    client = CephClient()
    context = dict()
    context['data'] = client.osd_tree()
    return render(request, template_name, {'status': context['status']})