AWS Lambda スケジュールイベントの Event オブジェクト

スケジュールされたイベントでの AWS Lambda の使用

Lambda のイベントソースに「CloudWatch Events - Schedule」を指定した場合、Lambda 関数の引数に渡される event オブジェクトは以下のようなものになる。

{
  "account": "123456789012"
  "region": "ap-northeast-1"
  "detail": {}
  "detail-type": "Scheduled Event"
  "source": "aws.events"
  "version": "0"
  "time": "2016-04-22T02:27:00Z"
  "id": "a6e4a08f-4ec5-4230-a026-ffffffffffff"
  "resources": ["arn:aws:events:ap-northeast-1:123456789012:rule/scheduled_event_name"]
}

Lambda の暖気運転のためのイベントソースに利用する場合、(Python の場合)関数の冒頭で次のように条件判定してすぐにリターンさせる。
但し、スケジュールイベントが複数ある場合は、resources のスケジュールイベント名をチェックする必要がある。

if event.get('detail-type') == 'Scheduled Event' and event.get('source') == 'aws.events':
    return
Last updated on April 22, 2016