def parse_mpstat_json_single_irq()

in perfrunbook/utilities/mpstat_parse.py [0:0]


def parse_mpstat_json_single_irq(data, irq):
    """
    Does the generic parsing and combining
    """
    irq_data = data["sysstat"]["hosts"][0]["statistics"]
    date = data["sysstat"]["hosts"][0]["date"]

    data = {"time": []}
    data[irq] = []

    last_date = None
    for stats in irq_data:
        timestamp = stats["timestamp"]

        single_irq = 0
        for cpus in stats["individual-interrupts"]:
            for irqs in cpus["intr"]:
                if irqs["name"] == irq:
                    single_irq += int(irqs["value"])
        if last_date:
            date = parse_time(timestamp, last_date)
        else:
            date = np.datetime64(f"{date} {timestamp}")
        last_date = date
        data["time"].append(date)
        data[irq].append(single_irq)
    df = pd.DataFrame(data)
    df = df.set_index('time')
    return df