diff options
Diffstat (limited to 'csit.infra.dash/app/cdash/trending')
-rw-r--r-- | csit.infra.dash/app/cdash/trending/graphs.py | 36 | ||||
-rw-r--r-- | csit.infra.dash/app/cdash/trending/layout.py | 8 |
2 files changed, 34 insertions, 10 deletions
diff --git a/csit.infra.dash/app/cdash/trending/graphs.py b/csit.infra.dash/app/cdash/trending/graphs.py index ede3a06fd4..1a507dfeea 100644 --- a/csit.infra.dash/app/cdash/trending/graphs.py +++ b/csit.infra.dash/app/cdash/trending/graphs.py @@ -50,6 +50,8 @@ def select_trending_data(data: pd.DataFrame, itm: dict) -> pd.DataFrame: test_type = "ndrpdr" elif itm["testtype"] == "mrr": test_type = "mrr" + elif itm["testtype"] == "soak": + test_type = "soak" elif itm["area"] == "hoststack": test_type = "hoststack" df = data.loc[( @@ -194,6 +196,24 @@ def graph_trending( f"bandwidth [{row['result_bandwidth_unit']}]: " f"{row['result_bandwidth_value'] * nf:,.0f}<br>" ) + elif ttype in ("soak", "soak-bandwidth"): + h_tput = ( + f"tput [{row['result_critical_rate_lower_rate_unit']}]: " + f"{row['result_critical_rate_lower_rate_value'] * nf:,.0f}" + "<br>" + ) + if pd.notna(row["result_critical_rate_lower_bandwidth_value"]): + bv = row['result_critical_rate_lower_bandwidth_value'] + h_band = ( + "bandwidth " + f"[{row['result_critical_rate_lower_bandwidth_unit']}]:" + f" {bv * nf:,.0f}" + "<br>" + ) + try: + hosts = f"<br>hosts: {', '.join(row['hosts'])}" + except (KeyError, TypeError): + hosts = str() hover_itm = ( f"dut: {name_lst[0]}<br>" f"infra: {'-'.join(name_lst[1:5])}<br>" @@ -201,8 +221,8 @@ def graph_trending( f"date: {row['start_time'].strftime('%Y-%m-%d %H:%M:%S')}<br>" f"{h_tput}{h_band}{h_lat}" f"{row['dut_type']}-ref: {row['dut_version']}<br>" - f"csit-ref: {row['job']}/{row['build']}<br>" - f"hosts: {', '.join(row['hosts'])}" + f"csit-ref: {row['job']}/{row['build']}" + f"{hosts}" ) hover.append(hover_itm) if ttype == "latency": @@ -231,6 +251,10 @@ def graph_trending( hover_trend = list() for avg, stdev, (_, row) in zip(trend_avg, trend_stdev, df.iterrows()): + try: + hosts = f"<br>hosts: {', '.join(row['hosts'])}" + except (KeyError, TypeError): + hosts = str() hover_itm = ( f"dut: {name_lst[0]}<br>" f"infra: {'-'.join(name_lst[1:5])}<br>" @@ -239,8 +263,8 @@ def graph_trending( f"trend [{row[C.UNIT[ttype]]}]: {avg:,.0f}<br>" f"stdev [{row[C.UNIT[ttype]]}]: {stdev:,.0f}<br>" f"{row['dut_type']}-ref: {row['dut_version']}<br>" - f"csit-ref: {row['job']}/{row['build']}<br>" - f"hosts: {', '.join(row['hosts'])}" + f"csit-ref: {row['job']}/{row['build']}" + f"{hosts}" ) if ttype == "latency": hover_itm = hover_itm.replace("[pps]", "[us]") @@ -379,7 +403,7 @@ def graph_trending( fig_tput = go.Figure() fig_tput.add_traces(traces) - if ttype in ("ndr", "pdr", "mrr", "hoststack-cps", "hoststack-rps"): + if ttype in C.TESTS_WITH_BANDWIDTH: traces, _ = _generate_trending_traces( f"{ttype}-bandwidth", itm["id"], @@ -392,7 +416,7 @@ def graph_trending( fig_band = go.Figure() fig_band.add_traces(traces) - if ttype in ("pdr", "hoststack-cps", "hoststack-rps"): + if ttype in C.TESTS_WITH_LATENCY: traces, _ = _generate_trending_traces( "latency" if ttype == "pdr" else "hoststack-latency", itm["id"], diff --git a/csit.infra.dash/app/cdash/trending/layout.py b/csit.infra.dash/app/cdash/trending/layout.py index f6f96d713e..da90ae26f9 100644 --- a/csit.infra.dash/app/cdash/trending/layout.py +++ b/csit.infra.dash/app/cdash/trending/layout.py @@ -158,10 +158,7 @@ class Layout: tst_params["core"].append(core.upper()) if framesize.upper() not in tst_params["frame-size"]: tst_params["frame-size"].append(framesize.upper()) - if row["test_type"] == "mrr": - if "MRR" not in tst_params["test-type"]: - tst_params["test-type"].append("MRR") - elif row["test_type"] == "ndrpdr": + if row["test_type"] == "ndrpdr": if "NDR" not in tst_params["test-type"]: tst_params["test-type"].extend(("NDR", "PDR")) elif row["test_type"] == "hoststack": @@ -171,6 +168,9 @@ class Layout: elif row["tg_type"] == "ab": if "CPS" not in tst_params["test-type"]: tst_params["test-type"].extend(("CPS", "RPS")) + else: # MRR, SOAK + if row["test_type"].upper() not in tst_params["test-type"]: + tst_params["test-type"].append(row["test_type"].upper()) self._spec_tbs = tbs # Read from files: |