Пример #1
0
def get_performance_Bandwith(request):
    data = json.loads(request.body)
    start_time = data["timestamp"] and int(data["timestamp"]) or int(time.time())-60
    end_time = None
    bandwidth_in_opts = {
         "metrics_name":"op_in_bytes"
        ,"timestamp_start":start_time
        ,"timestamp_end":end_time
        ,"correct_cnt":None
    }

    bandwidth_out_opts = {
         "metrics_name":"op_out_bytes"
        ,"timestamp_start":start_time
        ,"timestamp_end":end_time
        ,"correct_cnt":None
    }


    bandwidth_in_data = vsmapi.get_metrics(request,bandwidth_in_opts)["metrics"]
    bandwidth_out_data = vsmapi.get_metrics(request,bandwidth_out_opts)["metrics"]
    items = {}
    for in_metric in bandwidth_in_data:
        items[in_metric["timestamp"]] = {"timestamp": in_metric["timestamp"], "in_value": in_metric["metrics_value"] and round(in_metric["metrics_value"],2) or 0, "out_value": 0}
    for out_metric in bandwidth_out_data:
        if items.has_key(out_metric["timestamp"]):
            items[out_metric["timestamp"]]["out_value"] = out_metric["metrics_value"] and round(out_metric["metrics_value"],2) or 0

    keys = items.keys()
    keys.sort()
    metric_list = [items[key] for key in keys]
    ops_data_dict = {"metrics": metric_list}
    ops_data = json.dumps(ops_data_dict)
    return ops_data
Пример #2
0
def get_performance_Latency(request):
    data = json.loads(request.body)
    start_time = data["timestamp"] and int(
        data["timestamp"]) or int(time.time()) - 60
    end_time = None
    latency_r_opts = {
        "metrics_name": "op_r_latency",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None,
    }

    latency_w_opts = {
        "metrics_name": "op_w_latency",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None,
    }

    latency_rw_opts = {
        "metrics_name": "op_rw_latency",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None,
    }

    latency_r_data = vsmapi.get_metrics(request, latency_r_opts)["metrics"]
    latency_w_data = vsmapi.get_metrics(request, latency_w_opts)["metrics"]
    latency_rw_data = vsmapi.get_metrics(request, latency_rw_opts)["metrics"]

    items = {}
    for r_metric in latency_r_data:
        items[r_metric["timestamp"]] = {
            "timestamp":
            r_metric["timestamp"],
            "r_value":
            r_metric["metrics_value"] and round(r_metric["metrics_value"], 2)
            or 0,
            "w_value":
            0,
            "rw_value":
            0
        }
    for w_metric in latency_w_data:
        if items.has_key(w_metric["timestamp"]):
            items[w_metric["timestamp"]][
                "w_value"] = w_metric["metrics_value"] and round(
                    w_metric["metrics_value"], 2) or 0
    for rw_metric in latency_rw_data:
        if items.has_key(rw_metric["timestamp"]):
            items[rw_metric["timestamp"]][
                "rw_value"] = rw_metric["metrics_value"] and round(
                    rw_metric["metrics_value"], 2) or 0

    keys = items.keys()
    keys.sort()
    metric_list = [items[key] for key in keys]
    ops_data_dict = {"metrics": metric_list}
    ops_data = json.dumps(ops_data_dict)
    return ops_data
Пример #3
0
def get_performance_Latency(request):
    data = json.loads(request.body)
    start_time = data["timestamp"] and int(data["timestamp"]) or int(time.time()) - 60
    end_time = None
    latency_r_opts = {
        "metrics_name": "op_r_latency",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None,
    }

    latency_w_opts = {
        "metrics_name": "op_w_latency",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None,
    }

    latency_rw_opts = {
        "metrics_name": "op_rw_latency",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None,
    }

    latency_r_data = vsmapi.get_metrics(request, latency_r_opts)["metrics"]
    latency_w_data = vsmapi.get_metrics(request, latency_w_opts)["metrics"]
    latency_rw_data = vsmapi.get_metrics(request, latency_rw_opts)["metrics"]

    items = {}
    for r_metric in latency_r_data:
        items[r_metric["timestamp"]] = {
            "timestamp": r_metric["timestamp"],
            "r_value": r_metric["metrics_value"] or 0,
            "w_value": 0,
            "rw_value": 0,
        }
    for w_metric in latency_w_data:
        if items.has_key(w_metric["timestamp"]):
            items[w_metric["timestamp"]]["w_value"] = w_metric["metrics_value"] or 0
    for rw_metric in latency_rw_data:
        if items.has_key(rw_metric["timestamp"]):
            items[rw_metric["timestamp"]]["w_value"] = rw_metric["metrics_value"] or 0

    keys = items.keys()
    keys.sort()
    metric_list = [items[key] for key in keys]
    ops_data_dict = {"metrics": metric_list}
    ops_data = json.dumps(ops_data_dict)
    return ops_data
Пример #4
0
def get_performance_cpu(request):
    #data = json.loads(request.body)
    start_time = int(time.time())-600
    end_time = None
    cpu_opts = {
         "metrics_name":"cpu_usage"
        ,"timestamp_start":start_time
        ,"timestamp_end":end_time
    }

    cpu_data = vsmapi.get_metrics(request,cpu_opts)["metrics"]

    cpu_data_dict = {"time":[],"cpus":[]}
    cpu_data_dict['time'] = list(set([i['timestamp'] for i in cpu_data]))
    cpu_data_dict['time'].sort()
    cpu_data_dict['time'] = cpu_data_dict['time'][-7:]
    _cpu = {}
    for _metric in cpu_data:
        if not _cpu.has_key(_metric['host']):
            _cpu[_metric['host']] = []
        _cpu[_metric['host']].append('%s_%s'%(_metric['timestamp'],_metric['metrics_value']))

    keys = _cpu.keys()
    keys.sort()
    for host_name in keys:
        data_sort = list(set(_cpu[host_name]))
        data_sort.sort()
        data_sort_split = [a.split("_")[1] for a in data_sort][-7:]
        cpu_data_dict['cpus'].append({'name':host_name,'data':data_sort_split})
    cpu_data_json = json.dumps(cpu_data_dict)
    return cpu_data_json
Пример #5
0
def get_performance_cpu(request):
    #data = json.loads(request.body)
    start_time = int(time.time()) - 600
    end_time = None
    cpu_opts = {
        "metrics_name": "cpu_usage",
        "timestamp_start": start_time,
        "timestamp_end": end_time
    }

    cpu_data = vsmapi.get_metrics(request, cpu_opts)["metrics"]

    cpu_data_dict = {"time": [], "cpus": []}
    cpu_data_dict['time'] = list(set([i['timestamp'] for i in cpu_data]))
    cpu_data_dict['time'].sort()
    cpu_data_dict['time'] = cpu_data_dict['time'][-7:]
    _cpu = {}
    for _metric in cpu_data:
        if not _cpu.has_key(_metric['host']):
            _cpu[_metric['host']] = []
        _cpu[_metric['host']].append(
            '%s_%s' % (_metric['timestamp'], _metric['metrics_value']))

    keys = _cpu.keys()
    keys.sort()
    for host_name in keys:
        data_sort = list(set(_cpu[host_name]))
        data_sort.sort()
        data_sort_split = [a.split("_")[1] for a in data_sort][-7:]
        cpu_data_dict['cpus'].append({
            'name': host_name,
            'data': data_sort_split
        })
    cpu_data_json = json.dumps(cpu_data_dict)
    return cpu_data_json
Пример #6
0
def get_performance_Bandwith(request):
    data = json.loads(request.body)
    start_time = data["timestamp"] and int(
        data["timestamp"]) or int(time.time()) - 60
    end_time = None
    bandwidth_in_opts = {
        "metrics_name": "op_in_bytes",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None
    }

    bandwidth_out_opts = {
        "metrics_name": "op_out_bytes",
        "timestamp_start": start_time,
        "timestamp_end": end_time,
        "correct_cnt": None
    }

    bandwidth_in_data = vsmapi.get_metrics(request,
                                           bandwidth_in_opts)["metrics"]
    bandwidth_out_data = vsmapi.get_metrics(request,
                                            bandwidth_out_opts)["metrics"]
    items = {}
    for in_metric in bandwidth_in_data:
        items[in_metric["timestamp"]] = {
            "timestamp":
            in_metric["timestamp"],
            "in_value":
            in_metric["metrics_value"] and round(in_metric["metrics_value"], 2)
            or 0,
            "out_value":
            0
        }
    for out_metric in bandwidth_out_data:
        if items.has_key(out_metric["timestamp"]):
            items[out_metric["timestamp"]][
                "out_value"] = out_metric["metrics_value"] and round(
                    out_metric["metrics_value"], 2) or 0

    keys = items.keys()
    keys.sort()
    metric_list = [items[key] for key in keys]
    ops_data_dict = {"metrics": metric_list}
    ops_data = json.dumps(ops_data_dict)
    return ops_data