Prepare adaptive binCounts in backend

This commit is contained in:
Christoph Kluge
2025-01-22 12:07:12 +01:00
parent 817076bdbf
commit 05bfa9b546
6 changed files with 1171 additions and 338 deletions

View File

@@ -213,7 +213,7 @@
<Col class="px-1">
{#key $stats.data.jobsStatistics[0].histDuration}
<Histogram
data={convert2uplot($stats.data.jobsStatistics[0].histDuration, true)}
data={convert2uplot($stats.data.jobsStatistics[0].histDuration)}
title="Duration Distribution"
xlabel="Current Runtimes (Hours)"
xtime={true}

View File

@@ -405,7 +405,7 @@ function getMetricConfigDeep(metric, cluster, subCluster) {
}
}
export function convert2uplot(canvasData, minutesToHours = false) {
export function convert2uplot(canvasData, secondsToMinutes = false, secondsToHours = false) {
// Prep: Uplot Data Structure
let uplotData = [[],[]] // [X, Y1, Y2, ...]
// Iterate if exists
@@ -415,10 +415,14 @@ export function convert2uplot(canvasData, minutesToHours = false) {
uplotData[0].push(cd?.max ? cd.max : 0)
uplotData[1].push(cd.count)
} else { // Default
if (minutesToHours) {
let hours = cd.value / 60
console.log("x minutes to y hours", cd.value, hours)
if (secondsToHours) {
let hours = cd.value / 3600
console.log("x seconds to y hours", cd.value, hours)
uplotData[0].push(hours)
} else if (secondsToMinutes) {
let minutes = cd.value / 60
console.log("x seconds to y minutes", cd.value, minutes)
uplotData[0].push(minutes)
} else {
uplotData[0].push(cd.value)
}