sentry-react-native-setup
Original:🇺🇸 English
Not Translated
Setup Sentry in React Native using the wizard CLI. Use when asked to add Sentry to React Native, install @sentry/react-native, or configure error monitoring for React Native or Expo apps.
1installs
Sourcejaffrepaul/agent-skills
Added on
NPX Install
npx skill4agent add jaffrepaul/agent-skills sentry-react-native-setupSKILL.md Content
Sentry React Native Setup
Install and configure Sentry in React Native projects using the official wizard CLI.
Invoke This Skill When
- User asks to "add Sentry to React Native" or "install Sentry" in a React Native app
- User wants error monitoring, logging, or tracing in React Native or Expo
- User mentions "@sentry/react-native" or mobile error tracking
Important: The configuration options and code samples below are examples. Always verify against docs.sentry.io before implementing, as APIs and defaults may have changed.
Wizard Setup (Recommended)
bash
npx @sentry/wizard@latest -i reactNativeWhat the Wizard Does
| Task | Description |
|---|---|
| Install SDK | Adds |
| Metro config | Adds |
| Expo config | Adds |
| Android setup | Enables Gradle build step for source maps |
| iOS setup | Wraps Xcode build phase, adds debug symbol upload |
| Pod install | Runs |
| Credentials | Stores in |
| Init code | Configures Sentry in |
Manual Configuration
If not using wizard, add to your app entry point:
javascript
import * as Sentry from "@sentry/react-native";
Sentry.init({
dsn: "YOUR_SENTRY_DSN",
sendDefaultPii: true,
// Tracing
tracesSampleRate: 1.0,
// Logs
enableLogs: true,
// Profiling
profilesSampleRate: 1.0,
// Session Replay
replaysOnErrorSampleRate: 1.0,
replaysSessionSampleRate: 0.1,
integrations: [Sentry.mobileReplayIntegration()],
});Wrap Your App
javascript
export default Sentry.wrap(App);Expo Projects
For Expo, follow the Expo-specific setup:
bash
npx @sentry/wizard@latest -i reactNativeWorks for both managed and bare Expo projects.
Configuration Options
| Option | Description | Default |
|---|---|---|
| Sentry DSN | Required |
| Include user data | |
| % of transactions traced | |
| % of traces profiled | |
| Send logs to Sentry | |
| % of error sessions replayed | |
| % of all sessions replayed | |
Files Created/Modified
| File | Purpose |
|---|---|
| Sentry initialization |
| Metro bundler config |
| Expo config (if Expo) |
| iOS build credentials |
| Android build credentials |
| Environment variables |
Environment Variables
bash
SENTRY_DSN=https://xxx@o123.ingest.sentry.io/456
SENTRY_AUTH_TOKEN=sntrys_xxx
SENTRY_ORG=my-org
SENTRY_PROJECT=my-projectVerification
Add test error:
javascript
throw new Error("My first Sentry error!");Or use a test button:
javascript
<Button title="Test Sentry" onPress={() => { throw new Error("Test"); }} />Source Maps
Source maps are automatically uploaded during build when wizard configures:
- Android: Gradle plugin
- iOS: Xcode build phase
Troubleshooting
| Issue | Solution |
|---|---|
| Wizard fails | Try manual setup, check Node version |
| iOS build fails | Run |
| Source maps not uploading | Verify |
| Expo errors | Ensure using compatible Expo SDK version |
| App not wrapped | Add |