Skip to content

Introduce verifier receiver to EDOT#12728

Closed
jeniawhite wants to merge 3 commits into
elastic:mainfrom
jeniawhite:evgb-VerifierReceiver
Closed

Introduce verifier receiver to EDOT#12728
jeniawhite wants to merge 3 commits into
elastic:mainfrom
jeniawhite:evgb-VerifierReceiver

Conversation

@jeniawhite
Copy link
Copy Markdown
Contributor

What does this PR do?

Adds verifierreceiver to the Elastic Distribution for OpenTelemetry Collector (EDOT). This receiver checks that Cloud Connector integrations (e.g. AWS CloudTrail, GuardDuty, S3) have the required IAM/credential permissions and reports the results as OTEL logs.

Why is it important?

Cloud Connector integrations (e.g. AWS CloudTrail, GuardDuty, S3) depend on IAM roles and credentials having the right permissions. Missing or wrong permissions lead to failed collection, partial data, and long debugging sessions. The verifier receiver lets users check that the configured credentials actually have the permissions required by each integration, and get those results as OTEL logs. That supports on-demand or scheduled permission verification in the Cloud Connector workflow, reduces misconfiguration, and makes it easier to confirm and troubleshoot permissions for integrations.

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

How to test this PR locally

Related issues

Questions to ask yourself

  • How are we going to support this in production?
  • How are we going to measure its adoption?
  • How are we going to debug this?
  • What are the metrics I should take care of?
  • ...

@jeniawhite jeniawhite added the enhancement New feature or request label Feb 12, 2026
@mergify
Copy link
Copy Markdown
Contributor

mergify Bot commented Feb 12, 2026

This pull request does not have a backport label. Could you fix it @jeniawhite? 🙏
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.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 12, 2026

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 12, 2026

Vale Linting Results

Summary: 1 suggestion found

💡 Suggestions (1)
File Line Rule Message
docs/reference/edot-collector/components/verifierreceiver.md 120 Elastic.WordChoice Consider using 'can, might' instead of 'may', unless the term is in the UI.

The Vale linter checks documentation changes against the Elastic Docs style guide.

To use Vale locally or report issues, refer to Elastic style guide for Vale.

Comment thread internal/edot/go.mod

replace github.com/elastic/beats/v7 => ../../beats

replace github.com/elastic/opentelemetry-collector-components/receiver/verifierreceiver => ../../../opentelemetry-collector-components/receiver/verifierreceiver
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will be changed once verifier will get merged

Comment thread internal/edot/go.mod
github.com/elastic/opentelemetry-collector-components/processor/elasticinframetricsprocessor v0.29.0
github.com/elastic/opentelemetry-collector-components/processor/elastictraceprocessor v0.29.0
github.com/elastic/opentelemetry-collector-components/receiver/elasticapmintakereceiver v0.29.0
github.com/elastic/opentelemetry-collector-components/receiver/verifierreceiver v0.0.0
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

v0.0.0 version will be changed after merge

@mergify
Copy link
Copy Markdown
Contributor

mergify Bot commented Feb 18, 2026

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b evgb-VerifierReceiver upstream/evgb-VerifierReceiver
git merge upstream/main
git push upstream evgb-VerifierReceiver

jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 3, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.

Made-with: Cursor
@jeniawhite
Copy link
Copy Markdown
Contributor Author

Superseded by #13021 which moves the verifier receiver code directly into elastic-agent instead of importing it from opentelemetry-collector-components, per feedback from @axw and @cmacknz on elastic/opentelemetry-collector-components#1046 (comment).

@jeniawhite jeniawhite closed this Mar 3, 2026
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 4, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 4, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 17, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 24, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 24, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 27, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 27, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 27, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 27, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 30, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Mar 30, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Apr 3, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit to jeniawhite/elastic-agent that referenced this pull request Apr 3, 2026
…stic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces elastic#12728.
jeniawhite added a commit that referenced this pull request Apr 6, 2026
* Move verifier receiver from opentelemetry-collector-components to elastic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces #12728.

* CI fixes

* CI fixes

* Moving receiver to EDOT

* CI checks

* Verifier skill

* Rename datastream

* Enhance semver

* Verify policies and align auth

* CI fixes

* Move verifier receiver from opentelemetry-collector-components to elastic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces #12728.

* CI fixes

* Moving receiver to EDOT

* Rename datastream

* Enhance semver

* Verify policies and align auth

* CI fixes

* Addition test cases

* Remove skill

* fips compliance

* Curve gap and tests

* Rename CC

* Rebase

* GCP project id resolver

* Update go.mod

* Rebase fixes and documentation for AWS and Azure

* Delete beats

* Resolve submod

* fix: restore beats submodule pointer

* notice updates

* Use IRSA when available

* Remove NS and dataset

* Account string changes

* Audience rename

* Remove region

* Rewrite API calls and leave CSPM, Asset registry

* Update notice and format

* Move verifier receiver from opentelemetry-collector-components to elastic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces #12728.

* CI fixes

* CI fixes

* Moving receiver to EDOT

* CI checks

* Verifier skill

* Rename datastream

* Enhance semver

* Verify policies and align auth

* CI fixes

* Move verifier receiver from opentelemetry-collector-components to elastic-agent

Per review feedback on elastic/opentelemetry-collector-components#1046,
the verifier receiver is EDOT Collector-only and belongs in elastic-agent
(ELv2) rather than the shared Apache-licensed OTel components repo.

This moves the full verifier receiver implementation into
internal/pkg/otel/receivers/verifierreceiver/, updates import paths,
replaces Apache 2.0 license headers with ELv2, registers the receiver
in the EDOT component factory, and adds it to the all-components test
configs.

Replaces #12728.

* CI fixes

* Moving receiver to EDOT

* Rename datastream

* Enhance semver

* Verify policies and align auth

* CI fixes

* Addition test cases

* Remove skill

* fips compliance

* Curve gap and tests

* Rename CC

* Rebase

* GCP project id resolver

* Rebase fixes and documentation for AWS and Azure

* Delete beats

* Resolve submod

* fix: restore beats submodule pointer

* notice updates

* Use IRSA when available

* Remove NS and dataset

* Account string changes

* Audience rename

* Remove region

* Rewrite API calls and leave CSPM, Asset registry

* Update notice and format

* Create go.sum
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants