Skip to main content

OTEL-028: spike_limit_mib >= limit_mib (soft limit zero or negative)

Severity: deny (blocking)

Rule Details

memory_limiter uses two thresholds: limit_mib is the hard ceiling and spike_limit_mib is the headroom subtracted from it to form a soft ceiling (limit_mib - spike_limit_mib). If spike_limit_mib >= limit_mib the soft ceiling is zero or negative, which means the limiter jumps straight to "refuse everything" the moment the Collector allocates anything at all. That is not how you want back-pressure to behave.

This rule fires when spike_limit_mib >= limit_mib on any memory_limiter processor.

Options

FieldConstraint
spike_limit_mibMust be < limit_mib

Examples

Incorrect
processors:
memory_limiter:
check_interval: 5s
limit_mib: 512
spike_limit_mib: 768 # larger than limit_mib
Correct
processors:
memory_limiter:
check_interval: 5s
limit_mib: 512
spike_limit_mib: 128

When Not To Use It

Never — the configuration cannot do anything useful.

  • OTEL-001memory_limiter processor must be configured
  • OTEL-027memory_limiter check_interval is 0 or unset
  • OTEL-029 — neither limit_mib nor limit_percentage set
  • OTEL-030limit_percentage outside safe range

Version

Available since augur v0.1.0.

Further Reading

Resources