Files
phs_v1.0.1.0/developtools/integration_verification/tools/fotff/utils/pprof.go

27 lines
553 B
Go
Raw Normal View History

2024-09-27 19:16:49 +08:00
package utils
import (
"github.com/sirupsen/logrus"
"net"
"net/http"
_ "net/http/pprof"
"strconv"
)
func EnablePprof() {
var cfg struct {
Enable string `key:"enable" default:"true"`
Port string `key:"port" default:"80"`
}
ParseFromConfigFile("pprof", &cfg)
if enable, _ := strconv.ParseBool(cfg.Enable); !enable {
return
}
server := &http.Server{Addr: net.JoinHostPort("localhost", cfg.Port)}
go func() {
if err := server.ListenAndServe(); err != nil {
logrus.Errorf("server.ListenAndServe returns error: %v", err)
}
}()
}