持续剖析用于定位服务的 CPU 消耗、内存分配或锁等待。通过主导航打开持续剖析。
接入 Profile
MoleSignal 支持:
- 外部 OTLP gRPC Receiver 上的 OTLP Profiles;
/api/v1/profiles/intake 的 Pyroscope 兼容接入;
/api/v1/profiles/upload 的 pprof 文件上传;
- 在界面直接上传单个 profile 文件。
Profile 元数据可查询,canonical pprof blob 会压缩后存入对象存储。
分析火焰图
选择服务、profile 类型与时间范围,再选择一个或多个 profile 合并分析。
火焰图支持:
- 放大某个栈帧;
- 搜索并高亮函数;
- 查看 self 与 cumulative 样本;
- 查看热点函数排行;
- 检查函数详情和调用栈上下文;
- 对近期窗口进行实时刷新。
比较两个窗口
打开比较 Profile,选择基线窗口和对比窗口。差分火焰图会突出变热或变冷的函数,适合
分析发布或配置变更后的回归。
差分性能剖析需要 Enterprise Edition 的 profiling_enhanced 授权。Profile 采集、列表、下载、
Trace 关联与单窗口火焰图不受该授权限制。
区分应用与节点剖析
应用 Profile 属于组织数据流并显示在产品界面。MoleSignal 还提供面向平台运维的节点本地
pprof Listener。该 Listener 默认关闭,通常应仅绑定 loopback。
节点 Listener 与定时 _molesignal Profile 见
自身可观测。
streams.read 用于发现 Profile 数据。
streams.query 用于渲染和比较火焰图。
streams.write 或接入凭证用于发送 Profile。
Profile 可能暴露函数名、代码布局和资源使用模式。请把 Profile 接入、下载和节点 pprof
Listener 视为敏感运维数据。