From 1e6899ef4cb530a53a1ad03e5573291296a118ba Mon Sep 17 00:00:00 2001 From: HuangYi Date: Thu, 19 Jan 2023 10:54:50 +0800 Subject: [PATCH] fix telemetry setup adapt for the changes in https://github.com/cosmos/cosmos-sdk/pull/12448 --- server/start.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/server/start.go b/server/start.go index 4de3c38c57..51b582df2a 100644 --- a/server/start.go +++ b/server/start.go @@ -14,6 +14,7 @@ import ( "github.com/cosmos/cosmos-sdk/codec" "github.com/cosmos/cosmos-sdk/crypto/keyring" + "github.com/cosmos/cosmos-sdk/telemetry" "github.com/spf13/cobra" @@ -230,6 +231,16 @@ func startStandAlone(ctx *server.Context, opts StartOptions) error { app := opts.AppCreator(ctx.Logger, db, traceWriter, ctx.Viper) + config, err := config.GetConfig(ctx.Viper) + if err != nil { + return err + } + + _, err = startTelemetry(config) + if err != nil { + return err + } + svr, err := abciserver.NewServer(addr, transport, app) if err != nil { return fmt.Errorf("error creating listener: %v", err) @@ -455,10 +466,18 @@ func startInProcess(ctx *server.Context, clientCtx client.Context, opts StartOpt } } + metrics, err := startTelemetry(config) + if err != nil { + return err + } + var apiSrv *api.Server if config.API.Enable { apiSrv = api.New(clientCtx, ctx.Logger.With("server", "api")) app.RegisterAPIRoutes(apiSrv, config.API) + if config.Telemetry.Enabled { + apiSrv.SetTelemetry(metrics) + } errCh := make(chan error) go func() { if err := apiSrv.Start(config.Config); err != nil { @@ -601,3 +620,10 @@ func openTraceWriter(traceWriterFile string) (w io.Writer, err error) { 0o600, ) } + +func startTelemetry(cfg config.Config) (*telemetry.Metrics, error) { + if !cfg.Telemetry.Enabled { + return nil, nil + } + return telemetry.New(cfg.Telemetry) +}