什么是 Amazon CloudWatch Application Insights for .NET and SQL Server? - Amazon CloudWatch
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

什么是 Amazon CloudWatch Application Insights for .NET and SQL Server?

适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 可帮助您监控使用 Amazon EC2 实例以及其他 AWS 应用程序资源的 .NET 和 SQL Server 应用程序。它可在应用程序资源和技术堆栈(例如,Microsoft SQL Server 数据库、Web (IIS) 和应用程序服务器、操作系统、负载均衡器和队列)中识别和设置关键指标、日志和警报。它会持续监控指标和日志,以检测异常情况和错误并将它们关联起来。在检测到错误和异常情况时,Application Insights 生成 CloudWatch 事件,您可以使用这些事件来设置通知或执行操作。为了帮助进行故障排除,它会为检测到的问题创建自动化控制面板,其中包含关联的指标异常情况和日志错误,以及指出潜在根本原因的其他信息。自动化控制面板可帮助您快速采取修复措施,以保持应用程序正常运行,并防止对应用程序的最终用户造成影响。此外,它还会创建 OpsItems,以便您可以使用 AWS Systems Manager OpsCenter 解决问题。

功能

Application Insights 提供以下功能。

自动为应用程序资源设置监视器

CloudWatch Application Insights for .NET and SQL Server 减少了为应用程序设置监控所需的时间。它扫描应用程序资源,提供可自定义的建议指标和日志列表,并在 CloudWatch 上设置它们以提供所需的应用程序资源(例如 Amazon EC2 和 Elastic Load Balancer (ELB))信息,从而缩短了为应用程序设置监控所需的时间。它还会为监控的指标设置动态警报。将根据前两周检测到的异常情况自动更新警报。

问题检测和通知

CloudWatch Application Insights for .NET and SQL Server 检测应用程序出现潜在问题的迹象,例如指标异常情况和日志错误。它关联这些观察结果以找出应用程序的潜在问题。然后,它生成 CloudWatch 事件,可以配置这些事件以接收通知或执行操作。这样,您无需为指标或日志错误创建单独的警报。

故障排除

CloudWatch Application Insights for .NET and SQL Server 为检测到的问题创建 CloudWatch 自动控制面板。这些控制面板显示有关问题的详细信息(包括关联的指标异常情况和日志错误)以帮助您进行故障排除。它们还提供额外的信息,以指出异常情况和错误的潜在根本原因。

概念

要了解 Application Insights 如何监控应用程序,以下概念非常重要。

组件

对组成应用程序的类似资源进行自动分组、单独分组或自定义分组。我们建议将类似资源分组到自定义组件中,以更好地进行监控。

观察

为应用程序或应用程序资源检测到的单个事件(指标异常情况、日志错误或异常)。

问题

关联、分类和分组相关的观察结果以检测问题。

有关CloudWatch Application Insights for .NET and SQL Server 其他关键概念的定义,请参阅 Amazon CloudWatch 概念

定价

CloudWatch Application Insights for .NET and SQL Server 使用 CloudWatch 指标和日志为选定的应用程序资源设置建议的指标和日志,并使用 CloudWatch 事件获取有关检测到的问题的通知。将根据 CloudWatch 定价对您的 AWS 账户收取这些功能的费用。对于检测到的问题,它创建 CloudWatch 事件自动控制面板。不会向您收取设置帮助、监控数据分析或问题检测费用。

以下服务可与CloudWatch Application Insights for .NET and SQL Server 一起使用:

  • Amazon CloudWatch 在系统范围内提供资源使用率、应用程序性能和运行状况信息。它收集并跟踪指标,发送警报通知,根据您定义的规则自动更新监控的资源,并允支持您监控自定义指标。CloudWatch Application Insights for .NET and SQL Server 是通过 CloudWatch 启动的,具体而言,是在 CloudWatch 默认运行控制面板中启动的。有关更多信息,请参阅 Amazon CloudWatch 用户指南

  • AWS 资源组帮助您划分组成应用程序的资源。通过使用资源组,您可以同时管理和自动完成针对大量资源的任务。只能为单个应用程序注册一个资源组。有关更多信息,请参阅 AWS 资源组用户指南

  • IAM 是一种 Web 服务,可以帮助您安全地控制用户对 AWS 资源的访问。可以通过 IAM 控制哪些用户可以使用您的 AWS 资源(身份验证),以及控制他们可以使用的资源和使用资源的方式(授权)。有关更多信息,请参阅 Amazon CloudWatch 的身份验证和访问控制

  • Amazon EC2 在 AWS 云中提供可扩展的计算容量。您可以使用 Amazon EC2 启动所需数量的虚拟服务器,配置安全性和联网以及管理存储。您可以扩展或缩减以处理需求变化或使用高峰,从而减少预测流量的需求。有关更多信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南适用于 Windows 实例的 Amazon EC2 指南

  • Elastic Load Balancing 在多个可用区中的多个目标(如 EC2 实例、容器和 IP 地址)之间分配传入的应用程序或网络流量。有关更多信息,请参阅 Elastic Load Balancing 用户指南

  • Amazon EC2 Auto Scaling 帮助确保您具有正确数量的 EC2 实例以处理应用程序负载。有关更多信息,请参阅 Amazon EC2 Auto Scaling 用户指南

  • Amazon SQS 提供了一个安全、持久且可用的托管队列,以允许您集成和分离分布式软件系统和组件。有关更多信息,请参阅 Amazon SQS 用户指南

  • AWS Systems Manager OpsCenter 跨服务聚合并标准化 OpsItem,同时提供关于每个 OpsItem、相关 OpsItem 和相关资源的上下文调查数据。OpsCenter 还提供 Systems Manager Automation 文档 (runbook),让您可以快速解决问题。您可以为每个 OpsItem 指定可搜索的自定义数据。您还可以按状态和源查看自动生成的 OpsItem 相关摘要报告。有关更多信息,请参阅 AWS Systems Manager 用户指南

  • 您可以通过 AWS Lambda 构建由事件触发的函数组成的无服务器应用程序,并使用 CodePipeline 和 AWS CodeBuild 自动部署这些应用程序。有关更多信息,请参阅 AWS Lambda 应用程序

支持的应用程序组件

CloudWatch Application Insights for .NET and SQL Server 扫描您的资源组(此处为 .NET 应用程序使用的一组资源)以标识应用程序组件。组件可能采用单独分组、自动分组(例如 Auto Scaling 组中的实例或负载均衡器后面的实例)或自定义分组(将各个 EC2 实例分组在一起)。CloudWatch Application Insights for .NET and SQL Server 支持以下组件:

  • Amazon EC2

  • Amazon RDS

  • Elastic Load Balancing:Application Load Balancer 和 Classic Load Balancer(指定和配置这些负载均衡器的所有目标实例)。

  • Amazon EC2 Auto Scaling 组:AWS Auto Scaling(为所有目标实例动态配置 Auto Scaling 组;如果应用程序进行扩展,CloudWatch Application Insights for .NET and SQL Server 将自动配置新实例)。基于 CloudFormation 的资源组不支持 Auto Scaling 组。

  • AWS Lambda

  • Amazon Simple Queue Service (Amazon SQS)

适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 忽略任何其他组件类型资源。如果在 Application Insights 应用程序中未显示某种支持的组件类型,则您拥有并由 Application Insights 监控的其他应用程序可能已注册和管理该组件。

支持的技术堆栈

CloudWatch Application Insights for .NET and SQL Server 支持:

  • 前端:Microsoft Internet 信息服务 (IIS) Web 服务器

  • 工作层:.NET Framework

  • 数据库:在 RDS 或 EC2 上运行的 Microsoft SQL Server

如果上面列出的技术堆栈都不适用于您的应用程序资源,您可以在 Manage monitoring (管理监控) 页面上,从应用程序层下拉菜单中选择 Custom (自定义) 来监控应用程序堆栈。