Skip to content

Commit b45cf75

Browse files
authored
fix(server/v2/api/telemetry): enable global metrics (#22571)
1 parent efc05e8 commit b45cf75

File tree

3 files changed

+16
-2
lines changed

3 files changed

+16
-2
lines changed

server/v2/api/telemetry/server.go

+9-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ type Server[T transaction.Tx] struct {
2828
}
2929

3030
// New creates a new telemetry server.
31-
func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger) (*Server[T], error) {
31+
func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger, enableTelemetry func()) (*Server[T], error) {
3232
srv := &Server[T]{}
3333
serverCfg := srv.Config().(*Config)
3434
if len(cfg) > 0 {
@@ -39,6 +39,14 @@ func New[T transaction.Tx](cfg server.ConfigMap, logger log.Logger) (*Server[T],
3939
srv.config = serverCfg
4040
srv.logger = logger.With(log.ModuleKey, srv.Name())
4141

42+
if enableTelemetry == nil {
43+
panic("enableTelemetry must be provided")
44+
}
45+
46+
if srv.config.Enable {
47+
enableTelemetry()
48+
}
49+
4250
metrics, err := NewMetrics(srv.config)
4351
if err != nil {
4452
return nil, fmt.Errorf("failed to initialize metrics: %w", err)

simapp/v2/simdv2/cmd/commands.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import (
2525
"github.com/cosmos/cosmos-sdk/client/debug"
2626
"github.com/cosmos/cosmos-sdk/client/keys"
2727
"github.com/cosmos/cosmos-sdk/client/rpc"
28+
sdktelemetry "github.com/cosmos/cosmos-sdk/telemetry"
2829
sdk "github.com/cosmos/cosmos-sdk/types"
2930
authcmd "github.com/cosmos/cosmos-sdk/x/auth/client/cli"
3031
"github.com/cosmos/cosmos-sdk/x/genutil"
@@ -118,7 +119,7 @@ func InitRootCmd[T transaction.Tx](
118119
}
119120
}
120121

121-
telemetryServer, err := telemetry.New[T](deps.GlobalConfig, logger)
122+
telemetryServer, err := telemetry.New[T](deps.GlobalConfig, logger, sdktelemetry.EnableTelemetry)
122123
if err != nil {
123124
return nil, err
124125
}

telemetry/metrics.go

+5
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ func IsTelemetryEnabled() bool {
2424
return globalTelemetryEnabled
2525
}
2626

27+
// EnableTelemetry allows for the global telemetry enabled state to be set.
28+
func EnableTelemetry() {
29+
globalTelemetryEnabled = true
30+
}
31+
2732
// globalLabels defines the set of global labels that will be applied to all
2833
// metrics emitted using the telemetry package function wrappers.
2934
var globalLabels = []metrics.Label{}

0 commit comments

Comments
 (0)