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.
SentryCrashIntegration
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.
SentryAutoBreadcrumbTrackingIntegration
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.
SentryAutoSessionTrackingIntegration
This integration registers for lifecycle notifications and automatically starts and ends sessions required for Release Health.
SentryOutOfMemoryTrackingIntegration
This integration tracks out-of-memory crashes 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"
}
}
- Package:
- cocoapods:sentry-cocoa
- Version:
- 8.32.0
- Repository:
- https://github.com/getsentry/sentry-cocoa