我正在尝试使用Serverless Framework实现这种简单的体系结构:
文件上传到S3存储桶-> SNS主题-> 2个Lambda函数
实际上我只是用1个lambda函数进行测试,这是我的代码:
spark.sparkContext.hadoopConfiguration.set("fs.s3.awsAccessKeyId", "")
spark.sparkContext.hadoopConfiguration.set("fs.s3.awsSecretAccessKey", "")
在控制台中,我可以看到Lambda函数已订阅主题:
但是在Lambda函数中,未在“触发器”部分中设置SNS主题:
我想念什么吗?
答案 0 :(得分:1)
好,我知道了!
我必须添加另一个权限以允许Lambda函数由SNS主题触发:
TestLambdaFunctionPermission:
Type: AWS::Lambda::Permission
Properties:
Action: lambda:InvokeFunction
Principal: sns.amazonaws.com
SourceArn:
Ref: ImageUploadedTopic
FunctionName:
Fn::GetAtt: [ TestLambdaFunction, "Arn" ]
现在在控制台中,我可以将SNS用作Lambda函数的触发器:)