Skip to content

Add Linux user_events receiver#2787

Open
lalitb wants to merge 9 commits intoopen-telemetry:mainfrom
lalitb:split/user-events-receiver-only
Open

Add Linux user_events receiver#2787
lalitb wants to merge 9 commits intoopen-telemetry:mainfrom
lalitb:split/user-events-receiver-only

Conversation

@lalitb
Copy link
Copy Markdown
Member

@lalitb lalitb commented Apr 30, 2026

Change Summary

Split out from the original combined PR #2717.

Adds a contrib receiver for Linux user_events tracepoints.

The receiver supports two decode formats:

  • tracefs: generic Linux tracepoint decoding based on the static schema exposed in tracefs format files.
  • event_header: decodes self-describing EventHeader payloads. EventHeader comes from the Microsoft LinuxTracepoints-Rust project, but is open and usable by any producer.

The receiver uses one_collect for perf/user_events collection, and supports single or multiple subscriptions, batching, late registration, and basic receiver metrics. It is behind the userevents-receiver feature flag.

Also adds a Linux CI smoke test that registers and reads both tracefs and EventHeader user_events tracepoints when kernel support is available.

What issue does this PR close?

How are these changes tested?

Added Linux CI smoke test

Are there any user-facing changes?

Yes, a receiver.

@lalitb lalitb marked this pull request as ready for review April 30, 2026 06:40
@lalitb lalitb requested a review from a team as a code owner April 30, 2026 06:40
@github-actions github-actions Bot added rust Pull requests that update Rust code ci-repo Repository maintenance, build, GH workflows, repo cleanup, or other chores labels Apr 30, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 30, 2026

Codecov Report

❌ Patch coverage is 61.06195% with 704 lines in your changes missing coverage. Please review.
✅ Project coverage is 85.91%. Comparing base (524b78d) to head (7f26d8c).

❌ Your patch check has failed because the patch coverage (61.06%) is below the target coverage (70.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2787      +/-   ##
==========================================
- Coverage   86.09%   85.91%   -0.18%     
==========================================
  Files         694      699       +5     
  Lines      263421   265229    +1808     
==========================================
+ Hits       226789   227877    +1088     
- Misses      36108    36828     +720     
  Partials      524      524              
Components Coverage Δ
otap-dataflow 86.82% <61.06%> (-0.23%) ⬇️
query_abstraction 80.61% <ø> (ø)
query_engine 90.76% <ø> (ø)
otel-arrow-go 52.45% <ø> (ø)
quiver 92.25% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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

Labels

ci-repo Repository maintenance, build, GH workflows, repo cleanup, or other chores rust Pull requests that update Rust code

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Proposal: Add Linux user_events Receiver for Telemetry from Applications Co-Located with the Collector

1 participant