在我的无服务器 YAML 文件中,我定义了一个 lambda 函数,其中包含来自不同存储桶的多个 S3 事件,这些事件已经存在,如下所示
df$ddate <- format(as.Date(df$ddate), "%d/%m/%Y")
“无服务器部署”命令失败并显示以下文本:
functions:
my-lambda:
handler: ...
name: my-lambda
description: 'Fetcher'
environment:
env_host: aws
events:
- s3:
bucket: bucket1
existing: true
- s3:
bucket: bucket2
existing: true
是否可以在 Serverless 中为一个 lambda 配置多个 s3 存储桶?
答案 0 :(得分:1)
很遗憾没有。
<块引用>重要提示:每个函数只能附加 1 个现有的 S3 存储桶。
AWS Lambda 只允许一个 Amazon S3 存储桶作为事件源。您可以使用不同的事件类型在 s3
中多次定义 events
,但它仍然必须来自同一个存储桶,请参阅 here。
您可以使用多次编写的 handler
来定义多个函数,如下所示:
functions:
my-lambda-bucket1:
handler: ...
name: my-lambda-bucket1
description: 'Fetcher with bucket1'
environment:
env_host: aws
events:
- s3:
bucket: bucket1
existing: true
my-lambda-bucket2:
handler: ...
name: my-lambda-bucket2
description: 'Fetcher with bucket2'
environment:
env_host: aws
events:
- s3:
bucket: bucket2
existing: true