Exemplo n.º 1
0
def _compute_scalars(graph_recipe, curves, start_time, end_time, step,
                     pin_time):
    unit = unit_info[graph_recipe["unit"]]

    for curve in curves:
        if curve.get("dont_paint"):
            continue

        rrddata = curve["rrddata"]

        pin = None
        if pin_time is not None:
            pin = _get_value_at_timestamp(start_time, end_time, step, pin_time,
                                          rrddata)

        rrddata = timeseries.clean_time_series_point(rrddata)
        if rrddata:
            scalars = {
                "pin": pin,
                "first": rrddata[0],
                "last": rrddata[-1],
                "max": max(rrddata),
                "min": min(rrddata),
                "average": sum(rrddata) / float(len(rrddata))
            }
        else:
            scalars = {
                x: None
                for x in ["pin", "first", "last", "max", "min", "average"]
            }

        curve["scalars"] = {}
        for key, value in scalars.items():
            curve["scalars"][key] = _render_scalar_value(value, unit)
Exemplo n.º 2
0
def _compute_scalars(
    graph_recipe: GraphRecipe, curves: Sequence[Curve], pin_time: Optional[int]
) -> None:
    unit = unit_info[graph_recipe["unit"]]

    for curve in curves:
        if curve.get("dont_paint"):
            continue

        rrddata = curve["rrddata"]

        pin = None
        if pin_time is not None:
            pin = _get_value_at_timestamp(pin_time, rrddata)

        clean_rrddata = timeseries.clean_time_series_point(rrddata)
        if clean_rrddata:
            scalars = {
                "pin": pin,
                "first": clean_rrddata[0],
                "last": clean_rrddata[-1],
                "max": max(clean_rrddata),
                "min": min(clean_rrddata),
                "average": sum(clean_rrddata) / float(len(clean_rrddata)),
            }
        else:
            scalars = {x: None for x in ["pin", "first", "last", "max", "min", "average"]}

        curve["scalars"] = {}
        for key, value in scalars.items():
            curve["scalars"][key] = _render_scalar_value(value, unit)