如何从 AWS 步骤函数中的`$$.Execution.Name` 中提取部分字符串?

问题描述

从此页面https://docs.aws.amazon.com/step-functions/latest/dg/input-output-contextobject.html

我正在使用 "TransformJobName.$": "$$.Execution.Name" 定义动态 SageMaker 作业名称,因为该名称必须是唯一的,否则状态机将失败

当我执行状态机时,出现以下错误

{
  "resourceType": "sagemaker","resource": "createTransformJob.sync","error": "SageMaker.AmazonSageMakerException","cause": "2 validation errors detected: Value '808bxx-xxxx-xxxx-xxxx-c831xxxxxx1_xxxxx0-xxxx-xxxx-xxxx-12345b071e5e' at 'transformJobName' Failed to satisfy constraint: Member must satisfy regular expression pattern: ^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}; Value '808bxx-xxxx-xxxx-xxxx-c831xxxxxx1_xxxxx0-xxxx-xxxx-xxxx-xxxxxxxx71e5e' at 'transformJobName' Failed to satisfy constraint: Member must have length less than or equal to 63 (Service: AmazonSageMaker; Status Code: 400; Error Code: ValidationException; Request ID: xxxxxxxxxxx; Proxy: null)"
}

如何修改定义文件以使作业名称满足要求,例如 myjobname-12345b071e5e,其中 12345b071e5eExecution.Name 的最后一位?

我也试过 "TransformJobName.$": "$$.Execution.StartTime",但它给了我错误 1 validation error detected: Value '2021-01-14T16:15:14.437Z' at 'transformJobName' Failed to satisfy constraint: Member must satisfy regular expression pattern: ^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62} (Service: AmazonSageMaker; Status Code: 400; Error Code: ValidationException; Request ID: xxxxxxxxxxxx; Proxy: null)

我已经为这个问题苦苦挣扎了一天,有人可以帮忙吗?提前致谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)