.NET 的 Application Insights Profiler 可采集正在运行的应用的详细性能跟踪数据。 它记录在应用处理实时请求时运行的各个方法所需的时间。 使用这些跟踪来确定增加响应时间的慢代码路径。 可以查明并解决生产中的性能问题。
在Azure门户中的“.NET探查器设置”窗格中,可以按需启动分析会话、配置自动运行探查器的触发器,以及查看最近的分析会话。
若要打开 .NET Profiler 设置窗格,请在 Application Insights 页的左侧菜单中选择 “性能 ”。
查看跨 Azure 资源的 .NET 分析器跟踪
通过以下两种方法,查看跨 Azure 资源的 .NET Profiler 跟踪:
在 Profiler 页面上,配置并查看 .NET 探查器。 “用于 .NET 的 Application Insights Profiler”页包含以下功能。
| 功能 / 特点 | 说明 |
|---|---|
| 立即分析 | 启动链接到此 Application Insights 实例的所有应用的分析会话。 |
| 触发器 | 配置导致 Profiler 运行的触发器。 |
| 最新的分析会话 | 显示有关过去的分析会话的信息,可以使用页面顶部的筛选器进行排序。 |
立即创建档案
选择“立即分析”,以按需启动性能分析会话。 单击此链接后,所有将数据发送到此 Application Insights 实例的 Profiler 代理程序都将开始收集性能分析数据。 5 到 10 分钟后,分析会话将显示在列表中。
若要手动触发探查器会话,至少需要对 Application Insights 组件角色具有写入访问权限。 在大多数情况下,可自动获得写入访问权限。 如果遇到问题,则需要添加 Application Insights 组件参与者订阅范围角色。 有关详细信息,请参阅 Azure Monitor 中的角色、权限和安全性。
触发器设置
选择 “触发器 ”以打开 “触发器设置”。 可以修改 CPU、 内存和 采样 触发器选项卡。
CPU 或内存触发器
设置一个触发器,以在 CPU 或内存使用百分比达到你设置的水平时开始分析。
| 设置 | 说明 |
|---|---|
| 开/关按钮 | 开启:启动分析器。 关闭:不启动探查器。 |
| CPU 阈值 | 使用此 CPU 百分比时,Profiler 将启动。 |
| 内存阈值 | 使用此内存百分比时,Profiler 将启动。 |
| 持续时间 | 设置分析器触发后运行的时长。 默认为 30 秒。 |
| 冷却时间 | 设置 Profiler 在触发后再次检查 CPU 或内存使用情况之前的等待时间。 |
采样触发器
与 CPU 或内存触发器不同,采样触发器不会响应事件。 相反,它会随机触发以获取应用性能的真正随机样本。 您可以:
- 关闭此触发器以禁用随机采样。
- 设置探查频率和探查会话的持续时间。
| 设置 | 说明 |
|---|---|
| 开/关按钮 | 开启:启动分析器。 关闭:不启动探查器。 |
| 采样速率 | 探查器运行的频率。 对生产环境使用 Normal 设置。 |
| 持续时间 | 设置分析器触发后运行的时长。 默认为 30 秒。 |
采样率设置有三个选项:
- 在正常设置下,系统有 5% 的时间会收集数据,也就是大约每小时 3 分钟。
- “高”设置在 50% 的时间上使用来记录。
- “最大”设置配置时间为 75%。
最近的性能分析会话
Profiler 页面的此部分显示最近的分析会话信息。 性能分析会话是指 Profiler 代理对托管您的应用的其中一台主机进行性能分析所用的时间。 选择其中一行可从会话中打开配置文件。 对于每个会话,你将看到以下设置:
| 设置 | 说明 |
|---|---|
| 由...触发 | 会话的启动方式:通过触发器、Profile now 或默认采样。 |
| 应用程序名称 | 已分析的应用名称。 |
| 计算机实例 | 运行 Profiler 代理的计算机的名称。 |
| 时间戳 | 分析器捕获分析数据的时间。 |
| CPU 利用率 | 探查器在运行时使用的 CPU 百分比。 |
| 内存百分比 | 探查器在运行时使用的内存百分比。 |