elastic / elastic/elastic-agent

[breaking-change] Undocumented breaking changes detected (2026-06-15)

Open
#14,907 3 comments 0 reactions 0 assignees View on GitHub
Team:Elastic-Agent-Control-Plane
Dominant language
Go
Stars
275
Forks
264
Avg merge
1d 20h
Merged PRs (30d)
303

Description

Recent commits introduced breaking changes that appear undocumented.

## Breaking Changes

### 1. EDOT OTel contrib bump includes unsupported/migrated config and behavior changes

**Commit(s):** [`bbebe774d5c029d7543dc151960b3a51208bd3f2`](https://github.com/elastic/elastic-agent/commit/bbebe774d5c029d7543dc151960b3a51208bd3f2)

**PR:** https://github.com/elastic/elastic-agent/pull/14883

**What broke:** The EDOT dependency bump from OTel Collector contrib `v0.152.0` to `v0.153.0` includes upstream breaking changes for components that EDOT advertises/supports:

- `awslogsencodingextension`: deprecated format values (`vpc_flow_log`, `elb_access_log`, `s3_access_log`, `cloudtrail_log`, `waf_log`, `cloudwatch_logs_subscription_filter`) and the `vpc_flow_log` config field were removed.
- `filterprocessor`: default `error_mode` changed from `propagate` to `ignore` unless `--feature-gates=-processor.filter.defaultErrorModeIgnore` is used.
- `transformprocessor`: default top-level `error_mode` changed from `propagate` to `ignore` unless `--feature-gates=-processor.transform.defaultErrorModeIgnore` is used.
- `httpcheckreceiver`: timing duration metrics now report nanoseconds instead of milliseconds.
- `jaegerreceiver`: stable gate `receiver.jaeger.DisableRemoteSampling` was removed.

**Evidence:**

- `internal/edot/go.mod:35`, `:58`, `:194`, `:199`, and `:202` pin `awslogsencodingextension`, `jaegerreceiver`, `filterprocessor`, `transformprocessor`, and `httpcheckreceiver` to `v0.153.0`.
- `internal/edot/README.md:50`, `:52`, `:106`, `:115`, and `:123` list those same components as EDOT components at `v0.153.0`.
- The upstream OTel contrib `v0.153.0` release notes list the breaking changes above: https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.153.0

**Why undocumented:** PR #14883 describes the version bump and generated files, but does not mention migration guidance for these upstream breaking changes. The merged changelog fragment only says `Update OTel Collector components to v0.153.0` (`changelog/fragments/1781291375-update-otel-components-to-v0.153.0.yaml:1-3`). PR comments and existing issue/PR searches did not show this break already tracked.

**Suggested fix:** Add release-note or EDOT documentation that calls out the affected components and the required migrations/behavior changes for existing EDOT configs.

## Suggested Actions

- [ ] Document each EDOT-visible breaking change in release notes or EDOT docs.
- [ ] Add migration guidance for removed AWS logs encoding values/config, changed `error_mode` defaults, HTTP check metric units, and removed Jaeger feature gate.

---
[What is this?](https://ela.st/github-ai-tools) | [From workflow: Breaking Change Detect](https://github.com/elastic/elastic-agent/actions/runs/27555853345)

Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not.
> - [x] expires on Jun 22, 2026, 3:21 PM UTC

Contributor guide

Open the contributing guide

Research direction

Start by reading internal/edot/README.md and internal/edot/go.mod at the cited component entries, then review the upstream OTel Collector contrib v0.153.0 release notes. Document the affected EDOT-visible changes and migration guidance in release notes or EDOT documentation, including removed AWS logs settings, error_mode defaults, HTTP check metric units, and the Jaeger gate.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.