Repository navigation
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Semver Impact of This PR🟡 Minor (new features) 📋 Changelog PreviewThis is how your changes will appear in the changelog. New Features ✨Attributes
Bug Fixes 🐛
Internal Changes 🔧
🤖 This preview updates automatically when you update the PR. |
4afdde6 to
4158ed5
Compare
adityareddy-dev
left a comment
There was a problem hiding this comment.
The three phase suffixes match the experimental attributes in OTel browser #486, though the prefixes differ: browser.web_vital.inp.{input_delay,processing_duration,presentation_delay} here maps to browser.web_vital.attribution.{input_delay,processing_duration,presentation_delay} there. Those names are still proposals, with agreement tracked on #471.
There is also an absence distinction worth carrying into that discussion. These definitions omit all three phases when there is no interaction to attribute, while the OTel draft preserves the web-vitals dummy INP timings, including zero input/processing and a presentation delay equal to the value. Could we link the naming discussion and document that difference alongside the mapping? Consumers translating between the two would otherwise need to infer whether missing phases and reported zeros mean the same thing.
|
Thanks! Since those names are still experimental and not in semconv, I'd rather not document a mapping yet. Happy to align in a way or another once #471 settles. Omitting is intentional. web-vitals reports a placeholder INP for soft navs with no recorded interaction, so 0/0/value would pull input delay and processing toward 0, make presentation look like the bottleneck, and make the subpart trends follow how many soft navs happen rather than actual perf. |
LCP and INP only report a total, so there is no way to see which phase made them slow, this can be fixed by introducing web vital subparts.
We already report some of these partially like TTFB, so this PR standardises the other remaining attributes.
New Attributes
browser.web_vital.lcp.resource_load_delayrequestStartminus TTFBbrowser.web_vital.lcp.resource_load_durationresponseEndminusrequestStartbrowser.web_vital.lcp.element_render_delayresponseEndbrowser.web_vital.inp.input_delayprocessingStartminusstartTimebrowser.web_vital.inp.processing_durationprocessingEndminusprocessingStartbrowser.web_vital.inp.presentation_delaystartTime+durationminusprocessingEndResources