Xcode Instruments Points of Interest区间丢失问题求助
Xcode Instruments "Points of Interest" 区间丢失问题
很多开发者在Xcode 15系列版本中遇到过完全相同的问题:使用OSSignposter(原OSLog)的beginInterval和endInterval方法记录大量异步/同步任务区间时,Points of Interest工具的主面板时间线图表会随机丢失5%-15%的区间,但底部的详情面板能完整显示所有被捕获的区间数据。
已验证的触发场景
- 跨平台/设备:iOS真机、iOS模拟器、macOS应用均会出现该问题
- 与任务负载无关:高CPU密集型任务、低负载的
Task.sleep任务,甚至纯同步代码中都存在此现象 - 配置调整无效:切换Instruments的延迟日志模式或即时日志模式,无法解决区间丢失问题
- 版本覆盖:Xcode 15.0及15.0.1版本均存在该问题,且控制台无任何错误提示
已知原因与社区反馈
目前社区普遍认定这是Xcode 15 Instruments的UI渲染层bug:底层的日志捕获逻辑是正常的(详情面板的完整数据可佐证),但主面板的时间线图表在处理大量区间数据时,存在渲染丢帧或内部数据过滤逻辑错误,导致部分区间未被绘制到图表上。
临时解决方案
- 缩小时间范围:在主面板拖动时间轴聚焦某一段较短的时间区间,丢失的区间通常会被重新渲染出来
- 重新加载trace文件:将当前捕获的数据导出为
.trace文件后重新打开,部分丢失的区间可能恢复显示 - 降级Xcode:暂时回退到Xcode 14.x版本,该版本的Points of Interest工具未出现此类区间丢失问题
内容的提问来源于stack exchange,提问作者Rob
相关产品推荐
相关产品推荐

