Amazon CloudWatch
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

查看和排查适用于 .NET 和 SQL Server 的 Amazon CloudWatch Application Insights 检测到的问题

在 CloudWatch 控制台的默认概述页面中的适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 小部件下面列出了影响 .NET 和 SQL Server 应用程序的问题的概述信息。有关更多信息,请参阅开始使用适用于 .NET 和 SQL Server 的 Amazon CloudWatch Application Insights

适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 小部件显示以下内容:

  • 检测到的问题的严重性

  • 问题的摘要

  • 问题的可能根本原因

  • 问题的开始时间

  • 问题的解决状态

  • 受影响的资源组

要深入了解特定问题的详细信息,请在问题摘要下面选择问题描述。详细控制面板显示问题信息以及相关的指标异常情况和日志错误片段。从此处,您可以选择该信息是否有用以提供相关性反馈。

如果检测到未配置的新资源,问题摘要描述将转到编辑配置向导以配置新资源。如果需要,您可以选择详细控制面板右上角的查看/编辑配置以查看或编辑资源组配置。

要返回到概述,请选择返回概述,它位于适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 详细控制面板标题旁边。

为检测到的问题提供的相关信息

适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 提供有关检测到的问题的以下信息:

  • 问题的简短摘要

  • 问题的开始时间和日期

  • 问题严重性:高/中/低

  • 检测到的问题的状态:正在进行/已解决

  • 信息:自动生成有关检测到的问题和可能的根本原因的信息

  • 信息反馈:您为有关适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 生成的信息是否有用提供的反馈

  • 相关的观察结果:与各种应用程序组件中的问题相关的指标异常情况和相关日志错误片段的详细视图

反馈

您可以指定为检测到的问题自动生成的信息是否有用以提供反馈。将使用您对这些信息的反馈以及应用程序诊断(指标异常情况和日志异常情况)改进将来对类似问题的检测。

配置错误

适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 使用您的配置为组件创建监控遥测数据。在 Application Insights 检测到您的账户或配置存在问题时,将在备注字段中提供有关如何解决应用程序的配置问题的信息。

下表显示了特定备注的建议解决方案。

备注 建议的解决方案 附加说明

已达到警报配额。

默认情况下,每个 AWS 账户在每个 AWS 区域中可以具有 5,000 个 CloudWatch 警报。请参阅 CloudWatch 限制。在受到该限制的制约时,适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 无法创建监控应用程序所需的所有警报。要解决该问题,请提高账户的 CloudWatch 警报限制。

不适用

已达到 CloudFormation 的配额。

Application Insights 为每个应用程序创建一个 CloudFormation 堆栈,以管理所有应用程序组件的 CloudWatch 代理安装和配置。默认情况下,每个 AWS 账户可以具有 200 个堆栈。请参阅 AWS CloudFormation 限制。要解决该问题,请提高 CloudFormation 堆栈的限制。

不适用

在以下实例上没有 SSM 实例角色。

要使 Application Insights 能够在应用程序实例上安装和配置 CloudWatch 代理,必须将 AmazonEC2RoleforSSM 和 CloudWatchAgentServerPolicy 策略附加到该实例角色。

ApplicationInsights 调用 SSM DescribeInstanceInformation API 以获取具有 SSM 权限的实例列表。在将该角色附加到实例后,SSM 需要一段时间以将实例包含在 DescribeInstanceInformation 结果中。在 SSM 将实例包含在结果中之前,应用程序仍然存在 NO_SSM_INSTANCE_ROLE 错误。

新组件可能需要进行配置。

Application Insights 检测到在应用程序资源组中具有新组件。要解决该问题,请相应地配置新组件。

不适用

为检测到的问题设置通知和操作

对于添加到适用于 .NET 和 SQL Server 的 Application Insights 的每个应用程序,将为以下事件发布 CloudWatch 事件:

  • 问题创建。 在适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 检测到新问题时发出。

    • 详细信息类型:“检测到 Application Insights 问题”

    • 详细信息:

      • problemId:检测到的问题 ID。

      • region:创建问题的 AWS 区域。

      • resourceGroupName:检测到问题的注册应用程序的资源组。

      • status:问题的状态。

      • severity:问题的严重性。

      • problemUrl:问题的控制台 URL。

  • 问题更新。 使用新观察结果更新问题或更新现有观察结果并随后更新问题时发出;更新包括问题解决方案或处理措施。

    • 详细信息类型:“已更新 Application Insights 问题”

    • 详细信息:

      • problemId:创建的问题 ID。

      • region:创建问题的 AWS 区域。

      • resourceGroupName:检测到问题的注册应用程序的资源组。

      • status:问题的状态。

      • severity:问题的严重性。

      • problemUrl:问题的控制台 URL。

示例:如何接收应用程序生成的问题事件的通知

要接收适用于 .NET 和 SQL Server 的 Application Insights 生成的问题事件的通知,请为 Application Insights 创建一个规则以接收特定应用程序的问题。

aws events put-rule \ --name cwe-test \ --event-pattern \ '{ "source": ["aws.applicationinsights"], "detail-type": ["Application Insights Problem Detected"], "detail": { "resourceGroupName": ["<RESOURCE_GROUP_NAME>"] } }'

然后,添加应接收事件的正确 CloudWatch 事件目标。

aws events put-targets \ --rule cwe-test \ --targets Id=1,Arn=<TARGET_ARN>

注意

您可以从 CloudWatch 控制台的左侧导航窗格中的事件下面选择规则以创建一个规则。接下来,选择创建规则 > 事件模式,然后从生成事件模式以按服务匹配事件下拉列表中选择自定义事件模式

通过 AWS Systems Manager 执行的操作。 适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 提供与 Systems Manager OpsCenter 的内置集成。如果您选择将此集成用于您的应用程序,则会在 OpsCenter 控制台上为该应用程序检测到的每个问题创建一个 OpsItem。在 OpsCenter 控制台中,您可以查看 CloudWatch Application Insights 检测到的问题的摘要信息,并选择一个 Systems Manager Automation 运行手册来采取补救措施,或者进一步识别导致应用程序中出现资源问题的 Windows 进程。