如何从状态机向SNS主题发送通知?

问题描述

我具有步进功能,并且一旦状态机完成执行,我想向SNS主题发送通知。我知道状态机可以触发Lambda,并且可以在lambda中实现逻辑,但是想了解状态机是否可以直接通知SNS?

解决方法

状态机不支持SNS。您可以拥有一个lambda并从那里通知您的SNS,但是您可以直接将SNS与SFN一起使用,而无需使用任何Lambda。在下面您可以看到实现:

{
  "Publish to SNS to notify DataDog": {
    "Type": "Task","Resource": "arn:aws:states:::sns:publish","Parameters": {
      "TopicArn": "<SNS topic ARN>","Message.$": "$","MessageAttributes": {
        "notify": {
          "DataType": "String","StringValue": "Send to SNS"
        }
      }
    },"Next": "<Next state>"
  }
}

您可以详细了解here