Пример #1
0
def report(project, tablename, datestring1, datestring2, value_key):
    # get data, from datalogger, or dataloggerhelper
    # datalogger = DataLogger(BASEDIR, project, tablename)
    dataloggerweb = DataLoggerWeb(DATALOGGER_URL)
    print "loading data"
    starttime = time.time()
    # tsa1 = datalogger.load_tsa(datestring1)
    tsa1 = dataloggerweb.get_tsa(project, tablename, datestring1)
    # tsastat1 = datalogger.load_tsastats(datestring1)
    tsastat1 = dataloggerweb.get_tsastats(project, tablename, datestring1)
    # tsa2 = datalogger.load_tsa(datestring2)
    tsa2 = dataloggerweb.get_tsa(project, tablename, datestring2)
    # tsastat2 = datalogger.load_tsastats(datestring2)
    tsastat2 = dataloggerweb.get_tsastats(project, tablename, datestring2)
    print "Duration load %f" % (time.time() - starttime)
    starttime = time.time()
    cm = CorrelationMatrixTime(tsa1, tsa2, value_key)
    print "TOP most differing keys between %s and %s" % (datestring1, datestring2)
    for key, coefficient in sorted(cm.items(), key=lambda items: items[1], reverse=True)[:20]:
        print key, coefficient
Пример #2
0
                    # group values by function
                    grouped_value = group_funcs[stat_func](value, data[group_key][value_key][stat_func])
                    # store
                    data[group_key][value_key][stat_func] = grouped_value
    # get to same format as TimeseriesArrayStats.to_json returns
    outdata = [tsastat.index_keys, tsastat.value_keys, ]
    outdata.append([(key, json.dumps(value)) for key, value in data.items()])
    # use TimeseriesArrayStats.from_json to get to TimeseriesArrayStats
    # object
    new_tsastat = TimeseriesArrayStats.from_json(json.dumps(outdata))
    return new_tsastat

if __name__ == "__main__":
    datalogger = DataLoggerWeb(DATALOGGER_URL)
    #caches = datalogger.get_caches("sanportperf", "fcIfC3AccountingTable", datalogger.get_last_business_day_datestring())
    tsastats = datalogger.get_tsastats("sanportperf", "fcIfC3AccountingTable", datalogger.get_last_business_day_datestring())
    g_tsastat1 = groupby(tsastats, (u'hostname',))
    tsastats = datalogger.get_tsastats("sanportperf", "fcIfC3AccountingTable", datalogger.get_last_business_day_datestring())
    g_tsastat2 = tsastats.group_by_index_keys((u'hostname',))
    print(g_tsastat1.keys())
    print(g_tsastat2.keys())
    assert g_tsastat1 == g_tsastat2
    g_tsastat = groupby(tsastats, (u'ifDescr',))
    print(g_tsastat.keys())
    g_tsastat = groupby(tsastats, (u'hostname', u'ifDescr',))
    assert g_tsastat == tsastats
    print(g_tsastat.keys())
    #tsastats.remove_by_value(u'fcIfC3InOctets', "sum", 0.0)
    #csvdata = tsastats.to_csv("sum", u'fcIfC3OutOctets', reverse=True)
    #print("\n".join(csv_to_table(csvdata[:20])))
    #print("\n".join(csv_to_wiki(csvdata[:20])))