Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions orion/run_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -459,9 +459,12 @@ def analyze(test, kwargs, is_pull = False) -> AnalyzeResult:
viz_algorithm = expanded_algorithm if expanded_algorithm is not None else algorithm
_, change_points_by_metric = viz_algorithm.get_analysis_results()
acked_entries = []
filename_suffix = ""
ack_map = viz_algorithm.options.get("ackMap")
if ack_map is not None:
acked_entries = ack_map.get("ack", [])
if kwargs.get("pr_analysis"):
filename_suffix = test["metadata"].get("jobType", "")
viz_data = VizData(
test_name=test["name"],
dataframe=viz_algorithm.dataframe.copy(),
Expand All @@ -470,6 +473,7 @@ def analyze(test, kwargs, is_pull = False) -> AnalyzeResult:
uuid_field=test["uuid_field"],
version_field=test["version_field"],
acked_entries=acked_entries,
filename_suffix=filename_suffix,
)

return AnalyzeResult(result_output, regression_flag, regression_data, average_values, viz_data)
Expand Down
7 changes: 5 additions & 2 deletions orion/visualization.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from orion.logger import SingletonLogger


class VizData: # pylint: disable=too-few-public-methods
class VizData: # pylint: disable=too-few-public-methods,too-many-instance-attributes
"""Container for all data needed to visualize one test's results."""

def __init__(
Expand All @@ -26,6 +26,7 @@ def __init__(
uuid_field: str,
version_field: str,
acked_entries: list = None,
filename_suffix: str = "",
):
self.test_name = test_name
self.dataframe = dataframe
Expand All @@ -34,6 +35,7 @@ def __init__(
self.uuid_field = uuid_field
self.version_field = version_field
self.acked_entries = acked_entries or []
self.filename_suffix = filename_suffix


def _prepare_timestamps(df: pd.DataFrame):
Expand Down Expand Up @@ -399,7 +401,8 @@ def generate_test_html(viz_data: VizData, output_base_path: str) -> str:
logger = SingletonLogger.get_logger("Orion")

fig = _build_test_figure(viz_data)
output_file = f"{output_base_path}_{viz_data.test_name}_viz.html"
suffix = f"_{viz_data.filename_suffix}" if viz_data.filename_suffix else ""
output_file = f"{output_base_path}_{viz_data.test_name}{suffix}_viz.html"
fig.write_html(
output_file, include_plotlyjs="cdn", full_html=True,
default_width="100%",
Expand Down
Loading