@page @model EonaCat.LogStack.Status.Pages.AnalyticsModel @{ ViewData["Title"] = "Analytics"; ViewData["Page"] = "analytics"; }
Uptime & Performance @Model.Reports.Count monitors
@if (!Model.Reports.Any()) {
No check history yet
} else {
@foreach (var r in Model.Reports) { string UptimeCls(double pct) => pct >= 99 ? "rt-good" : pct >= 95 ? "rt-ok" : "rt-slow"; }
Monitor 24h Uptime 7d Uptime 30d Uptime Avg Response Checks (30d) Response Trend
@r.MonitorName @r.Uptime24h.ToString("F1")% @r.Uptime7d.ToString("F1")% @r.Uptime30d.ToString("F1")% @((int)r.AvgResponseMs)ms @r.UpChecks ↑ @r.DownChecks ↓
LOG ERROR RATE - LAST 24H
} @section Scripts { }