diff --git a/cmd/thor/flags.go b/cmd/thor/flags.go index 50f67e946..9ae31d795 100644 --- a/cmd/thor/flags.go +++ b/cmd/thor/flags.go @@ -142,8 +142,8 @@ var ( Value: 16, Usage: "set tx limit per account in pool", } - disableTelemetryFlag = cli.BoolFlag{ - Name: "disable-telemetry", - Usage: "disable telemetry server", + enableTelemetryFlag = cli.BoolFlag{ + Name: "enable-telemetry", + Usage: "enables telemetry server", } ) diff --git a/cmd/thor/main.go b/cmd/thor/main.go index 12341a47e..c09740c76 100644 --- a/cmd/thor/main.go +++ b/cmd/thor/main.go @@ -87,7 +87,7 @@ func main() { pprofFlag, verifyLogsFlag, disablePrunerFlag, - disableTelemetryFlag, + enableTelemetryFlag, }, Action: defaultAction, Commands: []cli.Command{ @@ -113,7 +113,7 @@ func main() { txPoolLimitFlag, txPoolLimitPerAccountFlag, disablePrunerFlag, - disableTelemetryFlag, + enableTelemetryFlag, }, Action: soloAction, }, @@ -143,7 +143,7 @@ func defaultAction(ctx *cli.Context) error { initLogger(ctx) // enable telemetry as soon as possible - enableTelemetry := !ctx.Bool(disableTelemetryFlag.Name) // positive booleans are easier to read + enableTelemetry := ctx.Bool(enableTelemetryFlag.Name) if enableTelemetry { telemetry.InitializePrometheusTelemetry() } @@ -258,7 +258,7 @@ func soloAction(ctx *cli.Context) error { initLogger(ctx) // enable telemetry as soon as possible - enableTelemetry := !ctx.Bool(disableTelemetryFlag.Name) // positive booleans are easier to read + enableTelemetry := ctx.Bool(enableTelemetryFlag.Name) if enableTelemetry { telemetry.InitializePrometheusTelemetry() } diff --git a/telemetry/noop_test.go b/telemetry/noop_test.go new file mode 100644 index 000000000..9b110a42a --- /dev/null +++ b/telemetry/noop_test.go @@ -0,0 +1,43 @@ +package telemetry + +import ( + "github.com/stretchr/testify/require" + "math/rand" + "net/http" + "net/http/httptest" + "testing" +) + +func TestNoopTelemetry(t *testing.T) { + server := httptest.NewServer(Handler()) + + t.Cleanup(func() { + server.Close() + }) + + // 2 ways of accessing it - useful to avoid lookups + count1 := Counter("count1") + Counter("count2") + + count1.Add(1) + randCount2 := rand.Intn(100) + 1 + for i := 0; i < randCount2; i++ { + Counter("count2").Add(1) + } + + hist := Histogram("hist1") + histTotal := 0 + for i := 0; i < rand.Intn(100)+1; i++ { + hist.Observe(int64(i)) + histTotal += i + } + + // Make a request to the metrics endpoint + resp, err := http.Get(server.URL + "/metrics") + if err != nil { + t.Errorf("Failed to make GET request: %v", err) + } + + defer resp.Body.Close() + require.Equal(t, resp.StatusCode, 404) +}