Sentry React Native 7.0.0-alpha.0 发布:性能监控与错误追踪的重大升级
2025-06-29 06:26:23作者:殷蕙予
Sentry React Native 是一个强大的错误监控和性能追踪工具,专门为 React Native 应用设计。它帮助开发者实时捕获应用中的错误、崩溃和性能问题,并提供详细的诊断信息。最新发布的 7.0.0-alpha.0 版本带来了多项重要改进和 API 变更,标志着该 SDK 的一个重要里程碑。
版本升级注意事项
从 6.x 升级到 7.0 版本时,开发者需要注意以下几点核心变化:
- API 清理和重构:基于 Sentry JavaScript SDK 9.0 版本进行了大量 API 清理工作
- 行为变更:部分功能的行为发生了变化,这些变化不会通过类型检查器或测试自动捕获
- 兼容性:需要 Sentry 自托管版本 24.4.2 或更高版本支持
主要改进与修复
关键修复
- Expo 更新上下文处理:现在会在原生初始化后传递 Expo 更新上下文,确保崩溃报告中包含这些信息
- 网络请求追踪优化:默认避免重复追踪网络请求(fetch 和 xhr),提升了性能监控的准确性
- Expo 上下文标准化:所有 Expo 更新上下文值现在都统一为小写格式
重大变更
- IP 地址处理:当
sendDefaultPii设置为 true 且user.ip_address未定义时,现在会自动设置为{{auto}} - 控制台异常处理:来自
captureConsoleIntegration的异常现在默认标记为已处理(handled: true) - 配置调整:
shutdownTimeout从核心模块移动到了@sentry/react-native模块 - 命名变更:
hasTracingEnabled重命名为hasSpansEnabled,更准确地反映了其功能 - Span 处理:不再允许在
beforeSendSpan钩子中丢弃 span 或返回 null
移除的功能与类型
7.0 版本移除了以下不再推荐使用的功能和类型:
- 废弃类型:TransactionNamingScheme、Request 和 Scope(推荐直接使用 Scope 类)
- 配置选项:
autoSessionTracking(改用enableAutoSessionTracking)enableTracing(通过设置tracesSampleRate来控制)
- 核心 API:移除了
getCurrentHub()、Hub和getCurrentHubShim() - 传播上下文:移除了
spanId字段 - 指标 API:完全移除了指标相关功能
- 工具包:移除了
@sentry/utils包,相关功能已迁移到@sentry/core
其他重要变更
- Scope 处理优化:当向
startSpanManual或startSpan传递自定义 scope 时,现在会自动 fork 该 scope - Web 支持增强:在 React Native Web 环境下,当
enableAutoSessionTracking设置为 true 时,会自动添加browserSessionIntegration - 启动 span 描述简化:将
Cold/Warm App Startspan 描述简化为Cold/Warm Start,使报告更加简洁
依赖项更新
7.0.0-alpha.0 版本对多个核心依赖进行了升级:
- JavaScript SDK:从 v8.54.0 升级到 v9.12.0,带来了大量新功能和改进
- Android SDK:从 v7.20.1 升级到 v8.11.1,增强了 Android 平台的支持
- CLI 工具:从 v2.43.1 升级到 v2.45.0,改进了命令行功能
- 打包插件:从 v3.3.1 升级到 v3.4.0,优化了构建流程
- iOS SDK:从 v8.49.2 升级到 v8.50.0,提升了 iOS 平台的稳定性
升级建议
对于正在使用 Sentry React Native 6.x 版本的项目,建议:
- 仔细阅读变更日志,了解所有 API 变更和行为变化
- 在测试环境中先行验证 7.0.0-alpha.0 版本的兼容性
- 重点关注移除的功能和变更的行为,确保应用逻辑不受影响
- 利用这个预发布版本进行充分测试,为正式升级做好准备
这个版本为 React Native 应用带来了更稳定、更高效的错误监控和性能追踪能力,同时也为未来的功能扩展奠定了基础。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0446
源启盛夏_AtomGit暑期开发者成长计划「源启盛夏」暑期校园开发者成长计划旨在激活校园开源力量,通过积分激励、认证扶持、资源倾斜等形式,引导高校组织和开发者完成「入驻 — 建项目 — 做贡献 — 获认证 — 得资源」的完整闭环。无论你是想带领社团入驻平台的组织者,还是希望用代码贡献证明自己的开发者,都能在这里找到属于你的成长路径。Markdown00
jiuwenswarmJiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0761
Hy3Hy3 是由腾讯混元团队研发的快慢思考融合的混合专家模型,总参数量 295B,激活参数 21B,MTP 层参数 3.8B。4 月底发布 Hy3 Preview 后,我们在 50 多个业务中获得了广泛的反馈,修复了各种体验问题,进一步提升了后训练的质量和规模。今天,我们发布 Hy3。它展现出显著强于同尺寸并比肩旗舰(参数规模往往是 Hy3 的 2~5 倍)开源模型的智能水平,显著提升了在各类产品和生产力任务中的实用价值。Python00
AscendNPU-IRAscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优C++0310
DragonOSDragonOS is an operating system developed from scratch using Rust, with Linux compatibility. It is designed for **Serverless** scenarios. 使用Rust从0自研内核,具有Linux兼容性的操作系统,面向云计算Serverless场景而设计。Rust00
热门内容推荐
最新内容推荐
项目优选
收起
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
515
deepin linux kernel
C
32
16
Ascend Extension for PyTorch
Python
799
1.13 K
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
780
1.57 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
964
2.27 K
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
C
830
6.18 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.2 K
1.24 K
AtomGit CLI (ag cli),AtomGit 命令行工具,参考 GitHub CLI (gh) 开发。
目前 atomgit-cli 项目已在 AtomCode 的 Coding Plan 项目列表中
Go
39
24
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
641
275
暂无描述
Markdown
825
5.48 K