Skip to content

Add opampextension to EDOT Collector#12857

Merged
ycombinator merged 7 commits intoelastic:mainfrom
ycombinator:edot-add-opamp-ext
Feb 20, 2026
Merged

Add opampextension to EDOT Collector#12857
ycombinator merged 7 commits intoelastic:mainfrom
ycombinator:edot-add-opamp-ext

Conversation

@ycombinator
Copy link
Copy Markdown
Contributor

What does this PR do?

Adds opampextension as a Core component to the EDOT Collector (internal/edot).

Changes:

  • Added github.com/open-telemetry/opentelemetry-collector-contrib/extension/opampextension v0.145.0 as a direct dependency in go.mod
  • Registered opampextension.NewFactory() in the EDOT Collector's extension factory list (otelcol/components.go)
  • Marked opampextension as a Core component in components.yml
  • Updated golden files (components-output.yml and components-output-fips.yml) to include the opamp extension entry (stability: Alpha)
  • Updated go.sum and NOTICE.txt/NOTICE-fips.txt via go mod tidy and mage notice

Why is it important?

The OpAMP (Open Agent Management Protocol) extension enables the EDOT Collector to communicate with an OpAMP server for remote management and configuration. This will allow Fleet Server to monitor and manage EDOT Collector via OpAMP.

Checklist

  • I have read and understood the pull request guidelines of this project.
  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in ./changelog/fragments using the changelog tool
  • I have added an integration test or an E2E test

Disruptive User Impact

No disruptive impact. This adds a new optional extension to the EDOT Collector; existing configurations are unaffected.

How to test this PR locally

Run the EDOT Collector and verify the opamp extension is listed:

elastic-agent otel components | grep opamp

Related issues

Questions to ask yourself

  • How are we going to support this in production? The opampextension is an upstream OTel Contrib component maintained by the OTel community.
  • How are we going to measure its adoption? Via configuration usage telemetry.
  • How are we going to debug this? Standard OTel Collector logging applies; the extension exposes its own status via the health check mechanism.

ycombinator and others added 5 commits February 19, 2026 05:58
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@ycombinator ycombinator requested a review from a team as a code owner February 19, 2026 14:22
@ycombinator ycombinator added the Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team label Feb 19, 2026
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/elastic-agent-control-plane (Team:Elastic-Agent-Control-Plane)

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Feb 19, 2026

This pull request does not have a backport label. Could you fix it @ycombinator? 🙏
To fixup this pull request, you need to add the backport labels for the needed
branches, such as:

  • backport-./d./d is the label that automatically backports to the 8./d branch. /d is the digit
  • backport-active-all is the label that automatically backports to all active branches.
  • backport-active-8 is the label that automatically backports to all active minor branches for the 8 major.
  • backport-active-9 is the label that automatically backports to all active minor branches for the 9 major.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@ycombinator ycombinator added enhancement New feature or request backport-active-9 Automated backport with mergify to all the active 9.[0-9]+ branches labels Feb 19, 2026
cmacknz
cmacknz previously approved these changes Feb 19, 2026
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@elasticmachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

History

cc @ycombinator

@ycombinator ycombinator merged commit e8076e4 into elastic:main Feb 20, 2026
23 checks passed
@ycombinator ycombinator deleted the edot-add-opamp-ext branch February 20, 2026 00:52
@github-actions
Copy link
Copy Markdown
Contributor

@Mergifyio backport 9.2 9.3

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Feb 20, 2026

backport 9.2 9.3

✅ Backports have been created

Details

Cherry-pick of e8076e4 has failed:

On branch mergify/bp/9.2/pr-12857
Your branch is up to date with 'origin/9.2'.

You are currently cherry-picking commit e8076e44e.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	new file:   changelog/fragments/1771511114-add-opamp-extension-to-edot-collector.yaml
	modified:   internal/edot/cmd/testdata/otel/components-output-fips.yml
	modified:   internal/edot/cmd/testdata/otel/components-output.yml
	modified:   internal/pkg/otel/components.yml

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   NOTICE-fips.txt
	both modified:   NOTICE.txt
	both modified:   internal/edot/go.mod
	both modified:   internal/edot/go.sum
	both modified:   internal/edot/otelcol/components.go
	both modified:   internal/pkg/otel/README.md

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

Cherry-pick of e8076e4 has failed:

On branch mergify/bp/9.3/pr-12857
Your branch is up to date with 'origin/9.3'.

You are currently cherry-picking commit e8076e44e.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   NOTICE-fips.txt
	modified:   NOTICE.txt
	new file:   changelog/fragments/1771511114-add-opamp-extension-to-edot-collector.yaml
	modified:   internal/edot/cmd/testdata/otel/components-output-fips.yml
	modified:   internal/edot/cmd/testdata/otel/components-output.yml
	modified:   internal/edot/components.yml
	modified:   internal/edot/otelcol/components.go

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   internal/edot/README.md
	both modified:   internal/edot/go.mod
	both modified:   internal/edot/go.sum

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

mergify bot pushed a commit that referenced this pull request Feb 20, 2026
* Add opampextension to EDOT Collector go.mod

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Register opampextension factory in EDOT Collector

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Mark opampextension as a Core component in components.yml

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Update golden files to include opamp extension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Run go mod tidy and mage notice for opampextension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add changelog fragment for opampextension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Update README and fix import ordering for opampextension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit e8076e4)

# Conflicts:
#	NOTICE-fips.txt
#	NOTICE.txt
#	internal/edot/go.mod
#	internal/edot/go.sum
#	internal/edot/otelcol/components.go
#	internal/pkg/otel/README.md
mergify bot pushed a commit that referenced this pull request Feb 20, 2026
* Add opampextension to EDOT Collector go.mod

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Register opampextension factory in EDOT Collector

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Mark opampextension as a Core component in components.yml

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Update golden files to include opamp extension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Run go mod tidy and mage notice for opampextension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add changelog fragment for opampextension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Update README and fix import ordering for opampextension

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit e8076e4)

# Conflicts:
#	internal/edot/README.md
#	internal/edot/go.mod
#	internal/edot/go.sum
ycombinator added a commit that referenced this pull request Feb 20, 2026
* Add opampextension to EDOT Collector

* Adding CHANGELOG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-active-9 Automated backport with mergify to all the active 9.[0-9]+ branches enhancement New feature or request Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants