feat(stats): serve historical stats from hourly rollups

Stats endpoints read hourly rollup tables filled once per closed hour by one
advisory-locked task, instead of materialized views that re-scanned every
observation on each refresh. IATA-set tables give exact distinct counts for any
IATA set or region. Cleanup holds raw rows for unrolled hours (up to 24h).

Adds /stats/series; ingest keeps packet observation counts, observer last IATA,
channel message counts and trace tag summaries. 001_baseline.sql is rewritten,
so pre-release 2.0 databases must be recreated. See docs/historical-stats.md.
This commit is contained in:
MrAlders0n authored and MrAlders0n committed 2026-10-02 07:43:56 -04:00
1 parent 6cd03e73da
commit 98006a9364
112 files changed
+6766 -2828

No files matched your search

+371 -365
View File
File diff suppressed because it is too large. Load diff