SuperAPI AI 工具集

ios-ettrace-performance

通用与其它

查看项目

更新于 10-15 21:36

技能介绍

用途:在 iOS 模拟器上采集聚焦的、已符号化的 ETTrace 性能剖析,用于分析启动或运行时延迟、对比多次 trace、定位 CPU 占用高的调用栈。若任务还涉及模拟器构建、安装、启动、UI 操作、日志或截图,可配合 ../ios-debugger-agent/SKILL.md 使用。

主要能力与流程:每次只针对一个明确的用户可见流程,先写下预期起止点;构建将被安装和剖析的模拟器 App;临时把 ETTrace 链接进该 App 目标;收集与 UUID 匹配的 App 可执行文件及内嵌动态框架 dSYM;采集一次启动或运行时 trace;立即保存处理后的火焰图 JSON;仅分析处理后的 JSON,并报告流程、产物、热点与注意事项。避免“随便用一会儿 App”的宽泛采集。

必要用法:安装宿主端运行器 brew install emergetools/homebrew-tap/ettrace;App 还需链接适用于 iOS 模拟器架构的 ETTrace.xcframework。启动 trace 用 ettrace --simulator --launch --verbose --dsyms "$DSYMS",运行时流程用 ettrace --simulator --verbose --dsyms "$DSYMS"。一次只剖析一个注入 ETTrace 的模拟器 App,因为模拟器模式监听固定 localhost 端口。在 Codex 中需以 TTY 运行 ettrace 并用 write_stdin 回答提示,否则可能得不到有效 trace。

限制:不要基于未符号化的火焰图下结论;重要的一方可执行文件若出现“有库无符号”应视为失败 trace。仅分析 RUN_DIR 中处理后的 output_*.json,忽略 output.json 与原始 emerge-output/output.json。该工作流验证于 ETTrace v1.1.0 的处理输出。剖析完成后应移除临时 ETTrace 接线,除非用户明确要求保留。其他平台、收费或价格信息暂未提供。