概述
Amazon CloudWatch 提供可靠、可扩展且灵活的监测解决方案,您可在短短几分钟内开始使用。您不再需要设置、管理和扩展监控您的系统和基础设施了。
Amazon CloudWatch 可以让您以几乎实时的方式监控您的亚马逊云科技资源,包括 Amazon EC2 实例、Amazon EBS 卷、Elastic Load Balancer 和 Amazon RDS 数据库实例。该服务自动提供这些亚马逊云科技资源的 CPU 使用率、延迟和请求数等指标。您也可提供自己的日志或自定义应用程序和系统指标,如内存使用率、交易量或故障率;Amazon CloudWatch 也将对这些指标进行监控。
通过 Amazon CloudWatch,您可以获取精确到上一分钟的统计信息,还可以查看图表并为指标数据设置警报,帮助您排除故障、发现趋势并根据云环境的状态采取自动化的操作。您可通过 API、命令行工具、亚马逊云科技开发工具包和亚马逊云科技管理控制台使用 Amazon CloudWatch 功能。
页面主题
功能
全部打开自动监控 EC2 实例,无需额外安装软件:
- Amazon EC2 实例的基本监控:每 5 分钟7 个预选指标和 每 1 分钟 3 个状态检查指标,无附加费用。
- Amazon EC2 实例的详细监控:基本监控提供的所有指标(频率为 1 分钟),用于附加收费。开启了详细监控的实例允许依据 Amazon EC2 AMI ID 和实例类型进行数据聚合。
如果使用自动扩缩或 Elastic Load Balancing,Amazon CloudWatch 还会向您提供按自动扩缩组和 Elastic Load Balancer 汇总的 Amazon EC2 实例指标,无论您选择的是基本监控还是详细监控。监测数据将会保存两个星期,即使您的亚马逊云科技资源服务结束。这样就可以快速地回顾您感兴趣项目之前的指标。所有 Amazon EC2 实例都已自动启用基本监控,可通过亚马逊云科技管理控制台的 Amazon EC2 选项卡或 Amazon CloudWatch 选项卡或使用 Amazon CloudWatch API 来访问这些指标。
Amazon CloudWatch 可以自动监控弹性负载均衡器的请求数量和延迟等指标、Amazon EBS 卷的读/写延迟等指标、Amazon RDS 数据库实例的可用内存和可用存储空间等指标、Amazon SQS 队列的已发送和已接收消息数量等指标,以及 Amazon SNS 主题的已发布和已送达消息数量等指标。监控其他亚马逊云科技资源无需安装附加软件。
以下是所有支持的亚马逊云科技资源的列表:
计算与联网
无需额外安装任何软件。
- 自动扩缩组:每 1 分钟 7 个预选指标,可选,无附加费用。
- Elastic Load Balancer:每 1 分钟 13 个预选指标,无附加费用。
- Amazon Route 53 运行状况检查:每 1 分钟 1 个预选指标,无附加费用。
存储和内容分发
无需额外安装任何软件。
- Amazon EBS PIOPS(SSD)卷:每 1 分钟 10 个预选指标,无附加费用。
- Amazon EBS 通用型(SSD)卷:每 1 分钟 10 个预选指标,无附加费用。
- Amazon EBS 磁性介质卷:每 5 分钟 8 个预选指标,无附加费用。
- Amazon Storage Gateways:每 5 分钟 11 个预选网关指标和 5 个预选存储卷指标,无附加费用。
- Amazon CloudFront:6 个预选指标(频率为 1 分钟),免费使用。
数据库与分析
无需额外安装任何软件。
- Amazon DynamoDB 表:每 5 分钟 7 个预选指标,无附加费用。
- Amazon ElastiCache 节点:每 1 分钟 39 个预选指标,无附加费用。
- Amazon RDS 数据库实例:每 1 分钟 14 个预选指标,无附加费用。
- Amazon Elastic MapReduce 任务流:每 5 分钟 26 个预选指标,无附加费用。
- Amazon Redshift:每 1 分钟 16 个预选指标,无附加费用。
其他
无需额外安装任何软件。
- Amazon SNS 主题:每 5 分钟 4 个预选指标,无附加费用。
- Amazon SQS 队列:每 5 分钟 8 个预选指标,无附加费用。
- Amazon CloudWatch Logs:每 1 分钟 6 个预选指标,无附加费用。
- 亚马逊云科技账单预算费用:您也可选择启用相应指标,以监控使用亚马逊云科技的费用。指标的数量根据您使用的亚马逊云科技产品和服务而定,这些指标是免费的。了解有关此选项的更多详情。
有关亚马逊云科技资源指标的详细信息,请参阅 Amazon CloudWatch 开发人员指南。
您需提交您自己的应用程序(或上述之外的亚马逊云科技资源)所生成的自定义指标,并借助 Amazon CloudWatch 对其进行监控。您可以通过简单的 API 请求向 Amazon CloudWatch 提交这些指标。Amazon CloudWatch 所有功能都可用于您的自定义指标数据,包括统计数据、图表和警报,且刷新频率可高达一分钟。
通过 CloudWatch 日志服务,使用现有的系统、应用程序和自定义日志文件,可以对系统和应用程序实施监控并进行故障排除。
通过 CloudWatch Logs 服务,您可以监控日志,以几乎实时的方式掌握特定短语、值或模式(指标)。例如,您可以对系统日志中出现的错误数量设置警报,也可以从应用程序日志查看 Web 请求延迟的图表。您可以根据需要来查看原始日志数据,了解问题根源。使用高耐久低成本的存储功能可以将日志数据保存任意时长,以便日后取用,因此无需担心硬盘空间是否足够。
CloudWatch Logs 类
有两个日志类:
- Amazon CloudWatch Logs Infrequent Access(Logs-IA)专为在亚马逊云科技云上本地整合所有日志而构建。这个类提供 CloudWatch Logs Standard 的托管摄取、跨账户日志分析和加密,且每 GB 的摄取价格较低。定制功能和低成本相结合,使得 CloudWatch Logs-IA 成为临时查询和事后取证分析的理想之选。
- Amazon CloudWatch Logs Standard 用于全面的日志管理,旨在提供实时监控和高级分析功能,例如实时跟踪、指标提取、发出警报或数据保护。
您需为各项指标设置警报,在指标超过指定阈值时接收通知或采取其他自动操作。您可以使用警报来检测并关闭未使用或使用不充分的 Amazon EC2 实例。
您还可以使用自动扩缩根据 Amazon CloudWatch 指标动态添加或删除 Amazon EC2 实例。
复合警报
Amazon CloudWatch 复合警报使您能够合并多个警报并减少警报噪音。如果一个应用程序问题影响了应用程序中的多个资源,对于整个应用程序,您将收到一个警报通知,而不是针对每个受影响的服务组件或资源各收到一个警报通知。这有助于您专注于找出运营问题的根本原因,从而降低应用程序停机时间。您可以提供应用程序、亚马逊云科技区域或可用区等一组资源的整体状态。
利用 Amazon CloudWatch 控制面板,您可以创建可重复使用的控制面板,以便在一处集中监控各个亚马逊云科技资源。指标数据的保留期限为两周,使您能够查看最新数据及历史数据。
Amazon CloudWatch 指标流使您能够为您选择的目标创建连续、近乎实时的指标流。这使您可以更轻松地将指标发送到亚马逊云科技上的数据湖(例如 Amazon S3),并使用 Amazon Athena 之类的工具开始分析使用情况或性能。或者,您可以使用 Amazon Kinesis Data Firehose HTTP 端点将 CloudWatch 指标发送到亚马逊云科技合作伙伴解决方案。您可以创建包含最新的 CloudWatch 指标数据的连续、可扩展数据流,为依赖准确、及时的指标数据的控制面板、警报和其他工具提供支持。
Amazon CloudWatch 中的跨账户可观测性使您能够监控跨亚马逊云科技区域内多个账户的应用程序并对其进行问题排查。您可以从中央视图搜索存储在多个账户中的日志组,运行跨账户 Logs Insights 查询,跨账户创建 Contributor Insights 规则,以识别生成日志条目的前 N 名贡献者。您还可以在综合视图中可视化来自多个账户的指标,并创建警报来评估其他账户的指标,以便在出现异常和趋势问题时收到通知。在 Container Insights 上使用跨账户可观测性,您可以监控整个组织的容器环境,并在用户体验受到影响之前主动查明风险。借助 CloudWatch 中的跨账户可观测性,您可以使用 Application Signals 查看跨账户应用程序的交互式地图,一键深入查看相关指标、日志和跟踪。您还可以使用此功能设置跨账户指标流,将跨亚马逊云科技区域内多个亚马逊云科技账户的指标纳入单个指标流。CloudWatch 中的跨账户可观测性只需点击几下即可提供全面的运营视图,无需额外的数据管道,从而帮助您节省管理基础设施和应用程序的时间、精力和成本。
借助 Amazon CloudWatch Events,您可收到亚马逊云科技服务发送的近乎实时的通知,从而对应用程序可用性问题或资源更改做出快速响应。您只需要编写规则以指明需要关注哪些与您的应用程序有关的事件,以及当规则与事件匹配时要执行哪些自动化操作。当您关注的事件发生时,你可以停止 Amazon EC2 实例、 发送一条 Amazon SNS 讯息,或添加一条消息到 Amazon SQS 队列。您还可以按计划发送事件。
Amazon CloudWatch 现在包含 Contributor Insights,该服务用于分析时间序列数据,以便于您了解影响系统性能的主要因素。一旦设置好,Contributor Insights 便可以持续运行,无需额外的用户干预。这有助于开发人员和操作人员在操作事件期间更快地隔离、诊断和修复问题。Contributor Insights 可帮助您了解是谁或者是什么影响了您的系统和应用程序性能,如指定资源、客户账户或 API 调用。借助此服务,您可以确定异常值、找出最繁忙的流量模式并对最常使用的系统流程进行排序。您可以创建 Contributor Insights 规则以在结构化日志事件中的模式被发送到 CloudWatch Logs 时对其进行评估,包括 Amazon CloudTrail、Amazon Virtual Private Cloud、Amazon API Gateway 等亚马逊云科技服务中的日志,及您的服务或本地服务器发送的任何自定义日志,如 Apache 访问日志。Contributor Insights 将实时评估这些日志事件,并显示包含数据集中的主要因素及唯一因素数量的报告。因素是基于维度的聚合指标,这些维度在 CloudWatch Logs 中被包含为日志字段,如 VPC Flow 日志中的 account-id 或 interface-id,或任何其他的自定义维度集。您可以根据自己的自定义标准对因素数据进行排序和筛选。Contributor Insights 报告数据可以显示在 CloudWatch 控制面板上,与 CloudWatch 指标一起被绘制成图形,并添加到 CloudWatch 警报中。
使用 Amazon CloudWatch Synthetics,您可以更轻松地监控应用程序端点。该功能全天候每分钟对您的端点进行测试,会在您的应用程序出现异常时向您发出警报。这些测试可以进行定制,用来检查应用程序中的可用性、延迟、事务、不完整或无效的链接、分步任务完成情况、页面加载错误、UI 资产的加载延迟、复杂的向导流程或结账流程。您还可以使用 CloudWatch Synthetics 隔离触发警报的应用程序端点,并据此找到根本基础设施问题,从而缩短平均解决时间。通过这项新功能,CloudWatch 现在可以收集 Canary 流量,即使您的应用程序上没有任何客户流量,您也可以持续验证客户体验,从而先于客户发现问题。CloudWatch Synthetics 支持监控 REST API、URL 和网站内容,以及检查来自网络钓鱼、代码注入和跨站脚本的未授权更改。
CloudWatch Container Insights 收集、聚合、汇总您在 Amazon Elastic Container Service(Amazon ECS)、Amazon Elastic Kubernetes Service(Amazon EKS)、Amazon EC2 上的 Kubernetes 平台和 Amazon Fargate(适用于 Amazon ECS 和 Amazon EKS)上运行的容器化应用程序和微服务的指标和日志。Container Insights 开箱即用地收集 CPU、内存、磁盘和网络指标等容器指标,并提供更深入的诊断信息,例如容器重启失败,进而帮助您隔离问题并快速解决问题。Container Insights 通过自动控制面板提供容器可观测性,使您能够轻松监控应用程序的运行状况和性能。如果您需要对容器环境具有详细的可见性,可以选择具有增强可观测性的 Container Insights 来收集精细的容器级别指标。您还可以针对 Container Insights 指标创建 CloudWatch 警报,以便在应用程序性能受到影响之前收到异常通知。
Amazon CloudWatch 数据库洞察是一项数据库可观测性解决方案,可提供专为 DevOps 工程师、应用程序开发人员和数据库管理员(DBA)设计的精选体验,进而加快数据库故障排除并全面了解其数据库实例集的运行状况。这适用于 Amazon Aurora 和 RDS 数据库。
CloudWatch 数据库洞察可将来自您的应用程序、数据库以及它们所运行的操作系统的日志和指标整合到控制台中的统一视图中。使用其预构建的控制面板、推荐的警报和自动遥测收集,DBA 和 DevOps 工程师可以监控其数据库实例集的运行状况,并使用引导式故障排除体验深入到单个实例进行根本原因分析。
问:CloudWatch 数据库洞察与 RDS 性能见解有何不同?
RDS 性能见解是一项标准的数据库性能调优和监控功能,客户可以通过预构建的控制面板,每次评测一个实例上的数据库负载情况。
CloudWatch 数据库洞察包含 RDS 性能见解的功能。它是一项先进的综合性数据库可观测性功能,专为 DevOps 工程师和数据库管理员(DBA)设计,用于对数据库及其支持应用程序进行大规模故障排除。它提供实例集级别的视图、数据库指标与日志和事件的关联,以及 SQL 查询统计信息的可视化展示。
CloudWatch Lambda Insights 简化了来自 Amazon Lambda 函数的精选指标和日志的收集和汇总。它从每个 Lambda 函数中收集 CPU、内存和网络等计算性能指标作为性能事件,同时自动生成用于监控和发出警报的自定义指标。系统将提取性能事件作为 CloudWatch 日志,以简化监控并进行故障排除。系统会自动从这些提取的日志中获取 CloudWatch 自定义指标,并使用 CloudWatch Logs Insights 的高级查询语言对这些指标进行进一步分析。请参阅 Lambda Insights 入门文档了解更多详情。
Amazon CloudWatch Metrics Insights 是一个基于 SQL 的快速、灵活的查询引擎,使您能够近乎实时地识别数百万运营指标中的趋势和模式。您可以通过 Metrics Insights 进行灵活的查询和即时指标聚合,从而更好地了解您的基础设施和大规模应用程序性能。Metrics Insights 查询可用于创建功能强大的可视化项,帮助您主动监控并快速精确定位问题,缩短 MTTR。
预期用途和限制
使用本服务需遵循亚马逊云科技客户协议。