通过使用 .NET 的 Application Insights Profiler,可以跟踪你的 live ASP.NET Core web 应用中每个方法的耗时。 本文重点介绍了托管在 Linux 中的 Web 应用。 还可以使用 Windows 和 Mac 开发环境进行试验。
在本文中,您可以:
- 在本地计算机上设置在 Linux 上托管的 ASP.NET Core Web 应用程序。
- 使用 Azure 门户创建应用服务。
- 使用本地 Git 将本地 ASP.NET Core项目部署到Azure。
- 将探查器添加到 ASP.NET Core Web 应用程序。
注释
查看对经典 API SDK 支持策略的 Application Insights SDK 支持指南。
注意
对于新应用程序,请使用 Azure Monitor OpenTelemetry Distro。 它提供与 Application Insights SDK 类似的体验和可比功能。 若要迁移到基于 OpenTelemetry 的产品/服务,请查看 迁移指南。
先决条件
- 安装 latest .NET Core SDK。
- 根据位于入门:安装 Git 的说明安装 Git。
- 查看 ASP.NET Core Web API 的 Azure Monitor Profiler 示例 以了解详情。
在本地设置项目
在计算机上打开命令提示符窗口。
创建 ASP.NET Core MVC Web 应用程序:
dotnet new mvc -n LinuxProfilerTest将工作目录切换到项目的根文件夹。
添加 NuGet 包以便收集分析器的跟踪数据:
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore --prerelease dotnet add package Azure.Monitor.OpenTelemetry.Profiler --prerelease
启用.NET探查器
在您首选的代码编辑器中,验证是否已将 Azure Monitor OpenTelemetry Profiler 的这两个包添加到 .NET 代码的指定位置
Program.cs。 添加自定义探查器设置(如果适用)。在项目的
.csproj文件中,验证是否已添加以下行:<ItemGroup> <PackageReference Include="Azure.Monitor.OpenTelemetry.AspNetCore" Version="[1.*-*, 2.0.0)" /> <PackageReference Include="Azure.Monitor.OpenTelemetry.Profiler" Version="[1.*-*, 2.0.0)" /> </ItemGroup>在你的文件
Program.cs中,验证是否已添加以下行:using Azure.Monitor.OpenTelemetry.AspNetCore; using Azure.Monitor.OpenTelemetry.Profiler; /// builder.Services.AddOpenTelemetry() .UseAzureMonitor() // Enable Azure Monitor OpenTelemetry distro for ASP.NET Core .AddAzureMonitorProfiler(); // Add Azure Monitor Profiler保存并提交对本地存储库的更改:
git init git add . git commit -m "first commit"
创建用于托管项目的 Linux Web 应用
在 Azure 门户中,搜索并选择 App Services,然后选择 create>Web App。
使用 Linux 上的应用服务 创建 Web 应用环境。
转到新的 Web 应用资源。 在左侧菜单中,选择 “部署>部署中心”,然后选择 “FTPS 凭据 ”以创建部署凭据。 记下你的凭据以供稍后使用。
选择“保存”。
选择“设置”选项卡。
若要在 Web 应用中设置本地 Git 存储库,请选择 “源”,然后选择“ 本地 Git”。
选择“保存”以使用 Git Clone URI 创建 Git 存储库。
部署项目
可以通过多种方式将代码部署到Azure 应用服务。 最简单的方法是使用本地 Git 进行部署。 有关详细信息,请参阅 使用本地 Git 部署到 Azure 应用服务。
在命令提示符窗口中,浏览到项目的根文件夹。 添加 Git 远程存储库以指向应用服务上的存储库:
git remote add azure https://<username>@<app_name>.scm.chinacloudsites.cn:443/<app_name>.git对于此值,请转到 Web 应用的 “概述 ”页。 复制 Git 克隆 URL。
通过将更改推送到Azure来部署项目:
git push azure main
添加 Application Insights 来监视 Web 应用
可以在创建应用服务时启用“Application Insights”,它会自动设置连接字符串。
从 Application Insights 资源中复制并粘贴“连接字符串”来监视您的 Web 应用。