Profile
Back to NewsBack
GitHub Trending 2 min
Reader Mode
getsentry/sentry-cocoa: The official Sentry SDK for iOS, tvOS, macOS, watchOS, iPadOS and visionOS.

getsentry/sentry-cocoa: The official Sentry SDK for iOS, tvOS, macOS, watchOS, iPadOS and visionOS.

15 hours ago

_Bad software is everywhere, and we're tired of it. Sentry is on a mission to help developers write better software faster, so we can get back to enjoying technology. If you want to join us Check out our open positions_

[!NOTE]
You are currently viewing the main branch which latest development version of v9 release.
> For the latest v8 release, please switch to the v8.x branch and refer to the v8 CHANGELOG.

Official Sentry SDK for iOS / iPadOS / tvOS / macOS / watchOS (1) / visionOS

Build</a> SwiftPM compatible</a> Swift Package Index</a> X Follow</a> Discord Chat</a>

Installation

Sentry Wizard (Recommended)

The quickest way to get started:

brew install getsentry/tools/sentry-wizard && sentry-wizard -i ios

This patches your project and configures the SDK automatically.

Swift Package Manager (Compile from Source)

Use this repository to build the SDK from source:

In Xcode: File > Add Packages, then paste:

https://github.com/getsentry/sentry-cocoa.git

In Package.swift:

dependencies: [
    .package(url: "https://github.com/getsentry/sentry-cocoa", from: "9.24.0"),
],
targets: [
    .target(name: "YourApp", dependencies: [
        .product(name: "SentrySPM", package: "sentry-cocoa"),
    ]),
]

Pre-built XCFrameworks

For pre-built static binaries via SPM, use the sentry-apple-binaries repository.

You can also download XCFrameworks directly from GitHub Releases.

For all installation options (Objective-C, dynamic linking, manual install), see the full installation docs.

[!NOTE]
CocoaPods support has been dropped. The last version available via CocoaPods is 9.19.1. Please migrate to SPM or XCFrameworks.

Initialization

_Remember to call this as early in your application life cycle as possible_ Ideally in applicationDidFinishLaunching in AppDelegate

import Sentry

// ....

SentrySDK.start { options in options.dsn = "___PUBLIC_DSN___" options.debug = true // Helpful to see what's going on }

@import Sentry;

// ....

[SentrySDK startWithConfigureOptions:^(SentryOptions *options) { options.dsn = @"___PUBLIC_DSN___"; options.debug = @YES; // Helpful to see what's going on }];

For more information checkout the docs.

(1)limited symbolication support and no crash handling.

Logging Integrations

Forward logs from popular logging libraries to Sentry Logs. Each integration is a separate Swift package, so you only pull in the dependencies you use:

Resources

Chat with me