fix(web-vitals): Fix TTFB capture in Safari #3106
Merged
+19
−64
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Safari doesn't support
performance.timeOrigin
https://developer.mozilla.org/en-US/docs/Web/API/Performance/timeOriginThis regression was introduced in #3019
As a result, this caused TTFB captures to be
null
when normalized with respect totransaction.startTime
:When using the timeOrigin polyfill (i.e.

browserPerformanceTimeOrigin
), the numbers propagate properly. Unfortunately, this may cause normalized TTFB values to be negative.We simply take its absolute value:
In addition, I've updated the
getTTFB()
implementation to the latest web-vitals revision: https://github.com/GoogleChrome/web-vitals/blob/eef03ad99882b6cdb6e35eee4c2d9b220152ed0a/src/getTTFB.ts