Intent to Implement: User Timing L3

77 views
Skip to first unread message

Liquan (Max) Gu

unread,
Apr 13, 2018, 10:54:30 AM4/13/18
to blink-dev

Contact emails

tdre...@chromium.org, ma...@chromium.org


Design doc/Spec

User Timing L3 Explainer


Summary

User Timing L3 extends the existing User Timing API to enable two new use cases:

  • Users can pass in custom timestamps to performance.measure and performance.mark, so as to conduct measurement across arbitrary timestamps.

  • Users can report arbitrary metadata with performance.mark and performance.measure, which provides rich data to analytics via a standardized API.


Motivation

PerformanceObserver provides a consistent way for the browser to expose performance information to web developers and analytics packages in the wild. However, there are times when web developers have performance insights they’d like to process alongside the information the browser provides. Web developers should be able to communicate their own information to performance observers, with rich annotation, enabling their centralized performance monitoring logic and third party analytics tooling to integrate data from the browser with insights from the web page.


Risks

Interoperability and Compatibility

Edge: Public support.

Firefox: No public signals.

Safari: No public signals.

Web developers: No public signals.


Ergonomics

User Timing L3 improves the ergonomics of event timing. There are currently cases where developers serialize a bunch of mark or measure metadata into the entry name, which is hard to use. This makes it much simpler to associate data with marks and measures.


Activation

User Timing L3 extends the existing performance.mark and performance.measure API to allow users to pass in custom timestamps and custom detail objects for both APIs.


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes


Is this feature fully tested by web-platform-tests?

There are existing user-timing wpt tests for the original use cases. We will update the tests to include the new test cases.



Link to entry on the feature dashboard

https://www.chromestatus.com/feature/5149401886490624


Tracking bug

crbug/758385

Requesting approval to ship?

Not yet


ma...@chromium.org

unread,
Apr 13, 2018, 10:58:34 AM4/13/18
to blink-dev, Timothy Dresser, Nicolás Peña
+tdresser, npm

Ilya Grigorik

unread,
Apr 13, 2018, 12:01:00 PM4/13/18
to Liquan Gu, blink-dev, Timothy Dresser, n...@chromium.org
Wohoo! Super excited to see this underway.. Support for custom timestamps and metadata has been a long outstanding and much requested feature against UT. Yay!

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/4f1a1078-5ca7-4a03-81dd-5473356c045f%40chromium.org.

Yoav Weiss

unread,
Apr 25, 2018, 4:30:26 AM4/25/18
to Ilya Grigorik, Liquan Gu, blink-dev, Timothy Dresser, n...@chromium.org
+1. Excited to see this being worked on! :) Addressing these use-cases will enable better custom instrumentation, and hence enable better performing web apps.

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADXXVKqV7qb0vF8WNW-%2BtW9qPBj%3DyGX%3DbqshEwK4mO49t%2BrTXA%40mail.gmail.com.

Liquan (Max) Gǔ

unread,
Apr 27, 2018, 3:57:14 PM4/27/18
to blink-dev, igri...@google.com, ma...@chromium.org, tdre...@chromium.org, n...@chromium.org
Glad to see how much it is needed. Hope it would be finished soon:)

Could any API owner take a look at the API of this CL (https://chromium-review.googlesource.com/c/chromium/src/+/871507)?
The current API looks a bit weird but probably no better way to rewrite it.
Reply all
Reply to author
Forward
0 new messages