Profile 属性

状态: 开发中

通用 Profile 标识属性

本节描述的属性是相当通用的。它们可以应用于任何适用的 Profile 记录。

帧类型

描述:描述 Profile 中单个帧的来源。

Attributes

Stability需求级别Value Type描述Example Values
profile.frame.typeDevelopment推荐字符串描述单个帧的解释器或编译器。cpython

profile.frame.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的*;否则,可以使用自定义值。

描述Stability
beamErlangDevelopment
cpythonPythonDevelopment
dotnet.NETDevelopment
goGo,Development
jvmJVMDevelopment
kernel内核Development
native可以是 CC++GoRust,但不仅限于此。如果可能,必须使用更精确的值。Development
perlPerlDevelopment
phpPHPDevelopment
rubyRubyDevelopment
rustRustDevelopment
v8jsV8JSDevelopment

与 pprof 的兼容性

现有的 pprof 格式可以毫无歧义地映射到此数据模型。从此数据模型到 pprof 的反向映射也可以在目标 Profile 格式具有等效功能的前提下进行。

本节描述的属性特定于支持可转换性。它们可以应用于任何适用的 Profile 记录。

Attributes

Stability需求级别Value Type描述Example Values
pprof.location.is_foldedDevelopment推荐布尔值指示多个符号映射到此位置的地址,例如由于链接器进行了相同的代码折叠。在这种情况下,行信息代表多个符号中的一个。当 Profile 的符号化状态更改时,必须重新计算此字段。
pprof.mapping.has_filenamesDevelopment推荐布尔值指示此映射有关联的文件名。
pprof.mapping.has_functionsDevelopment推荐布尔值指示此映射有关联的函数。
pprof.mapping.has_inline_framesDevelopment推荐布尔值指示此映射有关联的内联帧。
pprof.mapping.has_line_numbersDevelopment推荐布尔值指示此映射有关联的行号。
pprof.profile.commentDevelopment推荐string[]与 Profile 关联的自由格式文本。此字段不应用于存储任何机器可读的信息,仅用于人类友好型内容。["hello world", "bazinga"]