spaa
将性能剖析数据转换为AI代理可分析的格式
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:spaa。 它的用途是:将性能剖析数据转换为AI代理可分析的格式 完整的 Skill 内容见:https://321skill.com/skills/spaa/raw/index.md 请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。
提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。
使用示例
‘帮我分析这个`profile.spaa`文件,找出最耗时的函数调用栈。’,它会使用`jq`命令解析SPAA文件,按权重排序堆栈记录,并清晰地列出占用CPU时间最多的函数调用路径及其占比。或者,
对AI说:‘对比`baseline.spaa`和`after.spaa`,看看内存分配有哪些显著变化。’,它会利用`heapdiff`工具或分析SPAA文件中的内存记录,识别出新增的内存分配热点和可能的内存泄漏点。
介绍
SPAA 是一个专为AI代理和LLMs设计的性能剖析文件格式和工具集,旨在解决原始剖析数据难以被AI直接分析的问题。原始剖析文件通常体积庞大、格式复杂且包含大量冗余信息,而SPAA通过预聚合堆栈、使用NDJSON格式,将数据压缩并结构化,使其变得轻量且易于查询。
使用SPAA非常简单,它提供了dtrace_to_spaa、chrome_to_spaa和heapdiff三个命令行工具。开发者只需运行简单的命令,即可将DTrace或Chrome DevTools生成的原始剖析文件(如CPU性能追踪、堆内存快照)转换为SPAA格式。转换后的文件可以直接使用grep、jq、head等通用命令行工具进行分析,无需加载整个文件。
这个工具非常适合需要AI代理协助进行性能分析的开发者、运维工程师和测试工程师。无论是排查线上服务的CPU热点,还是分析Web应用的内存泄漏,SPAA都能将复杂的性能数据转化为AI易于理解和处理的格式,从而让AI代理成为强大的性能分析助手。
在使用SPAA时,建议先通过head -1命令快速查看文件头信息,了解数据来源和度量指标。对于大型文件,可以利用grep过滤特定记录类型,再使用jq提取关键数据,这种渐进式披露的方式能有效节省AI代理的上下文窗口。注意,SPAA主要处理已聚合的堆栈数据,对于需要原始时间线事件进行细粒度分析的场景可能不够适用。
核心特点
SPAA的核心区别在于其格式专为AI代理设计,通过预聚合和NDJSON结构化,使AI能使用`grep`、`jq`等简单命令行工具直接分析性能数据,无需加载整个庞大文件,解决了原始剖析数据难以被AI有效处理的痛点。
注意事项
SPAA不适合需要分析原始、未聚合的时间线事件或进行极细粒度指令级剖析的场景。
常见问题
SPAA能分析哪些类型的性能数据?
SPAA支持分析DTrace的CPU剖析数据,以及Chrome DevTools的CPU性能追踪、堆内存快照和分配时间线数据。
AI代理如何使用SPAA文件?
AI代理可以像处理普通文本文件一样,使用`head`、`tail`、`grep`、`jq`等命令行工具来查询、过滤和提取SPAA文件中的结构化性能信息。
给 AI 助手的安装指引
如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:
请访问 https://321skill.com/skills/spaa/raw/index.md 读取 spaa 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。
AI 可直接读取的原始 Markdown 地址:/skills/spaa/raw/index.md(查看排版版本)