Contact emails
n...@chromium.org, ma...@chromium.org, tdre...@chromium.org
Spec
https://github.com/WICG/event-timing
Summary
Monitoring event latency today requires an event listener. This precludes measuring event latency early in page load, and adds unnecessary performance overhead. The Event Timing API gives developers insight into the latency of a subset of events triggered by user interaction. In order to capture user pain caused by slow initial interactions, the event timing API includes First Input Timing.
Link to “Intent to Implement” blink-dev discussion
Goals for experimentation
We are looking to gain insight on the usefulness of the Event Timing API and in particular of First Input Timing. We expect feedback from developers regarding the correctness of the API, and we plan to compare First Input Timing with Time to Interactive.
Experimental timeline
Ideally, the experiment will begin on M68 Beta and end after M69.
Any risks when the experiment finishes?
The risks due to the end of experiment are low because this API should only be used to measure performance.
Ongoing technical constraints
None
Debuggability
When enabled, this is exposed via javascript:
const performanceObserver = new PerformanceObserver …
performanceObserver.observe({entryTypes:['event']});
Will this feature be supported on all five Blink platforms supported by Origin Trials (Windows, Mac, Linux, Chrome OS, and Android)?
Yes.
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/5167290693713920
--
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/24d3456d-7bef-4df7-ad83-7fe3b3d3d9f4%40chromium.org.
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/CAFUtAY8FM92aYcJBj9Z0J3sDbcn9wgG2qGusFAnZojJxDv6YPQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
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/1845d541-45b5-4b06-8716-0d7d7644dc82%40chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/26d6f794-936a-4b00-9515-239eebb2e8de%40chromium.org.
Thank you for your reply. We hope that our products can respond to any input within 100ms. For this reason, we implement an experience monitoring system based on the EventTiming API:
In practice we found EventTiming can accurately reflect the user's sensory experience. We have reduced the error rate of ">100ms" from 20% to 9%.
We are not shipping full Event Timing yet because we thought it would not be very useful without eventCounts and possibly additional attribution about what caused the event.
In response to this, I think Firstly we need to know:
How much probability our products will make users feel delay
What the users is doing when they are caused the event
And even further is the kernel directly tell the developer where the problem is.
Currently this API can at least tell developers whether the product has performance issues, This is already very valuable.
For the second point, the biggest problem of this API is that it can't tell the developer which node the user has operated when the delay occurs. For this problem, our solution is to record every operation of the user. When the delay occurs, we will report the last operated dom's XPath. So that through the XPath and the event name returned by the API, we can find the corresponding code, and then analyze and optimize through the Chrome's timeline:
I hope that the kernel developers can continue to optimize this API. In addition to the first input delay, user feeling response delay when use the product may has a greater impact on the final conversion. For now, can i ask you to extend the time of the Origin Trail? There is no better alternative API.
Thanks for your great job.