Example #1
0
def cluster_panel(request, cluster_id):
    c = models.cluster.get_by_id(cluster_id)
    if c is None:
        return base.not_found()
    return request.render('cluster/panel.html',
                          cluster=c,
                          node_details=file_ipc.read_details()['nodes'])
Example #2
0
def node_panel(request, host, port):
    node = models.node.get_by_host_port(host, port)
    if node is None:
        return base.not_found()
    detail = {}
    try:
        detail = file_ipc.read_details()['nodes']['%s:%d' %
                                                  (node.host, node.port)]
    except (IOError, ValueError, KeyError):
        pass
    return request.render('node/panel.html', node=node, detail=detail)
Example #3
0
def node_panel(request, host, port):
    node = models.node.get_by_host_port(host, port)
    if node is None:
        return base.not_found()
    detail = {}
    try:
        detail = file_ipc.read_details()['nodes'][
            '%s:%d' % (node.host, node.port)]
    except (IOError, ValueError, KeyError):
        pass
    return request.render('node/panel.html', node=node, detail=detail)
Example #4
0
def node_panel(request, host, port):
    node = models.node.get_by_host_port(host, port)
    if node is None:
        return base.not_found()
    detail = {}
    try:
        for n in file_ipc.read()['nodes']:
            if n['host'] == host and n['port'] == port:
                detail = n
                break
    except (IOError, ValueError, KeyError):
        pass
    return request.render('node/panel.html', node=node, detail=detail)
Example #5
0
def node_panel(request, host, port):
    node = models.node.get_by_host_port(host, port)
    if node is None:
        return base.not_found()
    detail = {}
    try:
        detail = file_ipc.read_details()['nodes'][
            '%s:%d' % (node.host, node.port)]
    except (IOError, ValueError, KeyError):
        pass
    return request.render(
        'node/panel.html', node=node, detail=detail,
        max_mem_limit=NODE_MAX_MEM, stats_enabled=stats.client is not None)
Example #6
0
def cluster_get_task_steps(request):
    t = models.task.get_task_by_id(int(request.args['id']))
    if t is None:
        return base.not_found()
    return base.json_result([{
        'id': step.id,
        'command': step.command,
        'args': step.args,
        'status': 'completed' if step.completed else (
            'running' if step.running else 'pending'),
        'start_time': template.f_strftime(step.start_time),
        'completion': template.f_strftime(step.completion),
        'exec_error': step.exec_error,
    } for step in t.all_steps])
Example #7
0
def cluster_get_masters_info(request):
    c = models.cluster.get_by_id(request.args['id'])
    if c is None or len(c.nodes) == 0:
        return base.not_found()
    node = c.nodes[0]
    master = redistrib.command.list_masters(node.host, node.port)[0]
    node_details = {(n['host'], n['port']): n
                    for n in file_ipc.read()['nodes']}
    result = []
    for n in redistrib.command.list_masters(node.host, node.port)[0]:
        r = {'host': n.host, 'port': n.port}
        if (n.host, n.port) in node_details:
            r['slots_count'] = len(node_details[(n.host, n.port)]['slots'])
        result.append(r)
    return base.json_result(result)
Example #8
0
def node_panel(request, host, port):
    node = models.node.get_by_host_port(host, port)
    if node is None:
        return base.not_found()
    detail = {}
    try:
        detail = file_ipc.read_details()['nodes']['%s:%d' %
                                                  (node.host, node.port)]
    except (IOError, ValueError, KeyError):
        pass
    return request.render('node/panel.html',
                          node=node,
                          detail=detail,
                          max_mem_limit=config.NODE_MAX_MEM,
                          stats_enabled=stats.client is not None)
Example #9
0
def cluster_panel(request, cluster_id):
    c = models.cluster.get_by_id(cluster_id)
    if c is None or len(c.nodes) == 0:
        return base.not_found()
    all_details = file_ipc.read_details()
    node_details = all_details['nodes']
    nodes = []
    for n in c.nodes:
        detail = node_details.get('%s:%d' % (n.host, n.port))
        if detail is None:
            nodes.append({'host': n.host, 'port': n.port, 'stat': False})
        else:
            nodes.append(detail)

    proxy_details = all_details['proxies']
    for p in c.proxies:
        p.details = proxy_details.get('%s:%d' % (p.host, p.port), {})
    return request.render('cluster/panel.html', cluster=c, nodes=nodes,
                          eru_client=eru_utils.eru_client, plan_max_slaves=3,
                          stats_enabled=stats.client is not None)
Example #10
0
def list_cluster_tasks(request, page, cluster_id):
    c = models.cluster.get_by_id(cluster_id)
    if c is None:
        return base.not_found()
    return request.render('cluster/tasks.html', cluster=c, page=page)
Example #11
0
def cluster_get_masters_info(request):
    c = models.cluster.get_by_id(request.args['id'])
    if c is None or len(c.nodes) == 0:
        return base.not_found()
    node = c.nodes[0]
    return base.json_result(utils.masters_detail(node.host, node.port)[0])
Example #12
0
def cluster_get_masters_info(request):
    c = models.cluster.get_by_id(request.args['id'])
    if c is None or len(c.nodes) == 0:
        return base.not_found()
    node = c.nodes[0]
    return base.json_result(utils.masters_detail(node.host, node.port)[0])
Example #13
0
def cluster_panel(request, cluster_id):
    c = models.cluster.get_by_id(cluster_id)
    if c is None:
        return base.not_found()
    return request.render('cluster/panel.html', cluster=c)
Example #14
0
def cluster_panel(request, cluster_id):
    c = models.cluster.get_by_id(cluster_id)
    if c is None:
        return base.not_found()
    return request.render('cluster/panel.html', cluster=c,
                          node_details=file_ipc.read_details()['nodes'])
Example #15
0
def cluster_panel(request, cluster_id):
    c = models.cluster.get_by_id(cluster_id)
    if c is None:
        return base.not_found()
    return request.render('cluster/panel.html', cluster=c, node_details={
        (n['host'], n['port']): n for n in file_ipc.read()['nodes']})