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

如何追踪触发SNS主题邮件通知的AWS服务及事件?

追踪触发AWS SNS通知的服务及事件方法
  • 查看SNS通知邮件原始内容
    邮件里的Message和MessageAttributes字段通常会带触发服务的标识。比如CloudWatch告警触发的通知会有aws:source属性,值为aws.cloudwatch;S3事件触发的会包含s3:bucket、s3:object-key这类字段。直接查看邮件里的原始消息内容,找这类关键字段就能定位来源服务。

  • 用CloudTrail日志排查
    打开CloudTrail的事件历史,筛选事件名称为Publish,资源类型选AWS::SNS::Topic,输入目标SNS主题的ARN。每条Publish事件的userIdentity字段会显示触发方的身份——如果是AWS服务触发,会显示对应的服务主体(比如cloudwatch.amazonaws.com、ecs-tasks.amazonaws.com);如果是IAM角色/用户触发,也会明确显示角色名称。
    也可以用CLI快速查询:

    aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=Publish --lookup-attributes AttributeKey=ResourceName,AttributeValue=你的SNS主题ARN
    
  • 检查SNS主题的关联配置
    登录AWS控制台进入SNS服务,找到目标主题:

    • 查看「订阅」标签确认自己的订阅状态正常;
    • 查看「触发器」标签(部分服务会直接在这里关联),能看到CloudWatch告警、CodePipeline、S3事件通知这类直接绑定的服务;
    • 另外查看主题的访问策略,看哪些服务或IAM角色拥有Publish权限,缩小排查范围。
  • 开启SNS主题日志记录
    如果前面的方法没找到线索,给目标SNS主题开启CloudWatch日志记录。在主题的「日志和监控」设置里配置CloudWatch日志组,之后所有的Publish请求都会被记录,包括请求来源的服务、事件详情等,方便后续溯源。

内容的提问来源于stack exchange,提问作者Harvesting Data

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 01:15:34