选择要分析的配置文件

Profiler 界面中的菜单设置决定了使用哪些性能剖析文件数据来构建火焰图或历史记录视图。

为了生成火焰图,Profiler 会识别与当前菜单设置匹配的一组性能剖析文件。然后,它会从这组文件中随机选择最多 250 个性能剖析文件,并使用它们来构建火焰图。

为了生成历史记录视图,Profiler 会使用与服务、区域和版本菜单的当前设置匹配的所有配置文件。指标过滤条件的值决定了显示的资源。

时间范围

如需设置性能剖析数据在火焰图中显示的时间范围,请点击时间范围菜单,点击现在按钮,然后点击结束时间菜单。

默认情况下,时间字段具有以下设置:

  • 时间范围设置为 7 天。
  • 现在按钮为蓝色背景。
  • 结束时间包含 Profiler 的启动时间,且无法修改。

如果采用上述设置,Profiler 可以分析过去 7 天内捕获的性能剖析文件。

要设置时间范围,请点击时间范围向下箭头,然后从列表中选择一个选项。可供选择的时间范围介于 10 分钟到 30 天(性能剖析文件数据的保留期限)之间。

要将结束时间更新为当前时间,请点击现在。此按钮的背景颜色会在蓝色和白色之间切换。在以上任一情况下,点击操作都会将结束时间字段更新为当前时间。

要设置结束时间,请执行以下操作:

  • 如果结束时间文本如下图所示不可更改,请点击现在

    将“现在”作为“结束时间”

  • 结束时间字段中,输入日期和时间,或者使用日历选项来选择日期:

    明确设置“结束时间”

服务

如需选择您要分析其数据的服务,请点击服务菜单,然后进行选择。如果在启用性能剖析的情况下运行应用,则服务名称由您或运行时环境指定。如需了解服务名称,请参阅剖析应用的相应指南:

性能剖析类型

如需选择要直观呈现的性能剖析数据的类型,请点击性能剖析文件类型菜单,然后进行选择。

性能剖析类型 Go Java Node.js Python
CPU 时间
分配的堆
争用
线程
实际用时

每种性能剖析文件类型捕获的信息种类各不相同:

  • CPU 时间:关于 CPU 使用情况的信息
  • :收集性能剖析文件时在程序的堆中分配的内存的相关信息。
  • 分配的堆:在程序的堆中分配的总内存的相关信息,包括已释放且不再使用的内存。
  • 争用:关于互斥锁使用情况的信息。
  • 线程:关于线程使用情况的信息。
  • 实际用时:关于总运行时间的信息。

区域

如需将分析限制为在特定 Compute Engine 地区 中运行的服务实例,请点击地区菜单,然后选择一个地区。

此字段的默认设置为所有地区

版本

如需将分析范围限制为指定服务的特定版本,请点击版本菜单,然后选择感兴趣的版本。

服务版本是在启用性能剖析的情况下运行应用时您或运行时环境可以指定的可选值。如需详细了解服务版本,请参阅 GoJavaNode.jsPython

此字段的默认设置为所有版本

权重

若要在火焰图中仅显示指标耗用量处于选定峰值耗用量百分比范围内期间所捕获的性能剖析文件数据,请使用权重菜单。示例权重菜单如下所示:

      All (9.98 s - 10.08 s), 54 profiles
      Top 50% (10.03 s - 10.08 s), 22 profiles
      Top 25% (10.06 s - 10.08 s), 11 profiles
      Top 10% (10.07 s - 10.08 s), 3 profiles
      Top 5% (10.08 s - 10.08 s), 3 profiles
      Top 1% (10.08 s - 10.08 s), 3 profiles

权重菜单中的大多数行以 Top 开头,后跟百分比。例如,Top 5% 表示只有在指标耗用量不高于 5% 期间收集的性能剖析文件可用于分析。括号中的两个值列出了相应的指标耗用范围。最后一个值是在此范围内收集的性能剖析文件数。 对于 Top 5% 行,收集了 3 个性能剖析文件。

第一行是权重字段的默认设置。All 一词表示收集的所有性能剖析文件(等同于所收集的性能剖析文件的 100%)均可用于分析。

以下屏幕截图显示的是已过滤权重的图:

按权重过滤的火焰图。

此字段的默认设置为所有性能剖析文件。

比较对象

如需创建一个火焰图以比较两个在某一用户定义特性方面存在差异的性能剖析文件,请点击比较对象菜单,然后选择该特性。例如,您可以按地区或版本比较性能剖析文件。所比较的两个性能剖析文件必须具有相同的性能剖析文件类型,并且用于同一服务。

如需了解详情,请参阅比较性能剖析文件

此字段的默认设置为

后续步骤