Exemple #1
0
def _sql_to_json_data(domains, sql_data, datespan, individual_domain_limit=16):
    """
    Helper function to transform sql queries into what the admin reports
    framework likes. Handles initial values and historical data

    sql_data needs {'timestamp': t, 'domain': d}
    """
    all_domains = len(domains) > individual_domain_limit
    start = get_timestamp_millis(datespan.startdate)

    if all_domains:
        histo_data = {"All Domains": dict()}
        init_ret = {"All Domains": 0}
        ret = {"All Domains": list()}
    else:
        histo_data = {d: dict() for d in domains}
        init_ret = {d: 0 for d in domains}
        ret = {d: list() for d in domains}

    for data in sql_data:
        tstamp = get_timestamp_millis(data['timestamp'])
        domain = "All Domains" if all_domains else data['domain']

        if tstamp < start:
            init_ret[domain] += 1
        else:
            if tstamp not in histo_data[domain]:
                histo_data[domain][tstamp] = 1
            else:
                histo_data[domain][tstamp] += 1

    for k, v in histo_data.iteritems():
        for l, w in v.iteritems():
            ret[k].append({'count': w, 'time': l})

    return init_ret, ret
Exemple #2
0
def _sql_to_json_data(domains, sql_data, datespan, individual_domain_limit=16):
    """
    Helper function to transform sql queries into what the admin reports
    framework likes. Handles initial values and historical data

    sql_data needs {'timestamp': t, 'domain': d}
    """
    all_domains = len(domains) > individual_domain_limit
    start = get_timestamp_millis(datespan.startdate)

    if all_domains:
        histo_data = {"All Domains": dict()}
        init_ret = {"All Domains": 0}
        ret = {"All Domains": list()}
    else:
        histo_data = {d: dict() for d in domains}
        init_ret = {d: 0 for d in domains}
        ret = {d: list() for d in domains}

    for data in sql_data:
        tstamp = get_timestamp_millis(data['timestamp'])
        domain = "All Domains" if all_domains else data['domain']

        if tstamp < start:
            init_ret[domain] += 1
        else:
            if tstamp not in histo_data[domain]:
                histo_data[domain][tstamp] = 1
            else:
                histo_data[domain][tstamp] += 1

    for k, v in histo_data.iteritems():
        for l, w in v.iteritems():
            ret[k].append({'count': w, 'time': l})

    return init_ret, ret
Exemple #3
0
def get_data_point(count, date):
    return {
        "count": count,
        "time": get_timestamp_millis(date),
    }
Exemple #4
0
def get_data_point(count, date):
    return {
        "count": count,
        "time": get_timestamp_millis(date),
    }