Sentry automatically captures crashes recorded on macOS, iOS, and tvOS. See Swift error details like function, filename, and line number without ever digging through iOS crash logs.
To integrate Sentry into your Xcode project, specify it in your Podfile
, then run pod install
:
platform :ios, '9.0' use_frameworks! # This is important target 'YourApp' do pod 'Sentry', :git => 'https://github.com/getsentry/sentry-cocoa.git', :tag => '8.40.1' end
Initialize the SDK as soon as possible in your application lifecycle, such as in your AppDelegate application:didFinishLaunchingWithOptions
method:
import Sentry // Make sure you import Sentry func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { SentrySDK.start { options in options.dsn = "https://<key>@sentry.io/<project>" options.debug = true // Enabled debug when first installing is always helpful // Example uniform sample rate: capture 100% of transactions for Tracing options.tracesSampleRate = 1.0 } return true }
Check our documentation for the latest instructions.
See all platformsWithin minutes after installing Sentry, software teams are able to trace Swift performance issues back to a poor performing API call as well as surface all related code errors. Engineering Managers and Developers now have a single tool to optimize the performance of their code and deliver fast customer experiences with Performance Monitoring.
Reveal hidden context in Apple’s incomplete crash data by automatically symbolicating unreadable symbols. Handle Swift iOS crashes with complete context using the React Native SDK while the Objective-C SDK runs in the background.
See what the app was doing when the iOS crash occurred: every user action, controller changes, and custom breadcrumbs. Record events when devices are offline or in airplane mode, then send crash reports as soons as connection is regained.
Improve Swift error monitoring workflow with a full view of releases so you can mark errors as resolved and prioritize live issues. Learn in which version bug first appeared, merge duplicates, and know if things regress in a future release. Add commit data to automatically suggest an owner of each iOS crash and instantly send deploy emails.
See what the app was doing when the iOS crash occurred
Find answers to the key questions and insights need to resolve the issue
How actionable is this crash? What was the device? Has this same crash occurred before?
Sentry supports every major language, framework, and library. You can browse each of them here.
You can get started for free. Pricing depends on the number of monthly events, transactions, and attachments that you send Sentry. For more details, visit our pricing page.
Sentry doesn’t impact a web site’s performance.
If you look at the configuration options for when you initialize Sentry in your code, you’ll see there’s nothing regarding minimizing its impact on your app’s performance. This is because our team of SDK engineers already developed Sentry with this in mind.
Sentry is a listener/handler for errors that asynchronously sends out the error/event to Sentry.io. This is non-blocking. The error/event only goes out if this is an error.
Global handlers have almost no impact as well, as they are native APIs provided by the browsers.
Here’s a quick look at how Sentry handles your personal information (PII).
×We collect PII about people browsing our website, users of the Sentry service, prospective customers, and people who otherwise interact with us.
What if my PII is included in data sent to Sentry by a Sentry customer (e.g., someone using Sentry to monitor their app)? In this case you have to contact the Sentry customer (e.g., the maker of the app). We do not control the data that is sent to us through the Sentry service for the purposes of application monitoring.
Am I included?We may disclose your PII to the following type of recipients:
You may have the following rights related to your PII:
If you have any questions or concerns about your privacy at Sentry, please email us at [email protected].
If you are a California resident, see our Supplemental notice.