diff --git a/backend/app/services/crucible_readme.md b/backend/app/services/crucible_readme.md
index 4b61e5eb..e58184ea 100644
--- a/backend/app/services/crucible_readme.md
+++ b/backend/app/services/crucible_readme.md
@@ -4,6 +4,17 @@ each with a specific document mapping. CDM index names include a "root" name
Crucible timestamps are integers in "millisecond-from-the-epoch" format.
+The Crucible CDM hierarchy is roughly:
+
+- RUN (an instrumented benchmark run)
+ - TAG (metadata)
+ - ITERATION (a benchmark interval)
+ - PARAM (execution parameters)
+ - SAMPLE
+ - PERIOD (time range where data is recorded)
+ - METRIC_DESC (description of a specific recorded metric)
+ - METRIC_DATA (a specific recorded data point)
+
- RUN
- this contains the basic information about a performance run, including a
generated UUID, begin and end timestamps, a benchmark name, a user name and
diff --git a/backend/scripts/start-reload.sh b/backend/scripts/start-reload.sh
index 869f2488..764e707c 100755
--- a/backend/scripts/start-reload.sh
+++ b/backend/scripts/start-reload.sh
@@ -1,2 +1,3 @@
#!/usr/bin/bash
+
uvicorn --reload --host="0.0.0.0" --port=8000 --forwarded-allow-ips='*' --proxy-headers app.main:app
diff --git a/frontend/src/actions/ilabActions.js b/frontend/src/actions/ilabActions.js
index 45275bbc..65d8ec59 100644
--- a/frontend/src/actions/ilabActions.js
+++ b/frontend/src/actions/ilabActions.js
@@ -100,8 +100,8 @@ export const fetchPeriods = (uid) => async (dispatch) => {
});
}
} catch (error) {
- console.error(error);
- dispatch(showFailureToast(error?.response?.data?.detail));
+ console.error(`ERROR (${error?.response?.status}): ${JSON.stringify(error?.response?.data)}`);
+ dispatch(showFailureToast());
}
dispatch({ type: TYPES.COMPLETED });
};
@@ -144,16 +144,8 @@ export const fetchGraphData =
});
}
} catch (error) {
- var detail = error?.response?.data?.detail;
- var str;
- if (typeof detail == "string") {
- str = detail;
- } else if (typeof detail == "object" && typeof detail?.message == "string") {
- str = detail.message;
- } else {
- str = JSON.stringify(detail);
- }
- dispatch(showFailureToast(str));
+ console.error(`ERROR (${error?.response?.status}): ${JSON.stringify(error?.response?.data)}`);
+ dispatch(showFailureToast());
}
dispatch({ type: TYPES.GRAPH_COMPLETED });
};
diff --git a/frontend/src/actions/toastActions.js b/frontend/src/actions/toastActions.js
index a0fddabc..574487f1 100644
--- a/frontend/src/actions/toastActions.js
+++ b/frontend/src/actions/toastActions.js
@@ -2,11 +2,11 @@ import * as TYPES from "./types";
import { uid } from "@/utils/helper";
-export const showFailureToast = (message = null) => async (dispatch) => {
+export const showFailureToast = () => async (dispatch) => {
const toast = {
variant: "danger",
title: "Something went wrong",
- message: message ? message : "Please try again later",
+ message: "Please try again later",
};
dispatch(showToast(toast.variant, toast.title, toast.message));
};
diff --git a/frontend/src/components/atoms/PlotGraph/index.jsx b/frontend/src/components/atoms/PlotGraph/index.jsx
index 2afb0f1c..182496f7 100644
--- a/frontend/src/components/atoms/PlotGraph/index.jsx
+++ b/frontend/src/components/atoms/PlotGraph/index.jsx
@@ -1,12 +1,12 @@
import Plotly from "react-plotly.js";
import PropTypes from "prop-types";
+
const PlotGraph = (props) => {
return (
);
};
@@ -14,5 +14,4 @@ export default PlotGraph;
PlotGraph.propTypes = {
data: PropTypes.arr,
- layout: PropTypes.object,
};
diff --git a/frontend/src/components/templates/ILab/index.jsx b/frontend/src/components/templates/ILab/index.jsx
index 8085c5f5..0b4425fa 100644
--- a/frontend/src/components/templates/ILab/index.jsx
+++ b/frontend/src/components/templates/ILab/index.jsx
@@ -60,7 +60,6 @@ const ILab = () => {
if (isExpanding) {
dispatch(fetchPeriods(run.id));
dispatch(fetchMetricsInfo(run.id));
- // dispatch(fetchGraphData(run.id, run?.primary_metrics[0]));
}
};