Sentry automatically captures crashes recorded on macOS, iOS, and tvOS. See Objective-C error details like function, filename, and line number without ever digging through iOS crash logs.
A month of mobile product updates, help sessions, and tips to improve your app experience.
March 18, 2021 @ 10:00 AM PST
Join us for a conversation on performance monitoring, when to use attachments, and a sneak peek on reprocessing incomplete events.
Register nowGive 3 months Sentry and get 3 months free. It might be awkward, but their users will thank you.
Refer a FriendRead about how CTO and Co-Founder of Popsa, Tom Cohen, uses Sentry to solve what matters most to their customers.
Read moreWatch a quick tour from Sentry Solutions Engineers on how to get in front of bad releases.
Watch nowRead about how to avoid asking your users to conduct a series of acrobatic moves to send you their logs.
Read moreDownload this handy one-pager to share with your team or refer back to it for when you don’t have internet.
DownloadTo 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 => '6.1.4'
end
Initialize the SDK as soon as possible in your application lifecycle, such as in your AppDelegate application:didFinishLaunchingWithOptions
method:
@import Sentry;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[SentrySDK startWithConfigureOptions:^(SentryOptions *options) {
options.dsn = @"https://<key>@sentry.io/<project>";
options.debug = @YES; // Enabled debug when first installing is always helpful
}];
return YES;
}
That’s it. There’s no step three. Don’t believe us? Check out our Documentation.
See all platformsReveal hidden context in Apple’s incomplete crash data by automatically symbolicating unreadable symbols. Handle Objective-C 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 Objective-C 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.
“Sentry in particular is really valuable at tracing exceptions of errors and providing automatic feedback so we can see things clearly and gain a better understanding of what’s going wrong.”
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.