MetaCredo.Check.Observability.TelemetryInRecursiveFunction (MetaCredo v0.1.0)

View Source

Detects telemetry/metrics emissions inside recursive functions. This causes metric spam (N emissions for N iterations), performance degradation, and misleading metrics. Instead, wrap the entire recursive operation with telemetry at the top level.

Category: Observability / Priority: high

Configuration

Accepts the following parameters via .metacredo.exs:

  • telemetry_indicators - Function name fragments that indicate telemetry/metrics calls (default: {:sigil_W, [delimiter: "[", line: 7, column: 9], [{:<<>>, [line: 7, column: 9], ["telemetry metric statsd emit record increment gauge timing histogram counter execute span observe"]}, []]})