CloudWatch Event
Simple event definition
This will enable your Lambda function to be called by an EC2 event rule. Please check the page of Event Types for CloudWatch Events.
functions: myCloudWatch: handler: myCloudWatch.handler events: - cloudwatchEvent: event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pendingEnabling / Disabling
Note: cloudwatchEvent events are enabled by default.
This will create and attach a disabled cloudwatchEvent event for the myCloudWatch function.
functions: myCloudWatch: handler: myCloudWatch.handler events: - cloudwatchEvent: event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pending enabled: falseSpecify Input or Inputpath
You can specify input values ββto the Lambda function.
functions: myCloudWatch: handler: myCloudWatch.handler events: - cloudwatchEvent: event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pending input: key1: value1 key2: value2 stageParams: stage: dev - cloudwatchEvent: event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pending inputPath: '$.stageVariables' - cloudwatchEvent: event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pending inputTransformer: inputPathsMap: eventTime: '$.time' inputTemplate: '{"time": <eventTime>, "key1": "value1"}'Specifying a Description
You can also specify a CloudWatch Event description.
functions: myCloudWatch: handler: myCloudWatch.handler events: - cloudwatchEvent: description: 'CloudWatch Event triggered on EC2 Instance pending state' event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pendingSpecifying a Name
You can also specify a CloudWatch Event name. Keep in mind that the name must begin with a letter; contain only ASCII letters, digits, and hyphens; and not end with a hyphen or contain two consecutive hyphens. More information here.
functions: myCloudWatch: handler: myCloudWatch.handler events: - cloudwatchEvent: name: 'my-cloudwatch-event-name' event: source: - 'aws.ec2' detail-type: - 'EC2 Instance State-change Notification' detail: state: - pending