AWS CodeDeploy
User Guide (API Version 2014-10-06)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

使用 Amazon CloudWatch Events 监控部署

您可以在 AWS CodeDeploy 操作中使用 Amazon CloudWatch Events 检测实例或部署状态的更改(称为“事件”)并对这些更改采取相应的操作。然后,根据您创建的规则,当部署或实例进入您在规则中指定的状态时,CloudWatch Events 将调用一个或多个目标操作。根据状态更改的类型,您可能想发送通知,捕获状态信息,采取纠正措施,启动事件或采取其他操作。在您的 AWS CodeDeploy 操作中使用 CloudWatch Events 时,您可以选择以下类型的目标:

  • AWS Lambda 函数

  • Kinesis 流

  • Amazon SQS 队列

  • 内置目标(CloudWatch 警报操作)

  • Amazon SNS 主题

下面是一些使用案例:

  • 每当部署失败时使用 Lambda 函数向 Slack 通道传送通知。

  • 将有关部署或实例的数据推送到 Kinesis 流,以支持全面、实时的状态监控。

  • 当发生指定的部署或实例事件时,使用 CloudWatch 警报操作停止、终止、重启或恢复 Amazon EC2 实例。

本主题的其余内容介绍为 AWS CodeDeploy 创建 CloudWatch Events 规则的基本步骤。然而,在创建用于 AWS CodeDeploy 操作的事件规则之前,您应当执行以下操作:

为 AWS CodeDeploy 创建 CloudWatch Events 规则:

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Events

  3. 选择 Create rule,然后在 Event selector 下选择 AWS CodeDeploy

  4. 指定详细信息类型:

    • 要设置适用于所有实例和部署状态更改的规则,请选择 Any detail type,然后跳到步骤 6。

    • 要设置仅适用于实例的规则,请选择 Specific detail type,然后选择 CodeDeploy Instance State-change Notification

    • 要设置仅适用于部署的规则,请选择 Specific detail type,然后选择 CodeDeploy Deployment State-change Notification

  5. 指定规则适用的状态更改:

    • 要设置适用于所有状态更改的规则,请选择 Any state

    • 要设置仅适用于部分状态更改的规则,请选择 Specific state(s),然后从列表中选择一个或多个状态值。下表列出了您可以选择的状态值:

      部署状态值 实例状态值

      FAILURE

      START

      STOP

      QUEUED

      READY

      SUCCESS

      FAILURE

      START

      READY

      SUCCESS

  6. 指定规则适用的 AWS CodeDeploy 应用程序:

    • 要设置适用于所有应用程序的规则,请选择 Any application,然后跳到步骤 8。

    • 要设置仅适用于一个应用程序的规则,请选择 Specific application,然后从列表中选择该应用程序的名称。

  7. 指定规则适用的部署组:

    • 要设置适用于与所选应用程序关联的所有部署组的规则,请选择 Any deployment group

    • 要设置仅适用于与所选应用程序关联的一个部署组的规则,请选择 Specific deployment group(s),然后从列表中选择该部署组的名称。

  8. 审查您的规则设置以确保其符合事件监控要求。

  9. Targets 区域,选择 Add target*

  10. Select target type 列表中,选择您准备为此规则使用的目标类型,然后配置该类型所需的任何其他选项。

  11. 选择 Configure details

  12. Configure rule details 页面上,为规则键入名称和说明,然后选择 State 框以立即启用该规则。

  13. 如果您对规则满意,请选择 Create rule