@@ -211,39 +207,36 @@
{/if}
{#each refinedData as metric, i (metric?.name || i)}
- {#key metric}
- {#if metric?.data}
- {#if metric?.disabled}
-
- Metric {metric.data.name}: Disabled for subcluster {job.subCluster}
-
- {:else}
- handleZoom(detail, metric.data.name)}
- height={plotHeight}
- timestep={metric.data.metric.timestep}
- scope={metric.data.scope}
- series={metric.data.metric.series}
- statisticsSeries={metric.data.metric.statisticsSeries}
- metric={metric.data.name}
- cluster={clusterInfos.find((c) => c.name == job.cluster)}
- subCluster={job.subCluster}
- isShared={job.shared != "none"}
- numhwthreads={job.numHWThreads}
- numaccs={job.numAcc}
- zoomState={zoomStates[metric.data.name] || null}
- thresholdState={thresholdStates[metric.data.name] || null}
- />
- {/if}
- {:else}
-
- No dataset(s) returned for {metrics[i]}
- Metric or host was not found in metric store for cluster {job.cluster}:
- Identical messages in {metrics[i]} column: Metric not found.
- Identical messages in job {job.jobId} row: Host not found.
-
- {/if}
- {/key}
+ {#if metric?.disabled}
+
+ No dataset(s) returned for {metrics[i]}
+ Metric has been disabled for subcluster {job.subCluster}.
+
+ {:else if metric?.data}
+ handleZoom(detail, metric.data.name)}
+ height={plotHeight}
+ timestep={metric.data.metric.timestep}
+ scope={metric.data.scope}
+ series={metric.data.metric.series}
+ statisticsSeries={metric.data.metric.statisticsSeries}
+ metric={metric.data.name}
+ cluster={clusterInfos.find((c) => c.name == job.cluster)}
+ subCluster={job.subCluster}
+ isShared={job.shared != "none"}
+ numhwthreads={job.numHWThreads}
+ numaccs={job.numAcc}
+ zoomState={zoomStates[metric.data.name] || null}
+ thresholdState={thresholdStates[metric.data.name] || null}
+ />
+ {:else}
+
+ No dataset(s) returned for {metrics[i]}
+ Metric or host was not found in metric store for cluster {job.cluster}:
+ Identical messages in {metrics[i]} column: Metric not found.
+ Identical messages in job {job.jobId} row: Host not found.
+
+ {/if}
|
{:else}
diff --git a/web/frontend/src/systems/NodeOverview.svelte b/web/frontend/src/systems/NodeOverview.svelte
index fd463600..a34fdf0f 100644
--- a/web/frontend/src/systems/NodeOverview.svelte
+++ b/web/frontend/src/systems/NodeOverview.svelte
@@ -110,7 +110,7 @@
};
});
};
-
+
let pendingMapped = [];
if (rawData.length > 0) {
pendingMapped = rawData.map((h) => ({
@@ -120,12 +120,11 @@
data: h.metrics.filter(
(m) => m?.name == selectedMetric && m.scope == "node",
),
- // TODO: Move To New Func Variant With Disabled Check on WHole Cluster Level: This never Triggers!
disabled: checkMetricDisabled(globalMetrics, selectedMetric, cluster, h.subCluster),
}))
.sort((a, b) => a.host.localeCompare(b.host))
}
-
+
return pendingMapped;
}
@@ -162,35 +161,32 @@
- {#if item?.data}
- {#if item.disabled === true}
-
- Metric disabled for subcluster {selectedMetric}:{item.subCluster}
- {:else if item.disabled === false}
-
-
- {#key item.data[0].metric.series[0].data.length}
-
- {/key}
- {:else}
-
- Global Metric List Not Initialized
- Can not determine {selectedMetric} availability: Please Reload Page
-
- {/if}
+ {#if item?.disabled}
+
+
+ Disabled Metric
+
+
+ No dataset(s) returned for {selectedMetric}
+ Metric has been disabled for subcluster {item.subCluster}.
+
+
+ {:else if item?.data}
+
+
+ {#key item.data[0].metric.series[0].data.length}
+
+ {/key}
{:else}
+
Missing Metric
@@ -205,10 +201,22 @@
{/each}
{/key}
+{:else if hostnameFilter || hoststateFilter != 'all'}
+
+
+
+ Empty Filter Return
+
+
+ No datasets returned for {selectedMetric}.
+ Hostname filter and/or host state filter returned no matches.
+
+
+
{:else}
-
-
-
+
+
+
Missing Metric
diff --git a/web/frontend/src/systems/nodelist/NodeListRow.svelte b/web/frontend/src/systems/nodelist/NodeListRow.svelte
index 2abe0b41..e091769b 100644
--- a/web/frontend/src/systems/nodelist/NodeListRow.svelte
+++ b/web/frontend/src/systems/nodelist/NodeListRow.svelte
@@ -72,10 +72,30 @@
);
const extendedLegendData = $derived($nodeJobsData?.data ? buildExtendedLegend() : null);
- const refinedData = $derived(nodeData?.metrics ? sortAndSelectScope(nodeData.metrics) : []);
+ const refinedData = $derived(nodeData?.metrics ? sortAndSelectScope(selectedMetrics, nodeData.metrics) : []);
const dataHealth = $derived(refinedData.filter((rd) => rd.disabled === false).map((enabled) => (enabled?.data?.metric?.series?.length > 0)));
/* Functions */
+ function sortAndSelectScope(metricList = [], nodeMetrics = []) {
+ const pendingData = [];
+ metricList.forEach((metricName) => {
+ const pendingMetric = {
+ name: metricName,
+ disabled: checkMetricDisabled(
+ globalMetrics,
+ metricName,
+ cluster,
+ nodeData.subCluster,
+ ),
+ data: null
+ };
+ const scopesData = nodeMetrics.filter((nodeMetric) => nodeMetric.name == metricName)
+ if (scopesData.length > 0) pendingMetric.data = selectScope(scopesData)
+ pendingData.push(pendingMetric)
+ });
+ return pendingData;
+ };
+
const selectScope = (nodeMetrics) =>
nodeMetrics.reduce(
(a, b) =>
@@ -83,29 +103,6 @@
nodeMetrics[0],
);
- const sortAndSelectScope = (allNodeMetrics) =>
- selectedMetrics
- .map((selectedName) => allNodeMetrics.filter((nodeMetric) => nodeMetric.name == selectedName))
- .map((matchedNodeMetrics) => ({
- disabled: false,
- data: matchedNodeMetrics.length > 0 ? selectScope(matchedNodeMetrics) : null,
- }))
- .map((scopedNodeMetric) => {
- if (scopedNodeMetric?.data) {
- return {
- disabled: checkMetricDisabled(
- globalMetrics,
- scopedNodeMetric.data.name,
- cluster,
- nodeData.subCluster,
- ),
- data: scopedNodeMetric.data,
- };
- } else {
- return scopedNodeMetric;
- }
- });
-
function buildExtendedLegend() {
let pendingExtendedLegendData = null
// Build Extended for allocated nodes [Commented: Only Build extended Legend For Shared Nodes]
@@ -171,68 +168,59 @@
{/if}
|
{#each refinedData as metricData, i (metricData?.data?.name || i)}
- {#key metricData}
-
- {#if metricData?.disabled}
- Metric {selectedMetrics[i]} disabled for subcluster {nodeData.subCluster}
- {:else if !metricData?.data}
-
- No dataset(s) returned for {selectedMetrics[i]}
- Metric was not found in metric store for cluster {cluster}.
-
- {:else if !metricData?.data?.name}
- Metric without name for subcluster {`Metric Index ${i}`}:{nodeData.subCluster}
- {:else if !!metricData.data?.metric.statisticsSeries}
-
-
-
- {#key extendedLegendData}
-
- {/key}
- {:else}
-
- {/if}
- |
- {/key}
+
+ {#if metricData?.disabled}
+
+ No dataset(s) returned for {selectedMetrics[i]}
+ Metric has been disabled for subcluster {nodeData.subCluster}.
+
+ {:else if !metricData?.data}
+
+ No dataset(s) returned for {selectedMetrics[i]}
+ Metric was not found in metric store for cluster {cluster}.
+
+ {:else if !!metricData.data?.metric.statisticsSeries}
+
+
+
+ {#key extendedLegendData}
+
+ {/key}
+ {:else}
+
+ {/if}
+ |
{/each}