You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(hangfire): Add an option to monitor all recurring jobs by @wedamija and @claude in #5742
Hangfire recurring jobs marked with [SentryMonitorSlug] now send their cron schedule and time zone with the check-in, so Sentry creates the monitor if it doesn't exist yet. This is on by default: on upgrade, existing monitors take their schedule and time zone from the recurring job on its next run (other monitor settings are kept). To keep managing schedules in Sentry, opt out with UseSentry(o => o.SendMonitorConfig = false). by @wedamija and @claude in #5665
Other
feat(aspnetcore): add UseSentry overloads on WebApplicationBuilder by @ric-oliv and @claude in #5720
Add Sentry.Quartz3, an integration for Quartz.NET 3.x (3.6 and later) on .NET Framework 4.6.2+ and .NET 8+ by @wedamija, @michaelmairegger and 3 others in #5668
Register it with services.AddQuartz(q => q.AddJobListener<SentryJobListener>()) or scheduler.ListenerManager.AddJobListener(new SentryJobListener())
Jobs marked with [SentryMonitorSlug] send a Sentry Crons check-in for every run, with the trigger's cron or interval schedule as the monitor config, so monitors are created and kept up to date automatically
Quartz.NET 3.x has no job middleware, so unlike Sentry.Quartz this doesn't run each job in its own scope or capture the exceptions jobs throw
services.AddQuartz(q => q.AddSentry()) runs each job in its own scope and trace, tagged with its job key, and captures the exceptions jobs throw
Jobs marked with [SentryMonitorSlug] send a Sentry Crons check-in for every run, with the trigger's cron or interval schedule as the monitor config, so monitors are created and kept up to date automatically
SentryQuartzOptions.ConfigureMonitorOptions customizes thresholds or the schedule, and SendMonitorConfig = false sends check-ins without a schedule
feat: add SentrySdk.WithMonitor to run a job with cron check-ins and create the monitor from code by @wedamija, @claude and 2 others in #5664
Fixes 🐛
Maui
fix(maui): CreateElementEventsBreadcrumbs set in code is no longer overwritten by @jamescrosswell and @claude in #5861
fix(maui): report in_foreground for apps using the UIScene lifecycle by @jamescrosswell and @claude in #5730
Other
fix(android): drop native events when BeforeSend conversion fails by @osamashtayat and @codex in #5868
fix(aspnetcore): start the SDK when the host starts, not on the first request by @ric-oliv and @claude in #5721
fix(ios): an exception in a native scope callback no longer recurses until the stack overflows by @jamescrosswell and @claude in #5877
fix(logging): Logging:Sentry:LogLevel category entries no longer filter breadcrumbs and events by @jamescrosswell and @claude in #5872
fix: automatically collected HTTP headers with sensitive names, such as Set-Cookie, X-Api-Key and X-Auth-Token, now have their values replaced with [Filtered], regardless of SendDefaultPii by @jamescrosswell and @claude in #5890
Sessions on iOS, Mac Catalyst and Android now pause when the app moves to the background. A background longer than AutoSessionTrackingInterval ends the session, and an app killed in the background reports exited instead of abnormal. by @bitsandfoxes, @claude and @jamescrosswell in #5863
On those platforms, background launches no longer start a session, the same as in sentry-java and sentry-cocoa. On iOS and Mac Catalyst, sessions now start when the app first becomes active, so a crash before that no longer counts as a crashed session. by @bitsandfoxes, @claude and @jamescrosswell in #5863
fix: a timed-out flush no longer lets cached envelopes be sent concurrently by @jamescrosswell and @claude in #5878
fix: iOS NativeAOT apps using TrimMode=partial crash at launch in SentryObjCOptions.set_BeforeSend by @jamescrosswell and @claude in #5857
fix: transactions left unsampled by an upstream trace decision are no longer reported as backpressure drops in client reports by @chiliec in #5841
fix: drop attachments whose stream turns out empty when the envelope is sent by @bitsandfoxes and @claude in #5787
fix: upload symbols and create releases when publishing Native AOT with the .NET 11 SDK by @jamescrosswell and @claude in #5731
fix: don't upload pre-trim PDBs for trimmed iOS and Mac Catalyst builds by @jamescrosswell and @claude in #5732
fix: avoid first-chance exception when getting length of non-seekable attachment streams by @bitsandfoxes and @ric-oliv in #5736
Dependencies ⬆️
Deps
chore(deps): update Java SDK to v8.63.0 by @ric-oliv with @github-actions and @sentry-junior in #5886
chore(deps): update Cocoa SDK to v9.33.0 by @ric-oliv and @claude with @github-actions in #5880
chore(deps): update Native SDK to v0.17.6 by @github-actions in #5879