Error opening trace log.

18 views
Skip to first unread message

Jon Lui

unread,
Mar 22, 2025, 10:33:03 AMMar 22
to Perfetto Development - www.perfetto.dev
I am trying to open my trace file and i am constantly getting this eror. I built a C wrapper around perfetto for me to use in my C application.
perfetto_code.png
UI: https://ui.perfetto.dev/v49.0-b2340d0ca RuntimeError: abort(undefined) at Error @ perfetto::trace_processor::SystemInfoTracker::SetKernelVersion(perfetto::base::StringView, perfetto::base::StringView) - jsStackTrace (engine_bundle.js:1917:16) - stackTrace (engine_bundle.js:1932:13) - abort (engine_bundle.js:1776:45) - _abort (engine_bundle.js:5293:4) - std::__2::__throw_bad_function_call() (wasm://wasm/027944ce:wasm-function[534]:0x385f5) - perfetto::trace_processor::SystemInfoTracker::SetKernelVersion(perfetto::base::StringView, perfetto::base::StringView) (wasm://wasm/027944ce:wasm-function[1971]:0x181e83) - perfetto::trace_processor::SystemProbesParser::ParseSystemInfo(protozero::ConstBytes) (wasm://wasm/027944ce:wasm-function[4727]:0x31430f) - perfetto::trace_processor::SystemProbesModule::TokenizePacket(perfetto::protos::pbzero::TracePacket_Decoder const&, perfetto::trace_processor::TraceBlobView*, long long, perfetto::trace_processor::RefPtr<perfetto::trace_processor::PacketSequenceStateGeneration>, unsigned int) (wasm://wasm/027944ce:wasm-function[4712]:0x30d1f1) - perfetto::trace_processor::ProtoTraceReader::ParsePacket(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[3030]:0x219aab) - perfetto::trace_processor::ProtoTraceReader::Parse(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[3029]:0x2182e7) - jsStackTrace (engine_bundle.js:1917:16) - stackTrace (engine_bundle.js:1932:13) - abort (engine_bundle.js:1776:45) - _abort (engine_bundle.js:5293:4) - std::__2::__throw_bad_function_call() (wasm://wasm/027944ce:wasm-function[534]:0x385f5) - perfetto::trace_processor::SystemInfoTracker::SetKernelVersion(perfetto::base::StringView, perfetto::base::StringView) (wasm://wasm/027944ce:wasm-function[1971]:0x181e83) - perfetto::trace_processor::SystemProbesParser::ParseSystemInfo(protozero::ConstBytes) (wasm://wasm/027944ce:wasm-function[4727]:0x31430f) - perfetto::trace_processor::SystemProbesModule::TokenizePacket(perfetto::protos::pbzero::TracePacket_Decoder const&, perfetto::trace_processor::TraceBlobView*, long long, perfetto::trace_processor::RefPtr<perfetto::trace_processor::PacketSequenceStateGeneration>, unsigned int) (wasm://wasm/027944ce:wasm-function[4712]:0x30d1f1) - perfetto::trace_processor::ProtoTraceReader::ParsePacket(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[3030]:0x219aab) - perfetto::trace_processor::ProtoTraceReader::Parse(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[3029]:0x2182e7) - abort (engine_bundle.js:1778:12) - _abort (engine_bundle.js:5293:4) - std::__2::__throw_bad_function_call() (wasm://wasm/027944ce:wasm-function[534]:0x385f5) - perfetto::trace_processor::SystemInfoTracker::SetKernelVersion(perfetto::base::StringView, perfetto::base::StringView) (wasm://wasm/027944ce:wasm-function[1971]:0x181e83) - perfetto::trace_processor::SystemProbesParser::ParseSystemInfo(protozero::ConstBytes) (wasm://wasm/027944ce:wasm-function[4727]:0x31430f) - perfetto::trace_processor::SystemProbesModule::TokenizePacket(perfetto::protos::pbzero::TracePacket_Decoder const&, perfetto::trace_processor::TraceBlobView*, long long, perfetto::trace_processor::RefPtr<perfetto::trace_processor::PacketSequenceStateGeneration>, unsigned int) (wasm://wasm/027944ce:wasm-function[4712]:0x30d1f1) - perfetto::trace_processor::ProtoTraceReader::ParsePacket(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[3030]:0x219aab) - perfetto::trace_processor::ProtoTraceReader::Parse(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[3029]:0x2182e7) - perfetto::trace_processor::ForwardingTraceParser::Parse(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[1537]:0x156472) - perfetto::trace_processor::TraceProcessorStorageImpl::Parse(perfetto::trace_processor::TraceBlobView) (wasm://wasm/027944ce:wasm-function[1641]:0x15fc7c) - (stderr: ) Trace: not available (No trace loaded). Provide repro steps. UA: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36 Referrer:
testTrace_small.trace

Lalit Maganti

unread,
Mar 22, 2025, 10:41:27 AMMar 22
to Jon Lui, Perfetto Development - www.perfetto.dev
This was fixed recently in https://cs.android.com/android/_/android/platform/external/perfetto/+/5c17fc6e089cecec6bd75073875f57c99dcd2f02

Should be released in the next version of the UI. You can switch to canary/autopush UI which should already have the fix 

--
You received this message because you are subscribed to the Google Groups "Perfetto Development - www.perfetto.dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to perfetto-dev...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/perfetto-dev/f4958f44-273f-468a-93dd-b7056f3983c4n%40googlegroups.com.

Jon Lui

unread,
Mar 22, 2025, 10:46:42 AMMar 22
to Perfetto Development - www.perfetto.dev
Thanks! I just tried and it works. Do you know why there's an empty space on the left most?perfetto_trace_empty_space.png

Lalit Maganti

unread,
Mar 22, 2025, 10:50:05 AMMar 22
to Jon Lui, Perfetto Development - www.perfetto.dev
Usually there is some data source emitting information before scheduling was enabled

It can happen if you have multiple buffers and the data rate of the other data source is lower than ftrace (which is what provides scheduling info). 

Jon Lui

unread,
Mar 22, 2025, 10:53:26 AMMar 22
to Perfetto Development - www.perfetto.dev
Sorry, false alarm. The web UI opened a cached trace. I am using canary and i can still see the issue.

Jon Lui

unread,
Mar 22, 2025, 10:57:26 AMMar 22
to Perfetto Development - www.perfetto.dev
Works on Autopush UI.

Lalit Maganti

unread,
Mar 22, 2025, 10:58:14 AMMar 22
to Jon Lui, Perfetto Development - www.perfetto.dev
Try autopush. Canary may also not have the fix. Go to "flags" and change release to autopush. 

Jon Lui

unread,
Mar 22, 2025, 11:16:55 AMMar 22
to Perfetto Development - www.perfetto.dev
I don't see my trace events. this is what i defined. Did I do something wrong?

PERFETTO_DEFINE_CATEGORIES(
    perfetto::Category("media_drv")
        .SetDescription("Events related to VA buffer creation"),
    perfetto::Category("gst")
        .SetDescription("Events related to GstVaEncoder encoding"));

data_sources {
  config {
    name: "track_event"
    track_event_config {
      enabled_categories: "media_drv"
      enabled_categories: "gst"
      disabled_categories: "*"
    }
  }
}

Lalit Maganti

unread,
Mar 22, 2025, 11:20:17 AMMar 22
to Jon Lui, Perfetto Development - www.perfetto.dev
I'm not sure but also fwiw if you are using the SDK inside a C application, any reason why you are not using the C SDK? 



I'd suggest seeing if the example works first to confirm if the problem is on the collection side or recording side. 

Message has been deleted

Jon Lui

unread,
Mar 25, 2025, 11:12:53 AMMar 25
to Perfetto Development - www.perfetto.dev
I wasn't aware of a C SDK. I was reading the document and it only showed C++. Thanks for the links.
Reply all
Reply to author
Forward
0 new messages