elastic / elastic/elastic-agent

[elastic-agent] Allow runtime specific Fleet configuration overrides

Open
#13,348 5 comments 0 reactions 0 assignees View on GitHub
Team:Elastic-Agent-Control-Plane
Dominant language
Go
Stars
275
Forks
264
Avg merge
1d 23h
Merged PRs (30d)
312

Description

- Relates https://github.com/elastic/elastic-agent/pull/11524

Our use case for Fleet configuration overrides needs to be able to inject rate limits via an OTel collector processor. However, not all inputs inputs support the otel runtime and when this processor is unconditionally injected in a configuration that uses the process runtime for example with:

```yaml
outputs:
es-default-output-internal:
type: elasticsearch
ssl:
verification_mode: none
processors:
- ratelimiter/agentless
agent:
monitoring:
enabled: true
http:
enabled: true
host: 0.0.0.0
port: ${AGENT_MONITORING_PORT}
logging:
level: info
to_stderr: true
providers:
initial_default: false
fleet:
enabled: true
providers:
local:
enabled: true
processors:
ratelimiter/agentless:
burst: 300
rate: 300
strategy: records
throttle_behavior: delay
```

The result is the following error because the processor is defined but never associated with a pipeline.

```
invalid configuration: no receiver configuration specified in config; service::pipelines: service must have at least one pipeline
```

We need a way to make application of a runtime specific override easy to do.

Contributor guide

Open the contributing guide

Research direction

Start by reading the related pull request 11524 and reproducing the configuration shown in the issue. Trace how the Fleet override reaches the process runtime and verify a runtime-specific override can avoid applying incompatible processors while still producing a valid pipeline configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
devops, observability-sre
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.