从 Visual Studio 探查器中将 dotnet 计数器可视化

.NET 计数器工具允许你在 Visual Studio 探查器中随着时间将 dotnet 计数器可视化。

注意

.NET 计数器工具需要 Visual Studio 2019 版本 16.7 或更高版本,并面向 .NET Core 3.0+ 和 .NET 5+。

有关了解如何有效使用 .NET 计数器工具的其他信息,请参阅 案例研究:隔离性能问题

安装

  1. 在 Visual Studio 中打开性能探查器(Alt+F2 或“调试”->“性能探查器”)。

  2. 选择“.NET 计数器”复选框。

    已选中计数器工具。

  3. 单击“启动”按钮,运行该工具。

有关如何优化工具性能的详细信息,请参阅优化探查器设置

了解数据

当该工具最初收集数据时,你可以看到 dotnet 计数器的实时值。

.NET 计数器工具正在收集数据。

还可以通过选中计数器名称旁边的复选框来查看计数器的图形。 一次可显示多个计数器的图形。

完成应用的运行和数据收集后,就可以停止为获取更详细的报表而执行的数据收集。 为此,请按“停止收集”按钮。

加载报表后,你应可看到一个与下面所示类似的最终报表。

.NET 计数器工具报表。

该报表将显示以下值:

  • Min - 所选时间范围内该计数器的最小值。
  • Max - 所选时间范围内该计数器的最大值。
  • Average - 所选时间范围内该计数器的平均值。

通过右键单击列标题并选择一个标题,可以在表中筛选或添加列。

.NET 计数器工具列。

还可以通过选中计数器旁边的复选框来查看详细报表中的图形。 默认情况下,表中的数据表示所收集跟踪的整个持续时间的值。 若要将数据筛选到特定的时间范围,请单击并拖动图形。

.NET 计数器工具时间筛选。

该表将更新为图形中所选时间的相关值。 使用“清除选定内容”按钮,将所选时间范围重置为整个跟踪。

查看 .NET 计量计数器数据

从 Visual Studio 2022 版本 17.8 开始,.NET 计数器工具支持与 .NET Meter API 的集成,并添加了对检测选项的支持,例如 CounterObservableCounter

通过调用方报告更新Counter.Add,跟踪Counter随时间变化的值。 相比之下, ObservableCounter 调用 Counter方负责跟踪总值。 .NET 计数器工具报告总计的更改率。

有关详细信息,请参阅 “创建指标”。

查看 .NET 计量直方图数据

从 Visual Studio 2022 版本 17.12 预览版 2 开始,.NET 计数器工具支持 .NET Meter 直方图集成。

使用 .NET 计量直方图,可以识别和分析 .NET 直方图工具生成的直方图数据,这些数据是使用记录的 CreateHistogram。 使用直方图检测记录数据时,将可视化结果,从而明确表示数据分布。

实时直方图数据与计数器的其余部分一起显示在 Meter 实例名称下。

若要打开直方图,请选择计量实例的检测名称,如下所示。

.NET 计数器计量直方图数据。

在前面的示例中,该工具显示记录度量的第 50 位、第 90 位和第 95 百分位的数据。