发布构建更快却更难定位性能问题时应保留哪些诊断能力
简答题困难360 次浏览
参考答案与解析
# 核心结论
发布构建更快但更难定位问题时,应保留低开销、可关联且不泄露敏感信息的诊断能力,并将线上标识与离线解析资产分离。客户端至少保留稳定的构建标识、模块标识、关键阶段时间点、有限的性能采样、匿名设备分组和必要的错误上下文;源码映射、原生符号表、混淆映射、依赖锁定信息及构建清单则存放在权限受控的制品系统。每份诊断资产必须与实际发布产物一一对应,否则错误符号化可能比没有符号更加误导。
# 底层机制
压缩、树摇、代码分割、预编译和混淆会改变函数名称、文件位置与加载边界。Web堆栈缺少匹配的源码映射时,只能看到压缩后的文件位置;原生二进制剥离符号后,采样地址无法还原为函数;React Native的脚本包与宿主二
