使用 Visual Studio 连接服务添加 Application Insights

使用 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 添加为应用程序的连接服务:

  1. 在 Visual Studio 中打开支持与 Application Insights 连接的项目。 有关项目示例,请参阅 先决条件

  2. 添加 Application Insights 连接服务。 有多种方法可以启动该过程,例如:

    • 选择 “项目>管理连接服务>”添加服务依赖项>Azure Application Insights

    • 解决方案资源管理器中,右键单击项目的 “连接服务 ”节点,然后选择“ 添加>Azure Application Insights”。

  3. “连接服务服务>依赖项 ”部分中,选择“ 添加” (加号):

    显示“添加服务依赖项”屏幕的屏幕截图。

  4. 此时会打开 “添加依赖项 ”屏幕。 有两个选项用于连接:使用本地模拟器或访问 Azure 中的实时服务。 若要降低成本并简化早期开发,可以从本地模拟器开始。 稍后,可以通过重复此过程中的步骤迁移到实时服务。

    显示“添加 Azure Application Insights”屏幕的屏幕截图。

    1. 对于本练习,请选择 Azure Application Insights 以访问 Azure 中的实时服务。

    2. 根据需要登录到 Azure 帐户。 如果没有 Azure 帐户,可以注册 免费试用版

  5. “配置 Azure Application Insights - 选择服务依赖项 ”屏幕中,选择是对连接使用现有组件还是新组件:

    “连接到现有 Application Insights 组件”界面的屏幕截图。

    • 现有组件:若要使用现有的 Application Insights 组件,请选择列表中的组件,然后选择“ 下一步”。 继续执行 步骤 6 并配置连接设置。

    • 新组件:若要为连接创建新组件,请执行以下命令:

      显示“新建 Azure App Insights 组件”屏幕的屏幕截图,其中突出显示了现有组件列表和创建新组件的选项。

      1. 选择“ 创建新的 Application Insights 组件”。

      2. Application Insights - 创建新 屏幕中,确认字段值,根据需要进行调整,然后选择“ 创建”。

      3. “配置 Azure Application Insights - 选择服务依赖项”屏幕将刷新,新组件将显示在列表中。 选择新组件,然后选择“ 下一步”。

  6. “配置 Azure Application Insights - 提供连接字符串名称 ”屏幕中,检查连接设置:

    显示“提供连接字符串名称”屏幕的屏幕截图。

    1. 接受默认连接值,或输入首选 连接字符串检测密钥名称

    2. 选择是否要将连接字符串存储在本地机密文件中,然后选择“ 下一步”。

    谨慎

    为了提高安全性,在 Visual Studio 2022 17.12 及更高版本中,Visual Studio 仅创建连接设置 的名称 。 在早期版本中,Visual Studio 将创建连接字符串。 存储在本地文件系统中的连接字符串可能会导致安全风险(如果无意中公开)。

  7. “更改摘要”屏幕显示项目的计划内修改。 这些更改包括对项目代码和属性、NuGet 包引用、应用程序机密和 appsettings.json 文件的更新。

    显示“更改摘要”屏幕的屏幕截图,用于在早期版本的 Visual Studio 中为应用程序创建连接。

    验证项目更改,然后选择“ 完成 ”以完成该过程。

    显示一条消息,指示连接成功。 选择 关闭 关闭窗口。

  8. 在解决方案资源管理器中,双击项目的 “连接服务 ”节点以打开 “连接服务 ”选项卡。新连接显示在 “服务依赖项 ”部分下:

    显示 Visual Studio 早期版本中项目的“服务依赖项”部分中列出的新连接的屏幕截图。

使用已连接的服务连接到 Application Insights

按照以下步骤将 Application Insights 添加为应用程序的连接服务:

  1. 在 Visual Studio 中打开支持与 Application Insights 连接的项目。 有关项目示例,请参阅 先决条件

    注意

    对于 .NET Framework 项目,Visual Studio 中的 连接服务 UI 因版本而异。 若要查看差异,请将此页面的当前视图与 同一页面的 Visual Studio 2019 版本进行比较。

  2. 添加 Application Insights 连接服务。 有多种方法可以启动该过程,例如:

    • 选择 “项目>连接服务>添加>Azure Application Insights”。

    • 选择 Project>Application Insights>配置 Application Insights

    • 解决方案资源管理器中,右键单击项目的 “连接服务 ”节点,然后选择“ 添加>Azure Application Insights”。

  3. 此时会打开 “连接到依赖项 ”屏幕。 有两个选项用于连接:使用本地模拟器或访问 Azure 中的实时服务。 若要降低成本并简化早期开发,可以从本地模拟器开始。 稍后,可以通过重复此过程中的步骤迁移到实时服务。 按照列出的步骤选择连接首选项并添加连接。

    连接类型 DESCRIPTION 连接过程
    Application Insights SDK (本地) 使用本地模拟器,而不是连接到在 Azure 中运行的实例。
    1. 选择该选项,然后选择“ 下一步”。
    2. 继续执行 步骤 6 并查看计划更改的摘要。
    Azure Application Insights 连接到在 Azure 中运行的实时 Application Insights 服务。
    1. 根据需要登录到 Azure 帐户。 如果没有 Azure 帐户,可以注册 免费试用版
    2. 继续执行此过程中的下一步。

    显示将应用程序连接到 Application Insights 的两个选项的屏幕截图。

  4. “连接到 Azure Application Insights” - 选择服务依赖项界面中,选择使用现有组件还是新组件进行连接:

    显示“连接到 Azure Application Insights 组件”界面的屏幕截图,在此您选择要添加到应用程序中的服务依赖项。

    • 现有组件:若要使用现有的 Application Insights 组件,请选择列表中的组件,然后选择“ 下一步”。 继续执行 步骤 5 并配置连接设置。

    • 新组件:若要为连接创建新组件,请执行以下命令:

      1. 选择 “+ 新建”。

      2. Application Insights - 创建新 屏幕中,确认字段值,根据需要进行调整,然后选择“ 创建”。

        显示 Application Insights - 创建新组件屏幕的屏幕截图。

      3. “连接到 Azure Application Insights - ”选择服务依赖项屏幕将刷新,新组件将显示在列表中。 选择新组件,然后选择“ 下一步”。

      4. “连接到 Azure Application Insights - 提供连接配置” 页面中,检查连接设置。 接受默认值,或输入首选连接设置名称和检测密钥

        “连接到 Azure Application Insights - 配置连接设置”屏幕截图。

      注意

      为了提高安全性,在 Visual Studio 2022 17.12 及更高版本中,Visual Studio 仅创建连接设置 的名称 。 在早期版本中,Visual Studio 将创建连接字符串。 存储在本地文件系统中的连接字符串可能会导致安全风险(如果无意中公开)。

  5. 在“ 提供连接配置设置” 屏幕中,选择左下角 的其他设置

    连接到 Azure Application Insights - 自定义连接信息的存储方式屏幕打开。 选择是否要将连接字符串存储在本地机密文件中,然后选择“ 下一步” :

    屏幕截图显示连接到 Azure Application Insights - 自定义连接信息的存储方式屏幕打开。

  6. “更改摘要”屏幕显示项目的计划内修改。

    • 对于 Azure Application Insights 连接,这些更改包括对项目代码和属性、NuGet 包引用、应用程序机密和 appsettings.json 文件的更新。

    • 对于 Application Insights SDK(本地) 连接,项目更改包括为本地模拟器添加的 NuGet 包引用和连接代码。

    应用创建连接所需的“更改摘要”屏幕截图。

    验证项目更改,然后选择“ 完成 ”以完成该过程。

    显示一条消息,指示连接成功。 选择 关闭 关闭窗口。

  7. 在解决方案资源管理器中,双击项目的 “连接服务 ”节点以打开 “连接服务 ”选项卡。新连接显示在 “服务依赖项 ”部分下:

    显示项目“服务依赖项”部分中列出的新连接的屏幕截图。

    • 若要查看依赖项的可用作,请选择项的 “更多选项 ”(...)。 当依赖项未连接时,会看到 “连接 ”选项。 如果选择此选项,“ 连接到依赖项 ”屏幕将重新打开,可在其中更改依赖项配置并重新建立连接。

    • 还可以选择“连接服务”选项卡顶部的“更多选项”,以便启动本地依赖项、更改设置等。

  8. 在解决方案资源管理器中,找到并打开包含项目的启动代码 的Program.cs 文件。 请注意以下语句,该语句已添加以支持依赖项连接:

    // Add services to the container
    builder.Services.AddApplicationInsightsTelemetry();