Skip to content

Refactor Pyroscope eBPF to properly handle container IDs and executable reporters#4827

Merged
dehaansa merged 1 commit into
otel-139from
20251112_otel-139-pyroscope-epbf
Nov 12, 2025
Merged

Refactor Pyroscope eBPF to properly handle container IDs and executable reporters#4827
dehaansa merged 1 commit into
otel-139from
20251112_otel-139-pyroscope-epbf

Conversation

@simonswine
Copy link
Copy Markdown
Contributor

This change addresses the container ID handling and symbol resolution in the Pyroscope eBPF profiler by:

  • Replacing FileObserver with ExecutableReporter in the configuration to better reflect its purpose and enable proper cleanup with type assertions
  • Moving container ID to the proper layer in the event reporting flow by passing it as a parameter to createProfile instead of storing it in ExtraMeta
  • Simplifying the type system in tests by using upstream types (libpf.FileID and irsymcache.SourceInfo) instead of wrapper types

These changes improve type safety and align the code with the OpenTelemetry eBPF profiler v0.139.0 API.

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

…le reporters

This change addresses the container ID handling and symbol resolution in the Pyroscope eBPF profiler by:

- Replacing FileObserver with ExecutableReporter in the configuration to better reflect its purpose and enable proper cleanup with type assertions
- Moving container ID to the proper layer in the event reporting flow by passing it as a parameter to createProfile instead of storing it in ExtraMeta
- Simplifying the type system in tests by using upstream types (libpf.FileID and irsymcache.SourceInfo) instead of wrapper types

These changes improve type safety and align the code with the OpenTelemetry eBPF profiler v0.139.0 API.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@simonswine simonswine requested a review from a team as a code owner November 12, 2025 16:47
Copy link
Copy Markdown
Contributor

@dehaansa dehaansa left a comment

Choose a reason for hiding this comment

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

TY!

@dehaansa dehaansa merged commit 728a17a into otel-139 Nov 12, 2025
27 of 37 checks passed
@dehaansa dehaansa deleted the 20251112_otel-139-pyroscope-epbf branch November 12, 2025 16:50
dehaansa added a commit that referenced this pull request Nov 14, 2025
* Squashed OTel v0.139.0

* converters

* update ebpfs

* appease copilot

* pyroscope ebpf compatibility

* Update ebpf fork with otel v0.139.0

* Refactor Pyroscope eBPF to properly handle container IDs and executable reporters (#4827)

This change addresses the container ID handling and symbol resolution in the Pyroscope eBPF profiler by:

- Replacing FileObserver with ExecutableReporter in the configuration to better reflect its purpose and enable proper cleanup with type assertions
- Moving container ID to the proper layer in the event reporting flow by passing it as a parameter to createProfile instead of storing it in ExtraMeta
- Simplifying the type system in tests by using upstream types (libpf.FileID and irsymcache.SourceInfo) instead of wrapper types

These changes improve type safety and align the code with the OpenTelemetry eBPF profiler v0.139.0 API.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>

* Update go.mod

* Fix jaegerremotesampling test

* fix a few other tests

* Appease linter

* linting and tests

* downgrade loadbalancing exporter

* Changelog entry

* Update OTEL_VERSION

---------

Co-authored-by: Christian Simon <simon@swine.de>
Co-authored-by: Claude <noreply@anthropic.com>
dehaansa added a commit to madhub/alloy that referenced this pull request Dec 10, 2025
* Squashed OTel v0.139.0

* converters

* update ebpfs

* appease copilot

* pyroscope ebpf compatibility

* Update ebpf fork with otel v0.139.0

* Refactor Pyroscope eBPF to properly handle container IDs and executable reporters (grafana#4827)

This change addresses the container ID handling and symbol resolution in the Pyroscope eBPF profiler by:

- Replacing FileObserver with ExecutableReporter in the configuration to better reflect its purpose and enable proper cleanup with type assertions
- Moving container ID to the proper layer in the event reporting flow by passing it as a parameter to createProfile instead of storing it in ExtraMeta
- Simplifying the type system in tests by using upstream types (libpf.FileID and irsymcache.SourceInfo) instead of wrapper types

These changes improve type safety and align the code with the OpenTelemetry eBPF profiler v0.139.0 API.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>

* Update go.mod

* Fix jaegerremotesampling test

* fix a few other tests

* Appease linter

* linting and tests

* downgrade loadbalancing exporter

* Changelog entry

* Update OTEL_VERSION

---------

Co-authored-by: Christian Simon <simon@swine.de>
Co-authored-by: Claude <noreply@anthropic.com>
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Dec 19, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants