Amazon CloudWatch 事件
用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

什么是 Amazon CloudWatch Events?

Amazon CloudWatch Events 提供几乎实时的系统事件流,这些事件描述 Amazon Web Services (AWS) 资源中对 Amazon EC2 实例、AWS Lambda 函数、Kinesis 流、Amazon ECS 任务、Step Functions 状态机、Amazon SNS 主题、Amazon SQS 队列或内置目标的更改。通过使用可快速设置的简单规则,您可以匹配事件并将事件路由到一个或多个目标函数或流。CloudWatch Events 会在发生操作更改时感知到这些更改。CloudWatch Events 将响应这些操作更改并在必要时采取纠正措施,方式是发送消息以响应环境、激活函数、进行更改并捕获状态信息。

概念

在您开始使用之前 CloudWatch Events,应了解以下概念:

  • 事件—事件表示 AWS 环境中的更改。AWS 资源可以在其状态更改时生成事件。例如,Amazon EC2 会在 EC2 实例的状态从待处理更改为正在运行时生成事件,Auto Scaling 会在启动或终止实例时生成事件。AWS CloudTrail 在您执行 API 调用时发布事件。您可以生成自定义应用程序级事件并将它们发布到 CloudWatch Events。您还可以设置定期生成的计划事件。有关生成事件的服务的列表,以及来自每项服务的示例事件,请参阅 CloudWatch Events 的事件类型

  • 目标—目标负责处理事件。目标可以包括 Amazon EC2 实例、AWS Lambda 函数、Kinesis 流、Amazon ECS 任务、Step Functions 状态机、Amazon SNS 主题、Amazon SQS 队列和内置目标。目标接收 JSON 格式的事件。

  • 规则—规则匹配传入事件并将其路由到目标进行处理。单个规则可路由到多个目标,所有这些目标将并行处理。规则不按特定顺序处理。这可让组织的不同部门能够查找和处理他们感兴趣的事件。规则可以定制发送到目标的 JSON,方法是仅传递特定部分或使用常量来覆盖 JSON。

以下服务可与 CloudWatch Events 一起使用:

  • AWS CloudTrail 使您能够监控您的账户对 CloudWatch Events API 的调用 (包括由 AWS 管理控制台、AWS CLI 和其他服务进行的调用)。当 CloudTrail 日志记录打开时,CloudWatch Events 会将日志文件写入 S3 存储桶。每个日志文件包含一个或多个记录,具体取决于为满足某个请求要执行的操作数量。有关更多信息,请参阅 在 AWS CloudTrail 中记录 Amazon CloudWatch Events API 调用

  • AWS CloudFormation 可让您对 AWS 资源进行建模和设置。您可创建一个模板来描述所需的 AWS 资源,而 AWS CloudFormation 则可为您预配和配置这些资源。您可以在 AWS CloudFormation 模板中使用 CloudWatch Events 规则。有关更多信息,请参阅 AWS CloudFormation 用户指南中的 AWS::Events::Rule

  • AWS Config 可让您创建用于检查 AWS 资源的配置的规则。这些规则主要用于检查对组织的策略的符合性。当 AWS Config 规则被触发后,它将生成可由 CloudWatch 事件捕获的事件。

  • AWS Identity and Access Management (IAM) 可以帮助您安全地控制用户对 AWS 资源的访问权限。通过 IAM 可以控制哪些人可以使用您的 AWS 资源 (身份验证) 以及他们可以使用的资源和采用的方式 (授权)。有关更多信息,请参阅 Amazon CloudWatch Events 的身份验证和访问控制

  • Amazon Kinesis Streams 可实现快速而持续的数据接收和聚合。使用的数据类型包括 IT 基础设施日志数据、应用程序日志、社交媒体、市场数据源和 Web 点击流数据。由于数据引入和处理的响应时间是实时的,因此处理通常是轻量级的。有关更多信息,请参阅 Amazon Kinesis Streams 开发人员指南

  • AWS Lambda 使您能够构建快速响应新信息的应用程序。将您的应用程式代码上传为 Lambda 函数,Lambda 将在高可用性计算基础设施上运行您的代码。Lambda 执行计算资源的所有管理任务,包括服务器和操作系统维护、容量配置、自动扩展、代码和安全补丁部署以及代码监控和日志记录。有关更多信息,请参阅 AWS Lambda Developer Guide

本页内容: