标签: aws-step-functions

启动 StepFunction 并退出不会触发执行

我有 Lambda 函数tranportKickoff,它接收输入,然后将输入发送/代理到Step Function中。下面的代码确实运行,我没有收到任何错误,但同时步骤函数没有执行。

对于设计也很重要,我不希望函数transportKickoff等待步骤函数完成,因为它可能运行很长时间。然而,我希望调用Step Function 时出现的任何错误都会同步报告回来。也许这个想法是错误的,我不知何故错过了某个地方抛出的错误。但是,如果是这种情况,我想找到一种方法,能够实现在 Step Function 开始执行后立即退出 lambda 函数的目标。

注意:我可以独立执行步骤函数,并且我知道它工作正常

  const stepFn = new StepFunctions({ apiVersion: "2016-11-23" });
  const stage = process.env.AWS_STAGE;
  const name = `transport-steps ${message.command} for "${stage}" environment at ${Date.now()}`;
  const params: StepFunctions.StartExecutionInput = {
    stateMachineArn: `arn:aws:states:us-east-1:999999999:stateMachine:transportion-${stage}-steps`,
    input: JSON.stringify(message),
    name
  };
  const request = stepFn.startExecution(params);
  request.send();
  console.info(
    `startExecution request for step function was sent, context sent was:\n`,
    JSON.stringify(params, null, 2)
  );

  callback(null, {
    statusCode: 200 …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-lambda aws-step-functions

2
推荐指数
1
解决办法
4288
查看次数

限制 AWS Step Functions 一次仅运行一个执行

我想在任何给定时间将步骤函数的执行次数限制为 1。有没有办法对 AWS Step 函数设置全局锁定?

locking aws-step-functions

2
推荐指数
1
解决办法
4474
查看次数

AWS Step Functions 是否登录 CloudWatch

我想知道 AWS 步骤函数执行的输出是否记录在 CloudWatch 日志组中。我不是在谈论由 step 函数调用的 lambda 函数的输出。我对状态机本身的输出感兴趣。

我问这个问题是因为我们通常将所有日志集中在 loggly 中,以便更轻松、集中地进行故障排除/警报。如果step函数的输出在CloudWatch中,我们就可以轻松地将其转发到loggly。

aws-step-functions

2
推荐指数
1
解决办法
1万
查看次数

Step Function 中失败任务的 DLQ

如果步骤功能中的任务失败,在尝试使用重试策略后,有没有办法可以将这些失败的任务放在某些 DLQ 或类似的东西中,以便有人可以稍后监视这些消息并在解决问题后重新驱动它们?

aws-step-functions

2
推荐指数
1
解决办法
1524
查看次数

步骤函数中的aws胶水作业依赖性

我创建了 2 个胶水作业(gluejob1、gluejob2)。

我想创建一个依赖项,因为gluejob2 应该只在gluejob1 完成后运行。

为了编排这个,我创建了一个具有以下定义的阶跃函数:

 {
  "gluejob1": {
    "Type": "Task",
    "Resource": "gluejob1.Arn",
    "Comment": "Glue job1.",
    "Next": "gluejob2"
  },

  "gluejob2": {
    "Type": "Task",
    "Resource": "gluejob2.Arn",
    "Comment": "TGlue job2.",
    "Next": "Gluejob2 Finished Loading"
  },
  "Gluejob2 Finished Loading": {
    "Type": "Pass",
    "Result": "",
    "End": true
  }
}
Run Code Online (Sandbox Code Playgroud)

当我执行这个 step 函数时,状态函数在它触发 Gluejob1并继续触发gluejob2的那一刻称它为成功

我想知道是否有可能只有在gluejob1 完成后才运行gluejob2。

amazon-web-services aws-step-functions aws-glue

2
推荐指数
1
解决办法
4352
查看次数

重新填充率对 AWS Step Functions 意味着什么?

限制 - AWS Step Functions显示AWS Step Functions 的限制。有人可以解释一下他们所说的bucket size和是什么意思Refill Rate per Second吗?

amazon-web-services aws-step-functions

2
推荐指数
1
解决办法
776
查看次数

AWS Step Functions 是否具有超时功能?

现在我有一个 AWS Step Function 来创建、运行和终止 EMR 集群作业。我想添加一个超时功能来停止作业并在集群卡住或运行时间过长的情况下终止集群(例如,将输入变量"TIMEOUT_AFTER_X_HOURS": 12与将自动停止的集群配置一起传递到状态机中如果集群在 12 小时后仍在运行,则终止该作业)。有谁知道如何做到这一点?

amazon-web-services aws-step-functions

2
推荐指数
2
解决办法
5194
查看次数

AWS Step Function:检查是否为空

Step Function 定义如下:

{
  "StartAt": "Decision_Maker",
  "States": {
    "Decision_Maker":{
      "Type": "Choice",
      "Choices": [
        {
          "Variable": "$.body.MyData",
          "StringEquals": "null", //that doesn't work :(
          "Next": "Run_Task1"
        }],
        "Default": "Run_Task2"
    },
    "Run_Task1": {
      "Type": "Task",
      "Resource": "url_1",
      "Next": "Run_Task2"
    },
    "Run_Task2": {
      "Type": "Task",
      "Resource": "url_2",
      "End": true
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

基本上它是两个任务之间的选择。输入数据是这样的:

{
    "body": {
        "prop1": "value1",
        "myData": {
            "otherProp": "value"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是有时 JSON 中没有 myData。所以输入可能是这样的:

{
    "body": {
        "prop1": "value1",
        "myData": null
    }
}
Run Code Online (Sandbox Code Playgroud)

如何检查 myData 是否为空?

amazon-web-services aws-lambda aws-step-functions

2
推荐指数
1
解决办法
2602
查看次数

用于 Control M 迁移的 AWS Batch 与 AWS Step 函数

目标是将我们的作业从 Control M 迁移到 AWS,但在此之前,我想更好地了解 AWS 批处理和 AWS 步骤函数之间的区别。据我了解,AWS 步骤函数似乎更具包容性,因为我可以让我的步骤之一运行 AWS 批处理。

您能解释一下 AWS Batch 和 AWS Step 函数之间的区别吗?哪个更适合从 Control M 迁移?(也许这是偏好)

amazon-web-services control-m aws-step-functions aws-batch

2
推荐指数
1
解决办法
1981
查看次数

如何停止特定状态机的所有运行 Step Functions?

我不小心启动了很多步骤函数,现在希望终止所有这些。

使用 CLI 或 Web 控制台执行此操作的任何智能方法?

aws-cli aws-step-functions

2
推荐指数
2
解决办法
1198
查看次数