使用 Visual Studio,可以使用 连接服务 功能将不同类型的服务和应用程序连接到 Application Insights。 此功能会将所有必需的引用和连接代码添加到项目,并相应地修改配置文件。 可以选择连接到在 Azure 中运行的实时 Application Insights 服务,或使用本地模拟器。
本文介绍如何使用 Connected Services 将 Application Insights 连接到应用程序。
先决条件
若要完成本文中的过程,必须满足以下先决条件:
安装有 Azure 工作负荷的 Visual Studio。 立即下载 Visual Studio。
实现与 Application Insights 支持的连接类型的项目,例如:
- .NET Framework 控制台应用
- ASP.NET 模型View-Controller (MVC) (.NET Framework)
- ASP.NET Core
- .NET Core(包括控制台应用、WPF、Windows 窗体、类库)
- Azure Functions
- 通用 Windows 平台应用
-
Azure 帐户。 如果没有 Azure 帐户,请激活你的 Visual Studio 订阅者 Azure 权益或注册免费试用版。
使用已连接的服务连接到 Application Insights
按照以下步骤将 Application Insights 添加为应用程序的连接服务:
在 Visual Studio 中打开支持与 Application Insights 连接的项目。 有关项目示例,请参阅 先决条件。
添加 Application Insights 连接服务。 有多种方法可以启动该过程,例如:
选择 “项目>管理连接服务>”添加服务依赖项>Azure Application Insights。
在 解决方案资源管理器中,右键单击项目的 “连接服务 ”节点,然后选择“ 添加>Azure Application Insights”。
在 “连接服务服务>依赖项 ”部分中,选择“ 添加” (加号):
此时会打开 “添加依赖项 ”屏幕。 有两个选项用于连接:使用本地模拟器或访问 Azure 中的实时服务。 若要降低成本并简化早期开发,可以从本地模拟器开始。 稍后,可以通过重复此过程中的步骤迁移到实时服务。
对于本练习,请选择 Azure Application Insights 以访问 Azure 中的实时服务。
根据需要登录到 Azure 帐户。 如果没有 Azure 帐户,可以注册 免费试用版。
在 “配置 Azure Application Insights - 选择服务依赖项 ”屏幕中,选择是对连接使用现有组件还是新组件:
现有组件:若要使用现有的 Application Insights 组件,请选择列表中的组件,然后选择“ 下一步”。 继续执行 步骤 6 并配置连接设置。
新组件:若要为连接创建新组件,请执行以下命令:
选择“ 创建新的 Application Insights 组件”。
在 Application Insights - 创建新 屏幕中,确认字段值,根据需要进行调整,然后选择“ 创建”。
“配置 Azure Application Insights - 选择服务依赖项”屏幕将刷新,新组件将显示在列表中。 选择新组件,然后选择“ 下一步”。
在 “配置 Azure Application Insights - 提供连接字符串名称 ”屏幕中,检查连接设置:
接受默认连接值,或输入首选 连接字符串 和 检测密钥名称。
选择是否要将连接字符串存储在本地机密文件中,然后选择“ 下一步”。
谨慎
为了提高安全性,在 Visual Studio 2022 17.12 及更高版本中,Visual Studio 仅创建连接设置 的名称 。 在早期版本中,Visual Studio 将创建连接字符串。 存储在本地文件系统中的连接字符串可能会导致安全风险(如果无意中公开)。
“更改摘要”屏幕显示项目的计划内修改。 这些更改包括对项目代码和属性、NuGet 包引用、应用程序机密和 appsettings.json 文件的更新。
验证项目更改,然后选择“ 完成 ”以完成该过程。
显示一条消息,指示连接成功。 选择 关闭 关闭窗口。
在解决方案资源管理器中,双击项目的 “连接服务 ”节点以打开 “连接服务 ”选项卡。新连接显示在 “服务依赖项 ”部分下:
使用已连接的服务连接到 Application Insights
按照以下步骤将 Application Insights 添加为应用程序的连接服务:
在 Visual Studio 中打开支持与 Application Insights 连接的项目。 有关项目示例,请参阅 先决条件。
注意
对于 .NET Framework 项目,Visual Studio 中的 连接服务 UI 因版本而异。 若要查看差异,请将此页面的当前视图与 同一页面的 Visual Studio 2019 版本进行比较。
添加 Application Insights 连接服务。 有多种方法可以启动该过程,例如:
选择 “项目>连接服务>添加>Azure Application Insights”。
选择 Project>Application Insights>配置 Application Insights。
在 解决方案资源管理器中,右键单击项目的 “连接服务 ”节点,然后选择“ 添加>Azure Application Insights”。
此时会打开 “连接到依赖项 ”屏幕。 有两个选项用于连接:使用本地模拟器或访问 Azure 中的实时服务。 若要降低成本并简化早期开发,可以从本地模拟器开始。 稍后,可以通过重复此过程中的步骤迁移到实时服务。 按照列出的步骤选择连接首选项并添加连接。
连接类型 DESCRIPTION 连接过程 Application Insights SDK (本地) 使用本地模拟器,而不是连接到在 Azure 中运行的实例。 - 选择该选项,然后选择“ 下一步”。
- 继续执行 步骤 6 并查看计划更改的摘要。
Azure Application Insights 连接到在 Azure 中运行的实时 Application Insights 服务。 - 根据需要登录到 Azure 帐户。 如果没有 Azure 帐户,可以注册 免费试用版。
- 继续执行此过程中的下一步。
在“连接到 Azure Application Insights” - 选择服务依赖项界面中,选择使用现有组件还是新组件进行连接:
现有组件:若要使用现有的 Application Insights 组件,请选择列表中的组件,然后选择“ 下一步”。 继续执行 步骤 5 并配置连接设置。
新组件:若要为连接创建新组件,请执行以下命令:
选择 “+ 新建”。
在 Application Insights - 创建新 屏幕中,确认字段值,根据需要进行调整,然后选择“ 创建”。
“连接到 Azure Application Insights - ”选择服务依赖项屏幕将刷新,新组件将显示在列表中。 选择新组件,然后选择“ 下一步”。
在 “连接到 Azure Application Insights - 提供连接配置” 页面中,检查连接设置。 接受默认值,或输入首选连接设置名称和检测密钥。
注意
为了提高安全性,在 Visual Studio 2022 17.12 及更高版本中,Visual Studio 仅创建连接设置 的名称 。 在早期版本中,Visual Studio 将创建连接字符串。 存储在本地文件系统中的连接字符串可能会导致安全风险(如果无意中公开)。
在“ 提供连接配置设置” 屏幕中,选择左下角 的其他设置 。
连接到 Azure Application Insights - 自定义连接信息的存储方式屏幕打开。 选择是否要将连接字符串存储在本地机密文件中,然后选择“ 下一步” :
“更改摘要”屏幕显示项目的计划内修改。
对于 Azure Application Insights 连接,这些更改包括对项目代码和属性、NuGet 包引用、应用程序机密和 appsettings.json 文件的更新。
对于 Application Insights SDK(本地) 连接,项目更改包括为本地模拟器添加的 NuGet 包引用和连接代码。
验证项目更改,然后选择“ 完成 ”以完成该过程。
显示一条消息,指示连接成功。 选择 关闭 关闭窗口。
在解决方案资源管理器中,双击项目的 “连接服务 ”节点以打开 “连接服务 ”选项卡。新连接显示在 “服务依赖项 ”部分下:
若要查看依赖项的可用作,请选择项的 “更多选项 ”(...)。 当依赖项未连接时,会看到 “连接 ”选项。 如果选择此选项,“ 连接到依赖项 ”屏幕将重新打开,可在其中更改依赖项配置并重新建立连接。
还可以选择“连接服务”选项卡顶部的“更多选项”,以便启动本地依赖项、更改设置等。
在解决方案资源管理器中,找到并打开包含项目的启动代码 的Program.cs 文件。 请注意以下语句,该语句已添加以支持依赖项连接:
// Add services to the container builder.Services.AddApplicationInsightsTelemetry();
相关内容
- 使用适用于 ASP.NET Core 应用程序的 Application Insights启用对应用的监视
- 为 ASP.NET 网站配置 Application Insights
- 详细了解 Azure Monitor 中的 Application Insights