[英]Error creating lambda to invoke from SNS Topic events in different region
我正在嘗試創建一個lambda函數,該函數可以從不同區域的SNS Topic事件中調用。 我的lambda在EU-WEST-1中,要訂閱的SNS主題在EU-CENTRAL-1中。
我正在使用無服務器框架來部署lambda。 如果我嘗試訂閱同一地區的主題,則該主題成功運行。 但是,當我嘗試在其他區域中訂閱主題時,出現錯誤“無效參數-TopicArn”。
如果我轉到AWS控制台,則可以成功向lambda添加觸發器以從其他區域的SNS進行調用。
我還嘗試運行NodeJS腳本以添加跨區域SNS-lambda訂閱。 我從sns.Subscribe()方法中收到相同的“無效參數-TopicArn”錯誤。
是否有一種方法可以通過編程或通過雲形成在不同區域中將Lambda訂閱SNS主題?
默認情況下,您的SNS客戶端指向EU-CENTRAL-1。 嘗試像這樣在snsClient上設置setRegion,
snsClient.setRegion(Region.getRegion(Regions.EU-WEST-1));
是的,可以在不同區域中訂閱Lambda到SNS主題。 使用“區域”參數。
在CloudFormation(json)中將是:
"LambdaAmazonIpSpaceChangedSubscription" : {
"Type" : "AWS::SNS::Subscription",
"Properties" : {
"Endpoint" : {"Fn::GetAtt" : ["LambdaFunction", "Arn"] },
"Protocol" : "lambda",
"TopicArn" : "arn:aws:sns:us-east-1:806199016981:AmazonIpSpaceChanged",
"Region": "us-east-1"
}
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.