Default Integrations

All of Sentry’s SDKs provide integrations, which extend functionality of the SDK.

System integrations are enabled by default to integrate into the standard library or the interpreter itself. They are documented so you can be both aware of what they do and disable them if they cause issues.


This integration is the core part of the SDK. It hooks into all signal and exception handlers to capture uncaught errors or crashes. This integration is also responsible for adding most of the device information to events. If it is disabled, you will not receive crash reports, nor will events contain much device data.


This integration will swizzle some methods to create breadcrumbs. For example, for UIApplicationDidReceiveMemoryWarningNotification, sendAction:to:from:forEvent: (UI interactions) or viewDidAppear: those breadcrumbs will be attached to your events.


This integration registers for lifecycle notifications and automatically starts and ends sessions required for Release health.


This integration tracks watchdog terminations based on heuristics. This feature is available for iOS, tvOS, and Mac Catalyst and works only if the application was in the foreground. Check out the configuration information for more details.

Disable an Integration

This example removes the default-enabled integration for adding breadcrumbs to the event:

import Sentry

SentrySDK.start { options in
    options.integrations = Sentry.Options.defaultIntegrations().filter { name in
        name != "SentryAutoBreadcrumbTrackingIntegration"
Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) to suggesting an update ("yeah, this would be better").