CodeDeploy でのロギングとモニタリング - AWS CodeDeploy

CodeDeploy でのロギングとモニタリング

このセクションでは、CodeDeploy でのモニタリング、ログ記録、およびインシデントへの対応の概要を説明します。

CodeDeploy とのすべてのインタラクションの監査

CodeDeploy は、サービス AWS CloudTrail と連携しています。このサービスは AWS アカウントで CodeDeploy が行った、または CodeDeploy の代わりに行った API コールを取得し、ログファイルを指定した S3 バケットに配信するものです。CloudTrail は、CodeDeploy コンソール、AWS CLI を通じた CodeDeploy コマンド、または CodeDeploy API からの直接の API 呼び出しをキャプチャします。CloudTrail で収集された情報を使用して、CodeDeploy に対するリクエスト、リクエスト元の出典 IP アドレス、リクエスト送信者、リクエスト日時などの詳細を確認できます。CloudTrail のより詳しい情報については、AWS CloudTrail ユーザーガイド 内の 「CloudTrail ログファイルの操作」 を参照してください。

CodeDeploy のデプロイで作成されたログデータを表示するには、Amazon CloudWatch エージェントを設定して CloudWatch コンソール内の集計データを表示するか、インスタンスにサインインしてログファイルを確認します。その他の詳細については、「CodeDeploy エージェントログを CloudWatch に送信する」を参照してください。

アラートと障害管理

Amazon CloudWatch Events を使用して、CodeDeploy オペレーション内のインスタンスまたはデプロイ (「イベント」) のステートにおける変化を検出して対処できます。この場合、デプロイまたはインスタンスがルール内で指定した状態になると、作成したルールに基づいて、CloudWatch Events が 1 つ以上のターゲットアクションを呼び出します。状態変更のタイプに応じて、通知を送信、状態情報を取得し、修正作業またはその他のアクションを取ることができます。CloudWatch Events を CodeDeploy オペレーションの一部としてを使用する場合、次のタイプのターゲットを選択できます。

  • AWS Lambda 関数

  • Kinesis Streams

  • Amazon SQS SQS キュー

  • 組み込みターゲット (CloudWatch アラームアクション)

  • Amazon SNS トピック

次にユースケースをいくつか示します。

  • Lambda 機能を使用して、デプロイが失敗するたびに Slack チャネルに通知を配信します。

  • Kinesis ストリームにデプロイまたはインスタンスのデータをプッシュして、包括的でリアルタイムの状態モニタリングをサポートします。

  • CloudWatch アラームアクションを使用することで、指定したデプロイやインスタンスイベントが発生したときに、EC2 インスタンスを自動的に停止、終了、再起動、もしくは復旧することができます。

詳細については、「Amazon CloudWatch ユーザーガイド」の「Amazon CloudWatch Events とは」を参照してください。