getsentry / getsentry/sentry-javascript

Improve Redirect detection

未关闭
#17,282 1 条评论 0 个 reaction 已指派 1 人 已被 @Lms24 认领 在 GitHub 查看
Browser Improvement State: Needs Discussion
主要语言
TypeScript
星标
8.7k
派生
1.8k
平均合并
1 天 17 小时
30 天内合并 PR
515

描述

### Description

Our current redirection detection approach works in some cases but it fails in others, for example in the Sentry frontend (oh the irony 😅)

Some ideas to improve the detector:

* apply it generally to anyone calling `startBrowserTracingNavigationSpan`. Right now, we only apply redirect detection to the default browserTracingIntegration and any derivateives that rely on the default behaviour. Since in Sentry we use the React Router browserTracingIntegration, the logic is not applied.
* Increase time thresholds in general. 300ms is very short, especially for the first pageload
* Reset `lastInteractionTimestamp` when starting a new navigation *root* span. Previous interactions should not matter for subsequent navigations/redirects.
* Add separate time thresholds for
* pageload -> 1st navigation: A pageload likely takes some time for the router to initialize and potentially redirect. 300ms is *very* short here.
* navigation -> navigation: Here the time window likely doesn't need to be too long. 300ms is likely enough.
* For now, we can increase the threshold in general and re-evaluate if we get false positives for the navigation -> navigation case.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。