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

什么是适用于 .NET 和 SQL Server 的 Amazon CloudWatch Application Insights?

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

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

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

问题检测和通知

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

更快的故障排除

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

概念

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

组件

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

观察

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

问题

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

有关适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 的其他重要概念的定义,请参阅 Amazon CloudWatch 概念

定价

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

以下服务与适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 一起使用:

  • Amazon CloudWatch 在系统范围内提供资源使用率、应用程序性能和运行状况信息。它收集并跟踪指标,发送警报通知,根据您定义的规则自动更新监控的资源,并允许您监控自己的自定义指标。适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 是通过 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 用户指南

支持的应用程序组件

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

  • Amazon EC2

  • Amazon RDS

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

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

  • Amazon Simple Queue Service (Amazon SQS)

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

支持的技术堆栈

适用于 .NET 和 SQL Server 的 CloudWatch Application Insights 支持:

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

  • 工作层:.NET Framework

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