Ejemplo n.º 1
0
def serverstat(request, server):
    server_stat = {'server':server,'properties':[],'clients':[]}
    servers_dict = dict(zkconfig.servers)
    if server not in servers_dict:
        server_stat['error'] = 'No this server'
        return HttpResponse(jdumps(server_stat))
    stat = zkutils.stat((server,servers_dict[server]))
    if stat == False:
        server_stat['error'] == 'failed'
    else:
        version_regex = re.compile(r'(Zookeeper version.*)')
        client_regex = re.compile("\s+\/(?P<ip>[\d\.]+):(?P<port>\d+)\[\d+\]\(queued=(?P<queued>\d+),recved=(?P<recved>\d+),sent=(?P<sent>\d+)\)")
        for line in stat.split('\n'):
            if line.startswith('Clients') or line == "":
                continue
            if version_regex.match(line):
                server_stat['version'] = line
            elif client_regex.match(line):
                mo = client_regex.match(line)
                client_dict = mo.groupdict()
                client_dict['host'] = zkutils.ip2host(client_dict['ip'])
                server_stat['clients'].append(client_dict)
            else:
                n,v = line.split(':',1)
                server_stat['properties'].append({"name":n, "value":v})
    return HttpResponse(jdumps(server_stat))
Ejemplo n.º 2
0
def serverstat(request, server):
    server_stat = {'server': server, 'properties': [], 'clients': []}
    servers_dict = dict(zkconfig.servers)
    if server not in servers_dict:
        server_stat['error'] = 'No this server'
        return HttpResponse(jdumps(server_stat))
    stat = zkutils.stat((server, servers_dict[server]))
    if stat == False:
        server_stat['error'] == 'failed'
    else:
        version_regex = re.compile(r'(Zookeeper version.*)')
        client_regex = re.compile(
            "\s+\/(?P<ip>[\d\.]+):(?P<port>\d+)\[\d+\]\(queued=(?P<queued>\d+),recved=(?P<recved>\d+),sent=(?P<sent>\d+)\)"
        )
        for line in stat.split('\n'):
            if line.startswith('Clients') or line == "":
                continue
            if version_regex.match(line):
                server_stat['version'] = line
            elif client_regex.match(line):
                mo = client_regex.match(line)
                client_dict = mo.groupdict()
                client_dict['host'] = zkutils.ip2host(client_dict['ip'])
                server_stat['clients'].append(client_dict)
            else:
                n, v = line.split(':', 1)
                server_stat['properties'].append({"name": n, "value": v})
    return HttpResponse(jdumps(server_stat))
Ejemplo n.º 3
0
def serverlist(request):
    stats = []
    for zkserver in zkconfig.servers:
        server_dict = {"id": zkserver[0], "text": zkserver[0], "leaf": True}
        stat = zkutils.stat(zkserver)
        if stat == False:
            server_dict['cls'] = 'failed'
        elif "Mode: leader" in stat:
            server_dict['cls'] = 'leader'
        elif "Mode: follower" in stat:
            server_dict['cls'] = 'follower'
        stats.append(server_dict)
    return HttpResponse(jdumps(stats))
Ejemplo n.º 4
0
def serverlist(request):
    stats = []
    for zkserver in zkconfig.servers:
        server_dict = {"id": zkserver[0], "text": zkserver[0], "leaf": True}
        stat = zkutils.stat(zkserver)
        if stat == False:
            server_dict['cls'] = 'failed'
        elif "Mode: leader" in stat:
            server_dict['cls'] = 'leader'
        elif "Mode: follower" in stat:
            server_dict['cls'] = 'follower'
        stats.append(server_dict)
    return HttpResponse(jdumps(stats))