From ccbabd9e2a631ad22a0f9ea73e762736f5779d24 Mon Sep 17 00:00:00 2001 From: Zoltan Papp Date: Tue, 12 Aug 2025 12:24:24 +0200 Subject: [PATCH] Add pprof support for Relay server (#4203) --- relay/cmd/pprof.go | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 relay/cmd/pprof.go diff --git a/relay/cmd/pprof.go b/relay/cmd/pprof.go new file mode 100644 index 000000000..37efd35f0 --- /dev/null +++ b/relay/cmd/pprof.go @@ -0,0 +1,33 @@ +//go:build pprof +// +build pprof + +package cmd + +import ( + "net/http" + _ "net/http/pprof" + "os" + + log "github.com/sirupsen/logrus" +) + +func init() { + addr := pprofAddr() + go pprof(addr) +} + +func pprofAddr() string { + listenAddr := os.Getenv("NB_PPROF_ADDR") + if listenAddr == "" { + return "localhost:6969" + } + + return listenAddr +} + +func pprof(listenAddr string) { + log.Infof("listening pprof on: %s\n", listenAddr) + if err := http.ListenAndServe(listenAddr, nil); err != nil { + log.Fatalf("Failed to start pprof: %v", err) + } +}