Skip to content

getsentry/sentry-react-native

Folders and files

NameName
Last commit message
Last commit date
Mar 5, 2025
Dec 18, 2024
Feb 24, 2025
Mar 7, 2025
Feb 24, 2025
Mar 5, 2025
Feb 12, 2025
Nov 5, 2024
Sep 4, 2024
Nov 19, 2024
Feb 14, 2024
Apr 3, 2023
Nov 11, 2024
Sep 4, 2024
Mar 7, 2025
Oct 3, 2024
Jan 23, 2025
Nov 4, 2024
Feb 24, 2025
Feb 25, 2025
Mar 5, 2025

Repository files navigation

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

Build & Test npm version npm dm npm dt Discord Chat Runs with Expo

Releases

This repo uses the following ways to release SDK updates:

  • Pre-release: We create pre-releases (alpha, beta, RC,…) for larger and potentially more impactful changes, such as new features or major versions.
  • Latest: We continuously release major/minor/hotfix versions from the main branch. These releases go through all our internal quality gates and are very safe to use and intended to be the default for most teams.
  • Stable: We promote releases from Latest when they have been used in the field for some time and in scale, considering time since release, adoption, and other quality and stability metrics. These releases will be indicated on the releases page with the Stable suffix.

Requirements

  • react-native >= 0.65.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
  • RN New Architecture support

Installation and Usage

To install the package and setup your project:

npx @sentry/wizard -s -i reactNative

How to use it:

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

Sentry.init({
  dsn: "__DSN__",

  // Set tracesSampleRate to 1.0 to capture 100%
  // of transactions for performance monitoring.
  // We recommend adjusting this value in production
  tracesSampleRate: 1.0,
});

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

Introducing Mobile Screenshots and Suspect Commits.

Tips for Optimizing React Native Application Performance - Part 2: Using Sentry SDK for Performance Monitoring.

Tips for Optimizing React Native Application Performance: Part 1.

Tracking Stability in a Bluetooth Low Energy-Based React-Native App.

Mobile Vitals - Four Metrics Every Mobile Developer Should Care About.

Performance Monitoring Support for React Native.

Resources

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