Amazon web services Amazon SWF Lambda函数错误-区域中不可用
我正在用AmazonSWF实现一个工作流,我的一个活动以lambda函数的形式出现 SWF和Lambda都是在伦敦地区运营的,他们在那里分别工作。但是,我的决策器在轮询任务后失败,原因是“LAMBDA\u服务\u不可用\u在\u区域” 我没有在代码中明确指定我工作的区域,我假设它与我运行SWF web客户端的区域相同 以下是我的决策器中的相关代码:Amazon web services Amazon SWF Lambda函数错误-区域中不可用,amazon-web-services,aws-lambda,amazon-swf,Amazon Web Services,Aws Lambda,Amazon Swf,我正在用AmazonSWF实现一个工作流,我的一个活动以lambda函数的形式出现 SWF和Lambda都是在伦敦地区运营的,他们在那里分别工作。但是,我的决策器在轮询任务后失败,原因是“LAMBDA\u服务\u不可用\u在\u区域” 我没有在代码中明确指定我工作的区域,我假设它与我运行SWF web客户端的区域相同 以下是我的决策器中的相关代码: val attrs = ScheduleLambdaFunctionDecisionAttributes()
val attrs = ScheduleLambdaFunctionDecisionAttributes()
.withId("S3ControlWorkflowFunction")
.withName("S3ControlWorkflowFunction")
decisions.add(
Decision()
.withDecisionType(DecisionType.ScheduleLambdaFunction)
.withScheduleLambdaFunctionDecisionAttributes(attrs)
)
我的activity worker根本不为lambda函数做任何事情,但它不应该这样做,对吗
我已在此处向我的IAM角色注册了工作流:
wf.registerWorkflowType(RegisterWorkflowTypeRequest()
.withDomain(DOMAIN)
.withName(WORKFLOW)
.withVersion(WORKFLOW_VERSION)
.withDefaultChildPolicy(ChildPolicy.TERMINATE)
.withDefaultTaskList(TaskList().withName(TASKLIST))
.withDefaultTaskStartToCloseTimeout("30")
.withDefaultLambdaRole(iamARN.id))
找到了解决办法
事实证明,从SWF调用lambda函数在eu-west-2地区以及其他一些地区是不受支持的。然而,我在文档中找不到任何关于这一点的参考。找到了给我提示的论坛帖子。将我所做的所有工作迁移到eu-west-1解决了这个问题。亚马逊在这里的表现很差