aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMartin Ridgers <[email protected]>2025-10-20 13:40:32 +0200
committerGitHub Enterprise <[email protected]>2025-10-20 13:40:32 +0200
commit839b84ad89179bdfa19fb963a55593867be344da (patch)
tree09dc266cadb85a79f1cc440cdf15b51079eba929 /src
parentfix builds storage stats (#590) (diff)
downloadzen-839b84ad89179bdfa19fb963a55593867be344da.tar.xz
zen-839b84ad89179bdfa19fb963a55593867be344da.zip
Mr/dashboard stats summary tweak (#592)
* More robust dashboard stats summary * Updated changelog * Updated frontend zip archive
Diffstat (limited to 'src')
-rw-r--r--src/zenserver/frontend/html.zipbin161191 -> 161397 bytes
-rw-r--r--src/zenserver/frontend/html/pages/start.js23
2 files changed, 14 insertions, 9 deletions
diff --git a/src/zenserver/frontend/html.zip b/src/zenserver/frontend/html.zip
index bb3d61198..4d6766579 100644
--- a/src/zenserver/frontend/html.zip
+++ b/src/zenserver/frontend/html.zip
Binary files differ
diff --git a/src/zenserver/frontend/html/pages/start.js b/src/zenserver/frontend/html/pages/start.js
index d1c13ccc7..fd3778e0a 100644
--- a/src/zenserver/frontend/html/pages/start.js
+++ b/src/zenserver/frontend/html/pages/start.js
@@ -77,6 +77,12 @@ export class Page extends ZenPage
}
// stats
+ const safe_lookup = (obj, path, pretty=undefined) => {
+ const ret = path.split(".").reduce((a,b) => a && a[b], obj);
+ if (ret === undefined) return "-";
+ return pretty ? pretty(ret) : ret;
+ };
+
section = this.add_section("stats");
columns = [
"name",
@@ -90,15 +96,14 @@ export class Page extends ZenPage
for (var provider of (await providers)["providers"])
{
var stats = await new Fetcher().resource("stats", provider).json();
- var values = [""];
- try {
- values.push(stats.requests.count);
- const size_stat = (stats.store || stats.cache).size;
- values.push(Friendly.kib(size_stat.disk));
- values.push(Friendly.kib(size_stat.memory));
- values.push(stats.cid.size.total);
- }
- catch {}
+ var size_stat = (stats.store || stats.cache);
+ var values = [
+ "",
+ safe_lookup(stats, "requests.count"),
+ safe_lookup(size_stat, "size.disk", Friendly.kib),
+ safe_lookup(size_stat, "size.memory", Friendly.kib),
+ safe_lookup(stats, "cid.size.total"),
+ ];
row = stats_table.add_row(...values);
row.get_cell(0).tag().text(provider).on_click((x) => this.view_stat(x), provider);
}