macOS Error Tracking & Performance Monitoring

Actionable insights to resolve macOS performance bottlenecks and errors. Improve your monitoring workflow with a full view of releases so you can mark macOS errors as resolved and prioritize live issues.

Getting Started is Simple

To integrate Sentry into your Xcode project, specify it in your Podfile, then run pod install:

Click to Copy
platform :ios, '9.0' use_frameworks! # This is important target 'YourApp' do pod 'Sentry', :git => 'https://github.com/getsentry/sentry-cocoa.git', :tag => '8.41.0' end

Initialize the SDK as soon as possible in your application lifecycle, such as in your AppDelegate application:didFinishLaunchingWithOptions method:

Click to Copy
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 platforms

macOS Performance Monitoring

Quickly identify performance issues and view the full end-to-end distributed trace to see the exact poor-performing API call and what caused it. Measure everything from warm starts to froze frames so you can improve macOS performance with max efficiency, not max effort.

macOS Continuous Profiling

Get code-level insight into how your application performs in production environments on real user devices. Find the root cause of slowdowns and issues consuming the most resources, like CPU or memory, and affecting macOS application performance on your user’s mobile device.

Get macOS Crash Reporting With Complete Stack Traces

Reveal hidden context in Apple’s incomplete crash data by automatically symbolicating unreadable symbols. Handle Cocoa macOS crashes with complete context using the React Native SDK while the Objective-C SDK runs in the background.

Fill In The Blanks About macOS Crashes

See what the app was doing when the macOS 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.

Resolve macOS Crashes With Better Data

Improve Cocoa 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 macOS crash and instantly send deploy emails.

“Being able to use Sentry to monitor the performance as well as our mobile applications is important. Using one solution to monitor the entire application stack gives our engineers the visibility they need to deliver a first-rate experience for our customers.”

Karan Gupta
CTO, Shift

See The Full Picture Of Any macOS Exception

See what the app was doing when the macOS 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?

FAQs

Traditional logging provides you with a trail of events. Some of those events are errors, but many times they’re simply informational. Sentry is fundamentally different because we focus on exceptions, or in other words, we capture application crashes. We discuss in more detail here and on our blog.

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.

Supporting Resources

Continuous Improvement in Native

A better experience for your users. An easier life for your developers.

© 2024 • Sentry is a registered Trademark of Functional Software, Inc.