コンテンツにスキップ
Classmethod Aws Health Devops Agent

AWS HealthのLifecycleイベントをAWS DevOps Agentで自動調査させてみた

要約

AWS HealthのLifecycleイベント(ランタイム廃止・インスタンスタイプ廃止など)をAWS DevOps Agentが自動調査する仕組みの構築記事。

構成:AWS Health → EventBridge → Lambda(Webhookペイロード変換) → AWS DevOps Agent → Slack通知

Lambda実装のポイント

  • eventDescription[].latestDescription をDevOps Agentに渡して背景情報を調査に活用
  • affectedEntitiesstatus == "RESOLVED" を除外(対応済みリソースを調査対象から外す)
  • eventArnincidentId に使い同一イベントの重複調査を防ぐ
  • statusCode == "closed" のイベントはスキップ
  • 重要: AWS Health イベントは us-east-1 にのみ発行されるため、Lambdaも us-east-1 にデプロイ
  • HMAC-SHA256署名(timestamp:bodyのbase64)でWebhookの正当性を保証

汎用設計:EC2・RDS・Lambda等のLifecycleイベントに対応できる汎用的な変換ロジック