这是我在AWS文档中看到的AWS::Lambda::EventSourceMapping
的样例CloudFormation语法:
Type: "AWS::Lambda::EventSourceMapping"
Properties:
BatchSize: Integer
Enabled: Boolean
EventSourceArn: String
FunctionName: String
StartingPosition: String
假设我有一组 DDB 流 ARN,我想将其作为一个 Lambda 函数的触发器(而不是一个 ARN 作为触发器)。我尝试像这样定义这种关系:
Parameters:
DDBStreamARN:
Type: String
Default: arn:aws:dynamodb:us-west-2:someId1
AllowedValues:
- arn:aws:dynamodb:us-west-2:someId1
- arn:aws:dynamodb:us-west-2:someId2
- ...
Description: ARNs for the DDB Streams
Resources:
RegistrationRequestStreamMapping:
Type: AWS::Lambda::EventSourceMapping
Properties:
BatchSize: 70
EventSourceArn:
Ref: DDBStreamARN
FunctionName:
Fn::GetAtt:
- TestLambdaFunction
- Arn
StartingPosition: TRIM_HORIZON
Enabled: True
但是语法似乎不起作用,因为只有默认值 (arn:aws:dynamodb:us-west-2:someId1
) 才能作为触发器正常工作,而其他 ARN 不会触发 Lambda 函数。您有什么建议如何解决这个问题吗?