@kylincloud/flamegraph-core
v0.37.2
Published
KylinCloud flamegraph core engine (framework-agnostic)
Readme
@kylincloud/flamegraph-core
KylinCloud 火焰图渲染核心引擎(框架无关),提供数据模型、解码、转换与渲染辅助能力。
适用场景
- 非 React / Vue 场景的 Profile 数据处理
- 自定义渲染管线或服务端预处理
- Profile 转换、Diff、导出等工具能力
该包通常由
@kylincloud/flamegraph/@kylincloud/flamegraph-vue间接依赖,业务侧一般不需要单独安装。
安装(需要时)
# npm
npm install @kylincloud/flamegraph-core
# pnpm
pnpm add @kylincloud/flamegraph-core快速上手
import { normalize, diffTwoProfiles } from '@kylincloud/flamegraph-core'
// 统一成可消费的 Flamebearer 结构(自动解码 delta levels)
const flamebearer = normalize({ profile })
// Diff 两份 profile(返回 double 格式)
const diffProfile = diffTwoProfiles(leftProfile, rightProfile)数据格式
interface Profile {
version: number
flamebearer: {
names: string[]
levels: number[][]
numTicks: number
maxSelf: number
sampleRate?: number
units?: string
leftTicks?: number
rightTicks?: number
}
metadata: {
appName?: string
spyName?: string
format: 'single' | 'double'
sampleRate: number
units: string
}
}数据格式说明:
- 单视图(single):每 4 个数字为一组
[offset, total, self, nameIndex] - 差分视图(double):每 7 个数字为一组
[leftOffset, leftTotal, leftSelf, rightOffset, rightTotal, rightSelf, nameIndex]
