@@ -36,11 +36,14 @@ import (
3636 "github.com/chainloop-dev/chainloop/pkg/credentials/manager"
3737 "github.com/chainloop-dev/chainloop/pkg/servicelogger"
3838
39+ _ "net/http/pprof"
40+
3941 "github.com/go-kratos/kratos/v2"
4042 "github.com/go-kratos/kratos/v2/config"
4143 "github.com/go-kratos/kratos/v2/config/env"
4244 "github.com/go-kratos/kratos/v2/config/file"
4345 "github.com/go-kratos/kratos/v2/log"
46+ "github.com/go-kratos/kratos/v2/transport"
4447 "github.com/go-kratos/kratos/v2/transport/grpc"
4548 "github.com/go-kratos/kratos/v2/transport/http"
4649)
@@ -61,15 +64,20 @@ func init() {
6164 flag .StringVar (& flagconf , "conf" , "../configs" , "config path, eg: -conf config.yaml" )
6265}
6366
64- func newApp (logger log.Logger , gs * grpc.Server , hs * http.Server , ms * server.HTTPMetricsServer , expirer * biz.WorkflowRunExpirerUseCase , plugins sdk.AvailablePlugins , tokenSync * biz.APITokenSyncerUseCase ) * app {
67+ func newApp (logger log.Logger , gs * grpc.Server , hs * http.Server , ms * server.HTTPMetricsServer , profilerSvc * server.HTTPProfilerServer , expirer * biz.WorkflowRunExpirerUseCase , plugins sdk.AvailablePlugins , tokenSync * biz.APITokenSyncerUseCase , cfg * conf.Bootstrap ) * app {
68+ servers := []transport.Server {gs , hs , ms }
69+ if cfg .EnableProfiler {
70+ servers = append (servers , profilerSvc )
71+ }
72+
6573 return & app {
6674 kratos .New (
6775 kratos .ID (id ),
6876 kratos .Name (Name ),
6977 kratos .Version (Version ),
7078 kratos .Metadata (map [string ]string {}),
7179 kratos .Logger (logger ),
72- kratos .Server (gs , hs , ms ),
80+ kratos .Server (servers ... ),
7381 ), expirer , plugins , tokenSync }
7482}
7583
0 commit comments