ipn/ipnlocal: add c2n pprof option to force a GC

Like net/http/pprof has.

Updates tailscale/corp#18514

Change-Id: I264adb6dcf5732d19707783b29b7273b4ca69cf4
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
Brad Fitzpatrick 2024-03-20 21:02:33 -07:00 committed by Brad Fitzpatrick
parent 5d1c72f76b
commit 6a860cfb35
1 changed files with 6 additions and 0 deletions

View File

@ -7,11 +7,17 @@ package ipnlocal
import (
"net/http"
"runtime"
"runtime/pprof"
"strconv"
)
func init() {
c2nLogHeap = func(w http.ResponseWriter, r *http.Request) {
// Support same optional gc parameter as net/http/pprof:
if gc, _ := strconv.Atoi(r.FormValue("gc")); gc > 0 {
runtime.GC()
}
pprof.WriteHeapProfile(w)
}
}