w3c / w3c/user-timing

Add a standard track/category field to the spec

Open
#109 11 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Bikeshed
Stars
31
Forks
16
PR merge metrics
No merged PRs in 30d

Description

I touched on this need in this discussion many years ago: https://github.com/w3c/user-timing/issues/68#issuecomment-555266453 .

Frankly I've ran into this many times. You can see some screenshots in that discussion for how heavily user timings are used at Meta on web. More recently I'm looking at a tooling integration where this would be useful again. React-native already support user-timings but I'd like to forward it to the system's Perfetto on certain platforms and builds. Tracks are an important feature of Perfetto because it organizes the events in the Perfetto frontend.

Ideally I'd like to see the following happen here:

  • We spec and document an optional track/category field to mark and measure. We document the expectation that it helps categories events into tracks in the UI to organize them together. This would all be non-normative expectations of downstream tools of course.
  • Perhaps worth discussing if we want to introduce the concept of heavy/slow categories that can be enabled/disabled from tracing. This is concept that common to almost all tracing system (Perfetto, about:tracing, Firefox's Platform Profiler and many more tools). But we can defer this to another discussion.
  • Consumers of the performance APIs (Browsers, react-native, perf libraries) can then optionally follow the standard recommendation and better display the marks in their respective front-ends.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the linked discussion and the current mark and measure definitions in the User Timing specification. Determine how an optional track/category field should be specified and what downstream-tool expectations can be documented without making them normative. Done means the proposal is resolved and the relevant specification text is updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native
Domain
documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.