diff --git a/restagent/restagent.go b/restagent/restagent.go index c1498b0b..ec8afd3c 100644 --- a/restagent/restagent.go +++ b/restagent/restagent.go @@ -24,9 +24,7 @@ import ( "be.ems/restagent/config" "be.ems/src" "be.ems/src/framework/middleware" - "github.com/chenjiandongx/ginprom" "github.com/gin-gonic/gin" - "github.com/prometheus/client_golang/prometheus/promhttp" "golang.org/x/net/http2" "golang.org/x/net/http2/h2c" ) @@ -195,6 +193,14 @@ func main() { app := src.AppEngine() conf := config.GetYamlConfig() + + if conf.Pprof.Enabled { + // 启用pprof HTTP服务 + go func() { + fmt.Println(http.ListenAndServe(conf.Pprof.Addr, nil)) + }() + } + log.InitLogger(conf.Logger.File, conf.Logger.Duration, conf.Logger.Count, "omc:restagent", config.GetLogLevel()) fmt.Printf("OMC restagent version: %s\n", global.Version) log.Infof("========================= OMC restagent startup =========================") @@ -245,17 +251,6 @@ func main() { // AMF上报的UE事件, 无前缀,暂时特殊处理 app.POST(event.UriUEEvent, event.PostUEEventFromAMF) - // 性能分析监控 - if conf.Pprof.Enabled { - app.Use(ginprom.PromMiddleware(nil)) - app.GET("/metrics", ginprom.PromHandler(promhttp.Handler())) - - // 启用pprof HTTP服务 - go func() { - fmt.Println(http.ListenAndServe(conf.Pprof.Addr, nil)) - }() - } - var listenLocalhost bool = false for _, rest := range conf.Rest { // ipv4 goroutines diff --git a/src/app.go b/src/app.go index b6b73297..ff2abb3f 100644 --- a/src/app.go +++ b/src/app.go @@ -18,7 +18,9 @@ import ( "be.ems/src/modules/trace" "be.ems/src/modules/ws" + "github.com/chenjiandongx/ginprom" "github.com/gin-gonic/gin" + "github.com/prometheus/client_golang/prometheus/promhttp" ) //go:embed assets/* @@ -28,6 +30,13 @@ var assetsDir embed.FS func AppEngine() *gin.Engine { app := initAppEngine() + // TODO 不建议在主分支中加入 + // 性能分析监控 + if promEnabled := config.Get("pprof.enabled"); promEnabled != nil && promEnabled.(bool) { + app.Use(ginprom.PromMiddleware(nil)) + app.GET("/metrics", ginprom.PromHandler(promhttp.Handler())) + } + // 初始全局默认 initDefeat(app)