CodeDeploy 中的日志记录和监控 - AWS CodeDeploy

CodeDeploy 中的日志记录和监控

本部分概述了 CodeDeploy 中的监控、日志记录和事件响应。

对与 CodeDeploy 的所有交互的审计

CodeDeploy 与 AWS CloudTrail 集成在一起,后者是一种服务,它在 AWS 账户中捕获由 CodeDeploy 发出或代表它发出的 API 调用,并将日志文件传输到您指定的 S3 存储桶。CloudTrail 可捕获来自 CodeDeploy 控制台、通过 AWS CLI 发送的 CodeDeploy 命令或直接来自 CodeDeploy API 的 API 调用。通过 CloudTrail 收集的信息,您可以确定向 CodeDeploy 发出了什么请求、发出请求的源 IP 地址、何人发出的请求以及发出请求的时间等。如需了解有关 CloudTrail 的更多信息,请参阅《AWS CloudTrail 用户指南》中的使用 CloudTrail 日志文件

您可以通过以下方式查看 CodeDeploy 部署过程创建的日志数据:设置 Amazon CloudWatch 代理以便在 CloudWatch 控制台中查看聚合数据或者登录到实例以查看日志文件。有关更多信息,请参阅 将 CodeDeploy 代理日志发送到 CloudWatch

提醒和事件管理

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

  • AWS Lambda 函数

  • Kinesis Streams

  • Amazon SQS 队列

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

  • Amazon SNS 主题

下面是一些用例:

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

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

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

有关更多信息,请参见 Amazon CloudWatch 用户指南什么是 Amazon CloudWatch Events