使用 App Insight/ASP.NET Core Web API 的堆栈跟踪进行 Perfview

问题描述 投票:0回答:1

我对性能总体来说是新手,一直在学习 Perfview。

我很好奇如何使用 PerfView 来测试托管在 ASP.NET Core Web API 上的 API 的性能?

我想知道是否可以使用分析器来获取 App Insight 上的堆栈跟踪,然后让它读取其中的信息以深入分析并解决任何性能问题。

或者访问托管它的实际服务器本身并运行 API 端点是否更好?

azure asp.net-core-webapi performance-testing etw perfview
1个回答
0
投票

要分析 ASP .NET Core Web API 的性能,请使用 PerfView。它提供了有关应用程序行为的宝贵见解,并帮助识别性能瓶颈。

  • 启动 PerfView 并开始性能分析会话。您可以通过从主菜单中选择“收集”并根据场景选择适当的分析模式来完成此操作。为了分析 ASP .NET Core Web API,您可能希望首先使用“CPU 采样”模式来大致了解应用程序将时间花在哪里。

enter image description here

数据采集:

  • 打开Perfview

  • 前往收集并选择收集选项,如下所示:

  • 展开高级选项

  • 启用 Thread TimeIIS 提供程序。 (这将帮助我们在故障排除时提供一些附加信息)注意:如果应用程序托管在 IIS 上,则需要 IIS 提供程序。否则你可以跳过它。仅当安装了 IIS Tracing 功能时才能使用此提供程序。

状态: enter image description here

我想知道是否可以使用分析器来获取 App Insight 上的堆栈跟踪,并让它读取其中的信息以深入分析并解决任何性能问题。

  • 关于使用 Application Insights 中的探查器来获取堆栈跟踪的问题,虽然 Application Insights 提供了有价值的遥测数据和对应用程序行为的见解,但 PerfView 在较低级别上运行并直接分析计算机上应用程序的性能它正在继续运行。虽然您当然可以结合使用这两种工具,但 PerfView 的重点更多是系统级性能分析。

结论:

使用 PerfView 分析 ASP .NET Core Web API 的性能可以补充 Application Insights 提供的见解,并帮助您有效地诊断和优化性能问题。

© www.soinside.com 2019 - 2024. All rights reserved.