mcpField
S
sentry-react-native-setup

sentry-react-native-setup

github.com/getsentry開発25150 回インストール35 週間前に更新
リポジトリ

sentry-react-native-setup について

React Native と Expo のプロジェクトに Sentry を導入するための設定スキルです。公式ウィザードまたは手動設定を扱い、SDK 初期化、ビルド連携、ソースマップ送信、問題の診断を説明します。

主な機能

  1. 01公式ウィザードによる導入
  2. 02SDK の手動初期化ガイド
  3. 03Metro と Expo の設定
  4. 04Android と iOS のビルド連携
  5. 05ソースマップ送信の設定
  6. 06導入時の問題への対処

活用シーン

  1. 01React Native アプリへの Sentry 導入
  2. 02managed または bare Expo での設定
  3. 03ソースマップ送信の設定
  4. 04導入やビルド問題の診断

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/getsentry/sentry-agent-skills --skill sentry-react-native-setup

インストール後、Claude Code で/sentry-react-native-setupを入力して読み込まれたか確認します。

詳細

Sentry React Native のセットアップ

公式のウィザード CLI を使用して、React Native プロジェクトに Sentry をインストールし、設定します。

このスキルを使用する場面

  • React Native アプリに「Sentry を追加」または「Sentry をインストール」したいとユーザーが依頼した場合
  • ユーザーが React Native または Expo でのエラー監視、ログ記録、トレースを求めている場合
  • ユーザーが「@sentry/react-native」またはモバイルのエラー追跡に言及した場合

重要: 以下の設定オプションとコードサンプルは例です。API やデフォルト値が変更されている可能性があるため、実装前に必ず docs.sentry.io を確認してください。

ウィザードによるセットアップ(推奨)

npx @sentry/wizard@latest -i reactNative
ウィザードで行われること
タスク説明
SDK のインストール@sentry/react-native パッケージを追加します
Metro の設定metro.config.js に @sentry/react-native/metro を追加します
Expo の設定app.json に @sentry/react-native/expo を追加します
Android のセットアップソースマップ用の Gradle ビルドステップを有効にします
iOS のセットアップXcode のビルドフェーズをラップし、デバッグシンボルのアップロードを追加します
Pod のインストールiOS 用に pod install を実行します
認証情報ios/sentry.properties、android/sentry.properties、env.local に保存します
初期化コードApp.tsx または _layout.tsx で Sentry を設定します

手動設定

ウィザードを使用しない場合は、アプリのエントリーポイントに追加します。

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()],
});
アプリをラップする
export default Sentry.wrap(App);

Expo プロジェクト

Expo の場合は、Expo 固有のセットアップに従ってください。

npx @sentry/wizard@latest -i reactNative

マネージド Expo プロジェクトとベア Expo プロジェクトの両方で動作します。

設定オプション

オプション説明デフォルト
dsnSentry DSN必須
sendDefaultPiiユーザーデータを含めるfalse
tracesSampleRateトレースするトランザクションの割合0
profilesSampleRateプロファイリングするトレースの割合0
enableLogsSentry にログを送信するfalse
replaysOnErrorSampleRateリプレイするエラーセッションの割合0
replaysSessionSampleRateリプレイする全セッションの割合0

作成・変更されるファイル

ファイル用途
App.js / _layout.tsxSentry の初期化
metro.config.jsMetro バンドラーの設定
app.jsonExpo の設定(Expo の場合)
ios/sentry.propertiesiOS ビルドの認証情報
android/sentry.propertiesAndroid ビルドの認証情報
env.local環境変数

環境変数

SENTRY_DSN=https://[email protected]/456
SENTRY_AUTH_TOKEN=sntrys_xxx
SENTRY_ORG=my-org
SENTRY_PROJECT=my-project

確認

テストエラーを追加します。

throw new Error("My first Sentry error!");

または、テストボタンを使用します。

<Button title="Test Sentry" onPress={() => { throw new Error("Test"); }} />

ソースマップ

ウィザードで設定すると、ビルド時にソースマップが自動的にアップロードされます。

  • Android:Gradle プラグイン
  • iOS:Xcode のビルドフェーズ

トラブルシューティング

問題解決方法
ウィザードが失敗する手動セットアップを試し、Node のバージョンを確認します
iOS のビルドが失敗するcd ios && pod install を実行します
ソースマップがアップロードされないsentry.properties ファイルに認証トークンがあることを確認します
Expo のエラー互換性のある Expo SDK バージョンを使用していることを確認します
アプリがラップされていないexport default Sentry.wrap(App) を追加します

コメント