如何使用 PerfInsights 诊断 CPU 或磁盘使用率过高的问题

原始产品版本: Azure
原始 KB 编号: 4021853

本文介绍如何使用 PerfInsights 诊断 Microsoft Azure 中的 CPU 或磁盘使用率过高问题。

使用 PerfInsights 收集日志数据

  1. 按照常规 PerfInsights 用户指南启动 PerfInsights,然后按照以下步骤操作:

    1. 输入Microsoft 支持部门请求编号。

    2. “选择故障排除方案 ”对话框中,选择“ 自定义配置”。

    3. 在“ 要执行的模块 ”对话框中,选择“ 性能诊断”。

    4. 单击"确定"以继续。

      “选择故障排除方案”对话框的屏幕截图,其中选择了“自定义配置”。

      “要执行的模块”对话框的屏幕截图,其中选择了“性能诊断”。

  2. 等待 PerfInsights 收集系统信息。 该作业完成后,将显示“ 启动性能诊断跟踪 ”窗口。 如果问题仍然存在,请单击“ 确定 ”以继续。

    “启动性能诊断跟踪”窗口的屏幕截图。

  3. 此时将显示 “停止所有跟踪” 窗口。 建议等待几分钟,让该工具捕获足够的数据来诊断。 然后,单击“确定”停止诊断。 最终诊断结果将包含在 CollectedData_<DateTime>.zip 文件中。

    “停止所有跟踪”窗口的屏幕截图。

分析诊断报告的性能问题

  1. 按照常规 PerfInsights 用户指南打开 PerfInsights 报告 html 文件。

    如果在“性能诊断”作业期间捕获了任何 CPU 或磁盘使用率较高的数据,则“发现结果”选项卡上会显示警告消息。这些消息包含指向“CPU 使用者”和“磁盘使用者排名靠前”选项卡的链接。

    PerfInsights 报表的屏幕截图。

  2. 可以使用“ CPU 使用者排名靠前 ”选项卡来确定 CPU 使用率过高的时间段,而排名靠前的进程显示 CPU 消耗量最大。 此选项卡包括以下信息:

    • StartTime 和 EndTime。 分析周期的开始时间和结束时间显示为 UTC 时间。 此外,还有一些关于如何收集和评估数据的注释。

    • CPU 使用率周期较高。 下表列出了在开始和结束时间之间出现的所有 CPU 使用率过高的情况。 例如,下表显示了 30% 以上的 CPU 使用率过高的一段时期。 ProcessorsHighCPUUsageBreakdown 列中的嵌套表显示每个逻辑处理器的使用情况。

      CPU 使用率过高表的屏幕截图。

    • 长时间运行的 CPU 使用者排名靠前。 此表显示哪些进程正在使用 CPU。 例如, iexplore.exe (4964) 在 CPU 使用率较高期间贡献了 39.05% 的 CPU 使用率。 如果顶级使用者是你自己的服务或程序,则必须使用更强大的探查器工具来进行深入分析。 如果排名靠前的使用者归第三方所有,你可能想要禁用或卸载该服务或程序,或者联系制造商获取客户支持。

      使用 CPU 的进程屏幕截图。

    • 最高峰值 CPU 使用者。 此表显示了使用率较高但长时间未消耗 CPU 的进程。

  3. 可以使用“ 排名靠前的磁盘使用者 ”选项卡来确定发生高物理磁盘使用率的时间段,以及显示磁盘消耗量最多的进程。 此选项卡包括以下信息:

    • StartTime 和 EndTime。 分析周期的开始时间和结束时间显示为 UTC 时间。 此外,还有一些关于如何收集和评估数据的注释。

    • 磁盘使用周期较高。 下表列出了在开始和结束时间之间发生的所有高磁盘使用率。 例如,在 StartTime 和 EndTime 之间的时间段内,PhysicalDisk3 的磁盘使用率较高。 DisksHighUsageBreakdown 列中的嵌套表显示每个物理磁盘的使用情况。

      高磁盘使用率表的屏幕截图。

    • 长时间运行的 CPU 使用者排名靠前。 此表显示哪些进程正在访问磁盘。 例如,diskspd.exe (5172) 颁发了 47,037 个磁盘 IO,其平均 IOPS 为 2,344。 如果主要使用者是你自己的服务或程序,则必须调查他们发出大量磁盘 IO 的原因。 如果顶级使用者归第三方所有,你可能想要禁用或卸载这些服务或程序,或联系制造商以获取客户支持。

      正在访问磁盘的进程屏幕截图。

    • 最高峰值 CPU 使用者。 此表显示了使用率较高但长时间未消耗 CPU 的进程。

联系我们寻求帮助

如果你有任何疑问或需要帮助,请创建支持请求联系 Azure 社区支持。 还可以向 Azure 反馈社区提交产品反馈。