From c33395cee66770c4d88a47537c0ed821f6585f62 Mon Sep 17 00:00:00 2001 From: bndw Date: Sat, 14 Feb 2026 12:29:01 -0800 Subject: fix: properly chain gRPC interceptors and fix dashboard uptime MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two critical fixes for metrics: 1. Fix interceptor chaining - Changed from mixed grpc.UnaryInterceptor/ChainUnaryInterceptor to proper chaining with grpc.ChainUnaryInterceptor - Metrics interceptor now runs first (as intended) - All interceptors properly chained in order: metrics → auth → ratelimit - This fixes metrics not being recorded for any requests 2. Fix dashboard uptime calculation - Changed from page load time to process_start_time_seconds metric - Uptime now persists correctly across page refreshes - Uses Prometheus standard process_start_time_seconds gauge Before: Metrics showed 0 for all requests, uptime reset on refresh After: Metrics properly record all gRPC requests, uptime shows actual relay uptime --- internal/metrics/dashboard.html | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'internal') diff --git a/internal/metrics/dashboard.html b/internal/metrics/dashboard.html index 800b6df..e7af48c 100644 --- a/internal/metrics/dashboard.html +++ b/internal/metrics/dashboard.html @@ -189,7 +189,7 @@ -- cgit v1.2.3