summaryrefslogtreecommitdiffstats
path: root/cmd/relay
diff options
context:
space:
mode:
authorbndw <ben@bdw.to>2026-02-14 12:49:08 -0800
committerbndw <ben@bdw.to>2026-02-14 12:49:08 -0800
commit40df56985402a31695a9a3bb13319bd2a3276305 (patch)
treef95842afe4e75b93dfea49b94e5a6815c0d936ce /cmd/relay
parent9711b2b177959c0ea8e5119bead16dfd40b12c47 (diff)
feat: track WebSocket subscriptions in metrics
Add metrics tracking for WebSocket (NIP-01) subscriptions in addition to existing gRPC subscription tracking. Changes: - Add Count() method to subscription.Manager - Add MetricsRecorder interface to WebSocket handler - Update subscription metrics when REQ/CLOSE messages processed - Wire up metrics to WebSocket handler in main.go Before: Only gRPC stream subscriptions were counted After: Both gRPC and WebSocket subscriptions tracked accurately This fixes the dashboard showing 0 subscriptions when clients connect via WebSocket (e.g., nak req --stream).
Diffstat (limited to 'cmd/relay')
-rw-r--r--cmd/relay/main.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/cmd/relay/main.go b/cmd/relay/main.go
index 457a719..e4fe9bc 100644
--- a/cmd/relay/main.go
+++ b/cmd/relay/main.go
@@ -93,6 +93,9 @@ func main() {
93 } 93 }
94 94
95 wsHandler := wshandler.NewHandler(store, subManager) 95 wsHandler := wshandler.NewHandler(store, subManager)
96 if m != nil {
97 wsHandler.SetMetrics(m)
98 }
96 99
97 var grpcDisplay, httpDisplay, wsDisplay string 100 var grpcDisplay, httpDisplay, wsDisplay string
98 if cfg.Server.PublicURL != "" { 101 if cfg.Server.PublicURL != "" {