getsentry / getsentry/sentry-java
Configuration option to stop/disable post-crash replay recording on Android
- Dominant language
- Kotlin
- Stars
- 1.4k
- Forks
- 478
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 67
Description
### Problem Statement
Currently, when an error/crash occurs, the SDK samples the event and continues recording post-crash replay until the session naturally ends. This replay is absolutely useless for us. I need a purely configuration-based way to completely prevent or instantly cut off replay recording right after a crash event occurs.
### Solution Brainstorm
I would like a new configuration option in SentryReplayOptions (or a built-in behavior within beforeErrorSampling) that automatically stops the replay recorder immediately after a crash event is captured.
For example, a flag like `stopRecordingOnCrash`:
```kotlin
SentryAndroid.init(context) { options ->
options.sessionReplay.onErrorSampleRate = 1.0
// Proposed flag to cut off recording instantly after a crash/unhandled exception
options.sessionReplay.isStopRecordingOnCrash = true
options.sessionReplay.beforeErrorSampling =
SentryReplayOptions.BeforeErrorSamplingCallback { event, hint ->
event.isCrashed // Only capture replays for crashes
}
}
```
Contributor guide
Research direction
Start with SentryReplayOptions and the beforeErrorSampling callback, then trace how Android crash events interact with session replay recording. Define the configuration behavior so replay stops immediately after a captured crash, and verify that normal replay and error sampling remain unaffected.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile, observability
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100