【发布时间】:2017-03-16 04:26:08
【问题描述】:
我目前正在探索将电子邮件的附件与 .eml 文件本身分开存储。我有一个 SES 规则集,可将入站电子邮件传送到存储桶。当存储桶检索电子邮件时,S3 Put Lambda 函数解析原始电子邮件(MIME 格式),base64 对附件缓冲区进行解码,并对每个附件和原始 .eml 文件执行 putObject 到新存储桶。
我的问题是,对于附件超过 ~3-4 MB 的电子邮件,此 Lambda 函数不会触发。邮件被接收并存储在初始存储桶中,但在接收时不会触发该函数。此外,该事件不会出现在 CloudWatch 中。但是,当使用硬编码的 S3 Put 有效负载手动测试它时,以及手动将 .eml 文件上传到分配的存储桶时,该功能工作得非常好。
你知道为什么会有这个限制吗?也许这是存储桶的权限问题,或者可能是分配的 Lambda 角色的问题?手动测试时,我发现这绝不是超时或超过最大内存使用的问题。
【问题讨论】:
-
Is it possible for S3 notifications to SQS to fail? 的可能重复项。表面上并不完全相同——但可能的根本原因是相同的,所以目前,我要说这不是完全重复的。我更愿意看到一些共识,而不是随便乱扔我的金锤。
-
@Michael-sqlbot 我不会将此问题标记为重复问题,因为我从没想过有人在搜索此问题时会找到其他问题。遇到此问题时,其他问题的标题太模糊,以至于无法找到。
-
感谢@MarkB。我怀疑你是对的。
标签: amazon-web-services amazon-s3 aws-lambda amazon-ses