接入 Profile
MoleSignal 支持:- 外部 OTLP gRPC Receiver 上的 OTLP Profiles;
/api/v1/profiles/intake的 Pyroscope 兼容接入;/api/v1/profiles/upload的 pprof 文件上传;- 在界面直接上传单个 profile 文件。
分析火焰图
先设置时间范围,再用筛选行缩小分析范围:
筛选行下方的一行文字说明本次分析的结论:最热的函数及其自身占比、样本数、服务数和采集时长。
火焰图由所选范围内的 Profile 合并而成。选择显示已选数量的 Profile 按钮,可以勾选参与合并的 Profile。点击该面板中的一行,可以单独打开一个 Profile,其中提供 下载 pprof 和关联链路的链接。时间范围内的 Profile 数超过单次合并的上限时,火焰图展示均匀采样后的结果,并给出提示。
三个视图读取同一份合并数据:
工作区还支持按名称高亮帧、全屏分析,以及在打开 实时 时每 10 秒刷新近期窗口。
对比两个时段
在分析页选择 对比 profile。对比保留服务和 Profile 类型,并把两个时段放在一起比较:
跟随对比时段的基线只在两者不重叠时可选。例如对比时段为三天时,一天前的同一时段 不可选。
页面会给出每个时段的 Profile 数量和 总量变化。两个时段有重叠,或两个时段的 Profile 数量不同时,页面会给出提示,因为此时的变化有一部分来自采集数量的差异。
差分火焰图标出开销增加和开销减少的函数。变化最大的函数 按自身开销的变化排序,只出现在一个时段的函数标为 新增 或 消失。在列表中选择函数,可以在火焰图中标出该函数。这种对比适合分析发布或配置变更后的回归。
区分应用与节点剖析
应用 Profile 属于组织数据流并显示在产品界面。MoleSignal 还提供面向平台运维的节点本地 pprof Listener。该 Listener 默认关闭,通常应仅绑定 loopback。 节点 Listener 与定时_molesignal Profile 见自身可观测。
权限
streams.read用于发现 Profile 数据。streams.query用于渲染和比较火焰图。streams.write或接入凭证用于发送 Profile。