簡體   English   中英

創建lambda以從不同區域的SNS Topic事件調用時出錯

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM