Profile 属性
状态: 开发中
通用 Profile 标识属性
本节描述的属性是相当通用的。它们可以应用于任何适用的 Profile 记录。
帧类型
描述:描述 Profile 中单个帧的来源。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
profile.frame.type | 推荐 | 字符串 | 描述单个帧的解释器或编译器。 | cpython |
profile.frame.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的*;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
beam | Erlang | |
cpython | Python | |
dotnet | .NET | |
go | Go, | |
jvm | JVM | |
kernel | 内核 | |
native | 可以是 C、C++、Go 或 Rust,但不仅限于此。如果可能,必须使用更精确的值。 | |
perl | Perl | |
php | PHP | |
ruby | Ruby | |
rust | Rust | |
v8js | V8JS |
与 pprof 的兼容性
现有的 pprof 格式可以毫无歧义地映射到此数据模型。从此数据模型到 pprof 的反向映射也可以在目标 Profile 格式具有等效功能的前提下进行。
本节描述的属性特定于支持可转换性。它们可以应用于任何适用的 Profile 记录。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
pprof.location.is_folded | 推荐 | 布尔值 | 指示多个符号映射到此位置的地址,例如由于链接器进行了相同的代码折叠。在这种情况下,行信息代表多个符号中的一个。当 Profile 的符号化状态更改时,必须重新计算此字段。 | ||
pprof.mapping.has_filenames | 推荐 | 布尔值 | 指示此映射有关联的文件名。 | ||
pprof.mapping.has_functions | 推荐 | 布尔值 | 指示此映射有关联的函数。 | ||
pprof.mapping.has_inline_frames | 推荐 | 布尔值 | 指示此映射有关联的内联帧。 | ||
pprof.mapping.has_line_numbers | 推荐 | 布尔值 | 指示此映射有关联的行号。 | ||
pprof.profile.comment | 推荐 | string[] | 与 Profile 关联的自由格式文本。此字段不应用于存储任何机器可读的信息,仅用于人类友好型内容。 | ["hello world", "bazinga"] |