Skip to content

Support loading systrace files into DevTools #3800

Description

@kenzieschmoll

Performance measurements can be affected by both the overhead of tracing with the Dart VM as well as the overhead caused by connecting an application to DevTools. For those reasons, tracing to systrace is more performant. (Related issue regarding timeline recording format: dart-lang/sdk#47631). Systrace files cannot be loaded into DevTools currently, which means they must be loaded into other trace viewers like perfetto.

There are tools that convert systrace files into the Chrome trace event format that DevTools expects (@dnfield do you have links to any of these converters you mentioned?). We should find a way to use these tools to convert the trace (ideal), or at the very least, point users to how they can convert their traces for visualization in DevTools.

Bonus would be if we automated this on the command line so the workflow is as such:

  • user runs a command to run/test something and adds a flag to trace to systrace
  • at exit of run/test, the CLI tool converts the file to the Chrome trace event format that DevTools expects and provides a hotkey the user can press or a link they can visit to automatically load trace in DevTools.

CC @xster @dnfield @a-siva @jiahaog

Activity

  1. xster commented on Mar 8, 2022

    @xster
    Member

    One nit clarification, at the "at exit of run/test", if the Dart program still running was not a requirement, it would be very convenient.

  2. added this to the Backlog milestone on May 5, 2022
  3. added
    P2important to work on, but not at the top of the work list.
    on Jul 11, 2023
  4. srawlins commented on Aug 26, 2026

    @srawlins
    Contributor

    Closing as superseded by newer features: DevTools now embeds Perfetto for timeline trace visualization, which natively supports loading Systrace and Perfetto format trace files.

    If there is more work to do here, please let us know by filing a new issue with up to date information. Thanks!

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions