3

Firefox 开发者工具支持火焰图,但似乎时间被用作 X 轴:

在火焰图视图本身中,沿 X 轴的是时间。上面的屏幕截图涵盖了从 1435 毫秒到略过 1465 毫秒的时间段。沿 Y 轴是该时间点调用堆栈上的函数,顶层位于顶部,叶函数位于底部。函数采用颜色编码,以便于区分。

通常,火焰图使用百分比作为 X 轴,例如:pyflameBrendan Gregg 的火焰图

我发现基于时间的火焰图令人困惑,并且错过了获取每个函数的聚合时间的能力(就内容而言类似于调用树,但以更直观的方式表示)。此外,如果一个函数很短但被多次调用,很容易错过它,而在“聚合”火焰图上,它会突出显示。要了解为什么基于时间的火焰图令人困惑,让我从另一篇文章中借用示例- 诚然在 Chrome 中,但问题是相似的:

在此处输入图像描述

即使某些功能占用了总时间的 30%,在上图中也看不到。

有什么方法(通过插件或设置)我可以让 Firefox 显示所选时间片的聚合火焰图而不是基于时间的火焰图?

4

1 回答 1

1

似乎扩展 DevTools是相当有限的,除非您正在创建自己的面板,但您实际上无法访问那里的分析器来生成火焰图。

您仍然可以将记录的配置文件保存到 JSON 文件中,对其进行解析,然后创建自己的火焰图来计算总聚合运行时间。

您还可以尝试使用Gecko Profiler Add-on进行一些更高级的分析。不过,您将处于同一条船上,因为您需要将其导出以对配置文件数据进行自己的聚合。

于 2018-02-01T19:55:48.063 回答