火焰图 - Amazon Managed Grafana

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

火焰图

本文档主题专为支持 Grafana 版本 10.x 的 Grafana 工作空间而设计。

有关支持 Grafana 9.x 版本的 Grafana 工作空间,请参阅。在 Grafana 版本 9 中工作

有关支持 Grafana 8.x 版本的 Grafana 工作空间,请参阅。在 Grafana 版本 8 中工作

火焰图允许您可视化分析数据。使用此可视化,可以将剖面图表示为火焰图、表格或两者兼而有之。

显示了 Grafana 中火焰图可视化示例的图像。

火焰图模式

火焰图利用了剖析数据的分层特性。它将数据压缩成一种格式,使您可以在测量内存时轻松查看哪些代码路径消耗了最多的系统资源,例如 CPU 时间、分配的对象或空间。火焰图中的每个块代表堆栈中的一个函数调用,其宽度代表其值。

灰色部分是一组表示相对较小的值的函数,出于性能原因,它们被合并成一个部分。

您可以将鼠标悬停在特定函数上方以查看工具提示,其中显示有关该函数的其他数据,例如该函数的值、占总值的百分比以及该函数的样本数。

下拉操作

您可以单击某个函数以显示包含其他操作的下拉菜单:

  • F@@ oc us bl oc k — 当你选择 Focus block 时,方块或函数将设置为火焰图宽度的 100%,其所有子函数的宽度都将相对于父函数的宽度进行更新。这样可以更轻松地向下钻取火焰图的较小部分。

  • 复制函数名称-当您选择复制函数名称时,将复制该模块所代表的函数的全名。

  • 三明治视图 — 三明治视图允许您显示所点击功能的上下文。它在顶部显示函数的所有调用者,在底部显示所有被调用者。这显示了函数的聚合上下文,因此,如果该函数存在于火焰图中的多个位置,则所有上下文都将在三明治视图中显示和聚合。

状态栏

状态栏显示有关火焰图和当前应用的修改的元数据,例如图表的哪一部分处于焦点或三明治视图中显示了什么功能。单击状态栏中的 X 以删除该修改。

工具栏

搜索

您可以使用搜索字段来查找具有特定名称的函数。火焰图中与搜索相匹配的所有函数都将保持彩色,而其余函数则呈灰色。

颜色架构选择器

您可以按其值或软件包名称在着色函数之间切换,以直观地将同一个包中的函数联系在一起。

文字对齐

将文本向左或向右对齐,以便在函数名称不适合块时显示函数名称中更重要的部分。

可视化选择器

您可以选择仅显示火焰图、仅显示表格,或者同时显示两者。

顶桌模式

上面的表格以表格形式显示了配置文件中的函数。该表有三列:符号、自我和总计。默认情况下,该表按自用时间排序,但可以通过单击列标题按总时间或符号名称重新排序。如果给定函数出现在配置文件中的多个位置,则每行表示该函数的聚合值。

左侧还有每行的操作按钮。第一个按钮搜索函数名称,第二个按钮显示函数的三明治视图。

数据 API

为了呈现火焰图,必须使用嵌套集合模型格式化数据框数据。

嵌套集合模型可确保火焰图的每个项目仅按其嵌套级别作为整数值、其元数据以及其在数据框中的顺序进行编码。这意味着商品的顺序很重要,必须是正确的。排序是对火焰图中项目的深度优先遍历,它可以重新创建图形,而无需像子数组那样在数据框中使用可变长度值。

必填字段:

字段名称 类型 描述
level number 物品的嵌套等级。换句话说,这个项目和火焰图的顶部项目之间有多少个项目。
value number 项目的绝对值或累积值。这相当于图表中项目的宽度。
label 字符串 要为特定商品显示的标签。
self number 自身值,通常是项目的累积值减去其直系子项的累积值之和。