From 7885b21f429446c9f5ce57edc9a1bad480f645f4 Mon Sep 17 00:00:00 2001 From: Mark Pashmfouroush Date: Fri, 12 Apr 2024 04:31:35 +0100 Subject: [PATCH] misc add profiler endpoint Signed-off-by: Mark Pashmfouroush --- go.mod | 2 ++ go.sum | 4 ++++ main.go | 7 +++++++ 3 files changed, 13 insertions(+) diff --git a/go.mod b/go.mod index bbc54c0fc..24570eb22 100644 --- a/go.mod +++ b/go.mod @@ -13,6 +13,7 @@ require ( github.com/google/go-cmp v0.6.0 github.com/hashicorp/golang-lru v1.0.2 github.com/peterbourgon/ff/v4 v4.0.0-alpha.4 + github.com/pkg/profile v1.7.0 github.com/quic-go/quic-go v0.40.1 github.com/refraction-networking/utls v1.3.3 github.com/rodaine/table v1.1.1 @@ -39,6 +40,7 @@ require ( github.com/dchest/siphash v1.2.3 // indirect github.com/dgraph-io/badger v1.5.4-0.20180815194500-3a87f6d9c273 // indirect github.com/dgryski/go-farm v0.0.0-20180109070241-2de33835d102 // indirect + github.com/felixge/fgprof v0.9.3 // indirect github.com/gaukas/godicttls v0.0.4 // indirect github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 // indirect github.com/golang/protobuf v1.5.3 // indirect diff --git a/go.sum b/go.sum index 678cc3077..85422b980 100644 --- a/go.sum +++ b/go.sum @@ -53,6 +53,8 @@ github.com/elazarl/goproxy/ext v0.0.0-20200809112317-0581fc3aee2d h1:st1tmvy+4du github.com/elazarl/goproxy/ext v0.0.0-20200809112317-0581fc3aee2d/go.mod h1:gNh8nYJoAm43RfaxurUnxr+N1PwuFV3ZMl/efxlIlY8= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= +github.com/felixge/fgprof v0.9.3 h1:VvyZxILNuCiUCSXtPtYmmtGvb65nqXh2QFWc0Wpf2/g= +github.com/felixge/fgprof v0.9.3/go.mod h1:RdbpDgzqYVh/T9fPELJyV7EYJuHB55UTEULNun8eiPw= github.com/florianl/go-nfqueue v1.1.1-0.20200829120558-a2f196e98ab0 h1:7ZJyJV4KiWBijCCzUPvVaqxsDxO36+KD0XKBdEN3I+8= github.com/florianl/go-nfqueue v1.1.1-0.20200829120558-a2f196e98ab0/go.mod h1:2z3Tfqwv2ueuK6h563xUHRcCh1mv38wS9EjiWiesk84= github.com/flynn/noise v1.1.0 h1:KjPQoQCEFdZDiP03phOvGi11+SVVhBG2wOWAorLsstg= @@ -158,6 +160,8 @@ github.com/pion/transport/v2 v2.2.3/go.mod h1:q2U/tf9FEfnSBGSW6w5Qp5PFWRLRj3NjLh github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/profile v1.7.0 h1:hnbDkaNWPCLMO9wGLdBFTIZvzDrDfBM2072E1S9gJkA= +github.com/pkg/profile v1.7.0/go.mod h1:8Uer0jas47ZQMJ7VD+OHknK4YDY07LPUC6dEvqDjvNo= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/quic-go/qpack v0.4.0 h1:Cr9BXA1sQS2SmDUWjSofMPNKmvF6IiIfDRmgU0w1ZCo= diff --git a/main.go b/main.go index 257ceaa55..51c63e823 100644 --- a/main.go +++ b/main.go @@ -5,6 +5,7 @@ import ( "errors" "fmt" "log/slog" + "net/http" "net/netip" "os" "os/signal" @@ -20,6 +21,7 @@ import ( "github.com/peterbourgon/ff/v4" "github.com/peterbourgon/ff/v4/ffhelp" "github.com/peterbourgon/ff/v4/ffjson" + "github.com/pkg/profile" ) var psiphonCountries = []string{ @@ -56,6 +58,11 @@ var psiphonCountries = []string{ } func main() { + defer profile.Start(profile.MemProfile).Stop() + go func() { + http.ListenAndServe("127.0.0.1:8880", nil) + }() + fs := ff.NewFlagSet("warp-plus") var ( v4 = fs.BoolShort('4', "only use IPv4 for random warp endpoint")