用途:在 React Native 或 Expo 项目中接入 Sentry,实现错误监控、日志、追踪、性能分析与会话回放。
主要能力:官方向导 CLI 可自动安装 @sentry/react-native,向 metro.config.js 添加 @sentry/react-native/metro,向 app.json 添加 @sentry/react-native/expo,启用 Android Gradle 构建步骤以生成 source maps,包装 iOS Xcode 构建阶段并上传调试符号,执行 pod install,将凭证写入 ios/sentry.properties、android/sentry.properties 和 env.local,并在 App.tsx 或 _layout.tsx 中配置初始化代码。
使用方式:推荐运行 npx @sentry/wizard@latest -i reactNative,Expo 托管与 bare 项目均适用。手动配置时在入口文件调用 Sentry.init,设置 dsn、sendDefaultPii、tracesSampleRate、enableLogs、profilesSampleRate、replaysOnErrorSampleRate、replaysSessionSampleRate,并加入 Sentry.mobileReplayIntegration(),最后用 export default Sentry.wrap(App) 包装应用。环境变量包括 SENTRY_DSN、SENTRY_AUTH_TOKEN、SENTRY_ORG、SENTRY_PROJECT。
验证:抛出测试错误或使用测试按钮触发错误,确认事件上报。source maps 在构建时自动上传。
限制:资料中的配置选项与代码为示例,实施前应核对 docs.sentry.io,API 与默认值可能变化;向导失败可改用手动配置并检查 Node 版本;iOS 构建失败可运行 cd ios && pod install;source maps 未上传需检查 sentry.properties 中的 auth token;Expo 需使用兼容的 SDK 版本;应用未包装需添加 Sentry.wrap(App)。