Skip to content

profiling_otel: add new integration#18271

Open
florianl wants to merge 4 commits intomainfrom
profiling_otel
Open

profiling_otel: add new integration#18271
florianl wants to merge 4 commits intomainfrom
profiling_otel

Conversation

@florianl
Copy link
Copy Markdown
Member

@florianl florianl commented Apr 8, 2026

Proposed commit message

Add new OTel profiling input integration.

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.
  • I have verified that any added dashboard complies with Kibana's Dashboard good practices

Signed-off-by: Florian Lehner <florian.lehner@elastic.co>
@florianl florianl added the enhancement New feature or request label Apr 8, 2026
@florianl florianl requested a review from a team as a code owner April 8, 2026 08:47
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 8, 2026

✅ Vale Linting Results

No issues found on modified lines!


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.

Signed-off-by: Florian Lehner <florian.lehner@elastic.co>
@andrewkroh andrewkroh added New Integration Issue or pull request for creating a new integration package. documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. labels Apr 8, 2026
@florianl
Copy link
Copy Markdown
Member Author

Friendly ping for review @elastic/integrations-triaging

Copy link
Copy Markdown
Member

@jsoriano jsoriano left a comment

Choose a reason for hiding this comment

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

LGTM as initial version.

Would it be possible to add tests?

Policy tests should be easy to add and they would be specially relevant now that we are stabilizing latest changes in Fleet for OTel integrations, and I think this one would be the first one for profiles.

@florianl
Copy link
Copy Markdown
Member Author

I have skipped tests, as they fail with an error that seems unrelevant to the package:

ERROR: there was an apply error: could not add package policy "test-with-samples-per-second-profiling_otel-24460" to agent policy "test-with-samples-per-second-24460": could not create package policy (req {"name":"test-with-samples-per-second-profiling_otel-24460","description":"","namespace":"ep","policy_id":"6338e69c-3ccf-4b94-9fa5-d1cd5b29a5ba","package":{"name":"profiling_otel","version":"0.0.1"},"inputs":{"profilingreceiver-otelcol":{"enabled":true,"streams":{"profiling_otel.profilingreceiver":{"enabled":true,"vars":{"data_stream.dataset":"profilingreceiver","samples_per_second":73}}}}},"force":false}); API status code = 400; response body = {"statusCode":400,"error":"Bad Request","message":"unexpected data stream type profiles"}

This package does not set or define datastreams.

Signed-off-by: Florian Lehner <florian.lehner@elastic.co>
exporters:
elasticsearch/componentid-0:
auth:
authenticator: beatsauth/default
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Low policy/test-with-samples-per-second.expected:6

The elasticsearch/componentid-0 exporter references beatsauth/default (line 6), but no extension by that name exists. The actual extension defined is beatsauth/componentid-0 (line 10), and that's what's registered in service.extensions (line 42). This mismatch causes the OpenTelemetry Collector configuration validation to fail at startup with an unknown extension reference error.

Suggested change
authenticator: beatsauth/default
authenticator: beatsauth/componentid-0
🚀 Reply "fix it for me" or copy this AI Prompt for your agent:
In file packages/profiling_otel/_dev/test/policy/test-with-samples-per-second.expected around line 6:

The `elasticsearch/componentid-0` exporter references `beatsauth/default` (line 6), but no extension by that name exists. The actual extension defined is `beatsauth/componentid-0` (line 10), and that's what's registered in `service.extensions` (line 42). This mismatch causes the OpenTelemetry Collector configuration validation to fail at startup with an unknown extension reference error.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

@elastic/integrations-triaging is this expected?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is expected, but for the fingerprint diff found in CI you will have to wait for a release of elastic-package with elastic/elastic-package#3467 (coming soon).

To unblock this skip the policy test by now, and we will remove the skip after releasing the next elastic-package version.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

not sure if c5d8f8a is the correct way to skip this test. looking at other packages this seems to be the only way - didn't find documentation.

Signed-off-by: Florian Lehner <florian.lehner@elastic.co>
@elasticmachine
Copy link
Copy Markdown

💚 Build Succeeded

History

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

Labels

documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. enhancement New feature or request New Integration Issue or pull request for creating a new integration package.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants