-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Closed
Labels
Package: replayIssues related to the Sentry Replay SDKIssues related to the Sentry Replay SDK
Description
After some discussion, we landed on implementing the following logic/behavior for slow/rage click detection in Replay:
- Clicks generate
ui.clickbreadcrumbs immediately- these are debounced by 1s, so any further click on the same element within 1s does not generate a further
ui.clickbreadcrumb!
- these are debounced by 1s, so any further click on the same element within 1s does not generate a further
- Whenever a
ui.clickbreadcrumb is captured, we start looking for 7s for a) further clicks on the same element and b) if the click is a slow click - After 7s...
- if no mutation happened in the meanwhile, we create a
ui.slowClickDetectedbreadcrumb with aclickCountcounting all clicks on the same element in the last 7s - if a mutation happened and more than 1 click in total happened in the last 7s on the element, we create a
ui.multiClickbreadcrumb with theclickCount - If only this one click happened, we create no more breadcrumbs
- if no mutation happened in the meanwhile, we create a
This means that:
- We always get slow/multi click breadcrumbs after 7s, never before. This means we may loose some, but this is worth it to us so we have better data.
- We count all clicks that happened in the 7s period. The idea is, that if a slow click happens, then after 3s the user starts rage clicking on the same button - we can detect this by seeing that this slow click had a lot of clicks in this 7s.
- There may still be false positives, think a
continuebutton that is clicked a few times in 7s because the user is moving forward fast - but this we can figure out eventually.
One thing to note is that the ui.slowClick / ui.multiClick breadcrumbs will be created with the same timestamp & message as the original ui.click breadcrumb.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Package: replayIssues related to the Sentry Replay SDKIssues related to the Sentry Replay SDK
Fields
Give feedbackNo fields configured for issues without a type.
