You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SNS未告警SES模板邮件变量缺失问题求助

排查AWS SES模板渲染失败未触发SNS告警的问题

核心问题:缺失渲染失败的通知类型配置

你当前仅配置了SES的Bounce、Complaint、Delivery三种通知类型,但模板渲染失败属于独立的RenderingFailure通知类型,未被包含在你的SNS配置中,因此SES不会将渲染错误事件推送到SNS主题。

具体排查与修复步骤

  • 修正Terraform配置,添加RenderingFailure通知类型
    你的var.sns_notification_type数组需要新增"RenderingFailure"值,修改后示例如下:

    # 对应你的变量定义文件
    variable "sns_notification_type" {
      type    = list(string)
      default = ["Bounce", "Complaint", "Delivery", "RenderingFailure"]
    }
    

    原有的aws_ses_identity_notification_topic资源会通过count自动为新增类型创建关联配置,无需修改其他资源块。

  • 理解SDK返回200的合理性
    SES的SendTemplatedEmail接口返回200仅代表请求格式合法(如模板存在、参数结构正确),模板渲染是后台异步执行的操作,同步返回成功不意味着渲染或投递成功,这是SES的正常设计逻辑。

  • 验证配置生效

    1. 部署修正后的Terraform配置,等待资源更新完成
    2. 登录AWS控制台,进入SES服务→对应身份(Identity)→「通知」标签页,确认Rendering Failure已关联到你的SNS主题
    3. 再次发送带有错误模板变量的测试邮件,检查Lambda的CloudWatch日志是否收到渲染失败的SNS消息
  • 额外检查点

    • 确认你的Lambda函数权限(aws_lambda_permission)已正确允许SNS主题调用,当前配置已包含source_arn限制,无需调整
    • 检查SNS主题的订阅状态是否为「已确认」,Terraform创建的Lambda订阅会自动确认,无需手动操作

内容的提问来源于stack exchange,提问作者Clarence the Bard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 05:17:24