Repository navigation
OpenTelemetry Bridge #5774
isbm
started this conversation in
User Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hey!
So if you've ever wanted to take a Perfetto trace and send it to an OpenTelemetry
collector (Datadog, Grafana, Honeycomb, etc.), then I just built a... thing that
does exactly that (because I need it 😉).
General Idea
.pftracefiletrace_processor, maps every Perfetto table (sched slices,thread states, ftrace events, wakeups, counters, etc.) into OTel log/trace
records with structured attributes
.logjetcontainer (OTLP-native,replayable, checksummed, "indestructible" transfer wire serialisation protocol for OTel)
Two Modes
trace_processor export sqliteto read via sqlitetrace_processor server stdioto protobuf over pipeYes, Demos
Quick demo on Linux (needs sudo for ftrace):
It will build Perfetto on sibling directory. Then it will records 5 seconds
of CPU scheduler events, imports them as OTel records, and opens an interactive
not fancy TUI viewer, but you can see that ~30 seconds end-to-end. It will look
something like this:
Get It
plugins/perfetto-ingest/(cdylib, loaded by the logjet daemon at runtime)Not an official Perfetto project, just something I needed so I built it.
If you try it and it breaks, I'd love to hear about it (I also accept PRs BTW 😛).
More on Logjet: https://github.com/tinythings/logjet
Hope it helps!
All reactions