/sentry-react-native

Official Sentry SDK for react-native

Primary LanguageTypeScriptMIT LicenseMIT

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

Sentry SDK for React Native

Travis E2E Tests npm version npm dm npm dt Discord Chat

Requirements

  • react-native >= 0.56.0

Features

  • Automatic JS Error Tracking (using @sentry/browser)
  • Automatic Native Crash Error Tracking (using sentry-cocoa & sentry-android under the hood)
  • Offline storage of events
  • On Device symbolication for JS (in Debug)
  • Autolinking
  • Events with enriched device data
  • RAM bundle support
  • Hermes support
  • Expo support (sentry-expo)

Installation and Usage

To install the package:

npm install --save @sentry/react-native
# OR
yarn add @sentry/react-native

If you are using a version of React Native <= 0.60.x link the package using react-native.

react-native link @sentry/react-native
# OR, if self hosting
SENTRY_WIZARD_URL=http://sentry.acme.com/ react-native link @sentry/react-native

How to use it:

import * as Sentry from "@sentry/react-native";

Sentry.init({
  dsn: "__DSN__"
});

Sentry.setTag("myTag", "tag-value");
Sentry.setExtra("myExtra", "extra-value");
Sentry.addBreadcrumb({ message: "test" });

Sentry.captureMessage("Hello Sentry!");

Upgrade

If you are coming from react-native-sentry which was our SDK < 1.0 you should follow the upgrade guide and then follow the install steps.

Blog posts

Performance Monitoring Support for React Native.

Resources

  • Documentation
  • Forum
  • Discord Chat
  • Stack Overflow
  • Code of Conduct
  • Twitter Follow