diff --git a/sentry-core/src/scope/real.rs b/sentry-core/src/scope/real.rs index d322cfc11..4833b61f9 100644 --- a/sentry-core/src/scope/real.rs +++ b/sentry-core/src/scope/real.rs @@ -155,6 +155,11 @@ impl Scope { *self = Default::default(); } + /// Deletes current breadcrumbs from the scope. + pub fn clear_breadcrumbs(&mut self) { + self.breadcrumbs.clear(); + } + /// Sets a level override. pub fn set_level(&mut self, level: Option) { self.level = level; diff --git a/sentry/tests/test_basic.rs b/sentry/tests/test_basic.rs index 4b9b7b477..93297b6a4 100644 --- a/sentry/tests/test_basic.rs +++ b/sentry/tests/test_basic.rs @@ -30,6 +30,12 @@ fn test_basic_capture_message() { #[test] fn test_breadcrumbs() { let events = sentry::test::with_captured_events(|| { + sentry::add_breadcrumb(|| sentry::Breadcrumb { + ty: "log".into(), + message: Some("Old breadcrumb to be removed".into()), + ..Default::default() + }); + sentry::configure_scope(|scope| scope.clear_breadcrumbs()); sentry::add_breadcrumb(|| sentry::Breadcrumb { ty: "log".into(), message: Some("First breadcrumb".into()),