| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
Drop breadcrumbs when beforeBreadcrumb throws instead of storing the breadcrumb with exception details. Keep observer state unchanged and release the callback reentrancy guard for later additions. Refs #6081 Co-Authored-By: Claude <noreply@anthropic.com>
Instructions and example for changelogPlease add an entry to CHANGELOG.md to the "Unreleased" section. Make sure the entry includes this PR's number. Example: ## Unreleased
### Fixes
- [Callback Errors 4] Drop failed breadcrumbs ([#6143](https://github.com/getsentry/sentry-java/pull/6143))If none of the above apply, you can opt out of this check by adding #skip-changelog to the PR description or adding a skip-changelog label. |
Sorry, something went wrong.
📲 Install BuildsAndroid
|
Sorry, something went wrong.
| SentryLevel.ERROR, | ||
| "The BeforeBreadcrumbCallback callback threw an exception. Exception details will be added to the breadcrumb.", | ||
| "The BeforeBreadcrumb callback threw an exception. Dropping breadcrumb.", | ||
| e); |
There was a problem hiding this comment.
There was an internal discussion around reporting dropped breadcrumbs in client reports via log_item category. This creates confusion since you can't tell whether a log item or breadcrumb was dropped. Instead we've decided not to report dropped breadcrumbs.
Sorry, something went wrong.
Carry the inserted SDK processor marker forward through the adjacent stack branch without rewriting existing history or changing breadcrumb behavior. Co-Authored-By: Claude <noreply@anthropic.com>
| Back | FazBrowse Home | New Git URL |
PR Stack (Callback Errors)
📜 Description
Drops a breadcrumb when beforeBreadcrumb throws. The failed breadcrumb is not stored, decorated with exception details, or sent to scope observers.
Later breadcrumb additions continue to work because the callback reentrancy guard is released after the exception.
💡 Motivation and Context
Keeping the original breadcrumb after a filtering callback fails can retain data the callback intended to remove. Dropping it matches the fail-closed callback policy and avoids storing callback exception details on telemetry.
💚 How did you test it?
📝 Checklist
🔮 Next steps
None.