From 6b7d6d81bb4966cfc0abb8eb2da588b057c2fa64 Mon Sep 17 00:00:00 2001 From: Wim Brand Date: Tue, 20 Jan 2026 14:19:44 +0100 Subject: [PATCH] Add aggregate statistics --- svelte/src/admin_panel/HostMetrics.svelte | 5 + .../src/admin_panel/HostMetricsGraph.svelte | 107 +++++++++++------- svelte/src/lib/AdminAPI.ts | 17 +++ 3 files changed, 90 insertions(+), 39 deletions(-) diff --git a/svelte/src/admin_panel/HostMetrics.svelte b/svelte/src/admin_panel/HostMetrics.svelte index b9f4b33..2560cf1 100644 --- a/svelte/src/admin_panel/HostMetrics.svelte +++ b/svelte/src/admin_panel/HostMetrics.svelte @@ -3,6 +3,7 @@ import { onMount } from "svelte"; import HostMetricsGraph from "./HostMetricsGraph.svelte"; import { load_host_names } from "./HostMetricsLib"; import Expandable from "util/Expandable.svelte"; +import ToggleButton from "layout/ToggleButton.svelte"; const groups: { title: string, @@ -71,6 +72,7 @@ const groups: { let dataWindow: number = $state(60) let dataInterval: number = $state(1) +let showAggregate: boolean = $state(false) const setWindow = (window: number, interval: number) => { dataWindow = window @@ -96,6 +98,8 @@ onMount(async () => { +
+ Aggregate {#each groups as group (group.title)} @@ -111,6 +115,7 @@ onMount(async () => { interval={dataInterval} metric={graph.metric} data_type={graph.data_type} + aggregate={showAggregate} /> {/each} diff --git a/svelte/src/admin_panel/HostMetricsGraph.svelte b/svelte/src/admin_panel/HostMetricsGraph.svelte index 9639788..26f638b 100644 --- a/svelte/src/admin_panel/HostMetricsGraph.svelte +++ b/svelte/src/admin_panel/HostMetricsGraph.svelte @@ -1,85 +1,114 @@