를 사용하여 스테이트 머신 실행 재시작 redrive Step Functions에서 - AWS Step Functions

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용하여 스테이트 머신 실행 재시작 redrive Step Functions에서

다음을 사용할 수 있음: redrive 지난 14일 동안 성공적으로 완료되지 않은 표준 워크플로의 실행을 다시 시작합니다. 여기에는 실패, 중단 또는 시간 초과된 실행이 포함됩니다.

다음과 같은 경우 redrive 실행은 실패한 단계부터 실패한 실행을 계속하고 동일한 입력을 사용합니다.Step Functions 성공한 단계의 결과 및 실행 기록을 보존하며, 다음과 같은 경우 다시 실행되지 않습니다.redrive 실행. 예를 들어 워크플로에 워크플로 상태 전달 상태와 작업 워크플로 상태 상태 등 2가지 상태가 있다고 가정해보겠습니다. 작업 상태에서 워크플로 실행이 실패할 경우 redrive 실행, 실행 일정을 조정한 다음 작업 상태를 다시 실행합니다.

Redriven 실행에는 원래 실행 시도에 사용된 것과 동일한 스테이트 머신 정의 및 ARN 실행이 사용됩니다. 원래 실행 시도가 버전, 별칭 또는 둘 다와 관련된 경우 redriven 실행은 동일한 버전, 별칭 또는 둘 다와 연결되어 있습니다. 다른 버전을 가리키도록 별칭을 업데이트하더라도 redriven 실행에는 원래 실행 시도와 연결된 버전이 계속 사용됩니다. 왜냐하면 redriven 실행은 동일한 스테이트 머신 정의를 사용하므로 스테이트 머신 정의를 업데이트하려면 새 실행을 시작해야 합니다.

다음과 같은 경우 redrive 실행 시 상태 시스템 수준 제한 시간 제한 (정의된 경우) 이 0으로 재설정됩니다. 상태 시스템 수준 제한 시간에 대한 자세한 내용은 TimeoutSeconds 섹션을 참조하세요.

Execution redrives 상태 전환으로 간주됩니다. 상태 전환이 결제에 미치는 영향은 Step Functions 요금을 참조하세요.

Redrive 실패한 실행에 대한 자격

다음을 수행할 수 있습니다.redrive 원래 실행 시도가 다음 조건을 충족하는 경우 실행할 수 있습니다.

  • 2023년 11월 15일 이후에 실행을 시작했습니다. 이 날짜 이전에 시작한 실행은 다음을 수행할 수 없습니다.redrive.

  • 실행 상태는 SUCCEEDED가 아닙니다.

  • 워크플로 실행이 한도를 초과하지 않았습니다.redrivable 14일 기간.Redrivable 기간이란 할 수 있는 기간을 말합니다.redrive 주어진 실행. 이 기간은 상태 시스템에서 실행을 완료한 날부터 시작합니다.

  • 워크플로 실행이 최대 오픈 시간인 1년을 초과하지 않았습니다. 상태 시스템 실행 할당량은 상태 시스템 실행과 관련된 할당량 섹션을 참조하세요.

  • 실행 이벤트 기록 수가 24,999개 미만입니다.Redriven 실행 시 이벤트 기록이 기존 이벤트 기록에 추가됩니다. 워크플로 실행에 이벤트가 24,999개 미만 있어 ExecutionRedriven 내역 이벤트와 다른 내역 이벤트를 최소 하나 이상 수용할 수 있는지 확인합니다.

Redrive 개별 상태의 동작

워크플로에서 실패한 상태에 따라 redrive 모든 실패 상태의 동작은 다양합니다. 다음 표에서는 다음을 설명합니다.redrive 모든 상태의 동작.

상태 이름 Redrive 실행 동작
워크플로 상태 전달

이전 단계가 실패하거나 상태 머신의 제한 시간이 초과되면 Pass 상태가 종료되고 다음에서 실행되지 않습니다.redrive.

작업 워크플로 상태

Task 상태를 다시 예약하고 시작합니다.

다음과 같은 경우 redrive 태스크 상태를 재실행하는 실행은 해당 TimeoutSeconds 상태 (정의된 경우) 가 0으로 재설정됩니다. 제한 시간에 대한 자세한 내용은 Task 상태를 참조하세요.

워크플로 상태 선택 Choice 상태 규칙을 다시 평가합니다.
대기 워크플로 상태

상태가 과거의 타임스탬프를 Timestamp 지정하거나 TimestampPath 참조하는 경우 redrive Wait 상태가 종료되고 필드에 지정된 상태로 들어갑니다. Next

워크플로 상태 성공

그렇지 않습니다 redrive 성공 상태로 진입하는 시스템 실행을 상태 지정합니다.

실패 워크플로 상태

Fail 상태로 다시 전환되었다가 다시 실패합니다.

병렬 워크플로 상태

스케줄 조정 및 redrives 실패 또는 중단된 지점만.

States.DataLimitExceeded 오류로 인해 상태가 실패한 경우 원래 실행 시도에서 성공한 브랜치를 포함하여 Parallel 상태가 다시 실행됩니다.

Inline Map 상태

일정 조정 및 redrives 실패 또는 중단된 이터레이션만.

States.DataLimitExceeded 오류로 인해 상태가 실패한 경우 원래 실행 시도에서 성공한 반복을 포함하여 Inline Map 상태가 다시 실행됩니다.

Distributed Map 상태

redrives Map Run에서 실패한 하위 워크플로 실행 자세한 내용은 Redriving Step Functions의 맵 런 실행 단원을 참조하십시오.

States.DataLimitExceeded 오류로 인해 상태가 실패한 경우 Distributed Map 상태가 다시 실행됩니다. 여기에는 원래 실행 시도에서 성공한 하위 워크플로가 포함됩니다.

IAM권한: redrive 처형

Step Functions에는 다음과 같은 적절한 권한이 필요합니다.redrive 실행. 다음 IAM 정책 예제는 다음과 같은 경우 상태 머신에 필요한 최소 권한을 부여합니다.redriving 실행. 교체하는 것을 잊지 마세요.italicized 텍스트를 리소스별 정보로 입력하세요.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:RedriveExecution" ], "Resource": "arn:aws:states:us-east-2:123456789012:execution:myStateMachine:*" } ] }

필요한 권한의 예를 들어,redrive 맵 실행은 을 참조하십시오에 대한 IAM 정책 예제 redriving 분산 맵.

Redriving 콘솔에서의 실행

할 수 있습니다.redrive 다음을 통한 적격 실행 Step Functions 콘솔.

예를 들어 상태 머신을 실행했는데 병렬 상태가 실행되지 않는다고 가정해 보겠습니다.

다음 이미지는 a를 보여줍니다. Lambda 병렬 상태 내의 Do 제곱 번호라는 호출 단계가 실패를 반환했습니다. 이로 인해 병렬 상태도 실패했습니다. 실행이 진행 중이거나 시작되지 않은 브랜치가 중지되고 상태 시스템 실행이 실패합니다.

스테이트 머신 실행 실패의 예제 그래프
To redrive 콘솔에서의 실행
  1. Step Functions 콘솔을 열고 실행을 실패한 기존 상태 시스템을 선택합니다.

  2. 상태 시스템 세부 정보 페이지의 실행에서 실패한 실행 인스턴스를 선택합니다.

  3. Redrive.

  4. 에서Redrive대화 상자, 선택 Redrive 실행.

    작은 정보

    실패한 실행의 실행 세부 정보 페이지에 있는 경우 다음 중 하나를 수행하십시오.redrive 실행:

    • 복구를 선택한 다음 선택합니다. Redrive 실패에서.

    • [액션] 을 선택한 다음 [선택] Redrive.

    주의하세요.redrive 동일한 스테이트 머신 정의 및 를 사용합니다ARN. 원래 실행 시도에서 실패한 단계부터 실행을 계속 실행합니다. 이 예제에서는 Parallel 상태 내의 Do square number 단계와 Wait 3 sec 브랜치입니다. 병렬 상태에서 이러한 실패한 단계의 실행을 다시 시작한 후 redrive 완료 단계가 계속 실행됩니다.

  5. 실행을 선택하여 실행 세부 정보 페이지를 엽니다.

    이 페이지에서 다음 작업의 결과를 볼 수 있습니다.redriven 실행. 예를 들어, 실행 요약 섹션에서 다음을 볼 수 있습니다. Redrive 개수는 실행이 발생한 횟수를 나타냅니다.redriven. 이벤트 섹션에서 다음을 확인할 수 있습니다.redrive 원래 실행 시도의 이벤트에 관련 실행 이벤트가 추가되었습니다. 예제는 ExecutionRedriven 이벤트를 참조하세요.

Redriving 실행: 사용 API

다음을 수행할 수 있습니다.redrive 를 사용하여 적격한 실행을 수행할 수 있습니다. RedriveExecutionAPI 이렇게 하면 실패, 중단 또는 시간 초과된 단계부터 실패한 표준 워크플로우 실행이 API 다시 시작됩니다.

에서 AWS Command Line Interface (AWS CLI) 에서 다음 명령을 실행하여 redrive 스테이트 머신 실행에 실패했습니다. 교체하는 것을 잊지 마세요.italicized 텍스트를 리소스별 정보로 입력하세요.

aws stepfunctions redrive-execution --execution-arn arn:aws:states:us-east-2:123456789012:execution:myStateMachine:foo

검토 중 redriven 처형

다음을 검토할 수 있습니다.redriven 콘솔에서 실행하거나APIs: GetExecutionHistory및 를 사용하여 실행합니다 DescribeExecution.

검사 redriven 콘솔에서의 실행
  1. Step Functions 콘솔을 열고 사용할 기존 스테이트 머신을 선택합니다.redriven 실행.

  2. 실행 세부 정보 페이지를 엽니다.

    이 페이지에서 다음 결과를 볼 수 있습니다.redriven 실행. 예를 들어, 실행 요약 섹션에서 다음을 볼 수 있습니다. Redrive 개수는 실행이 발생한 횟수를 나타냅니다.redriven. 이벤트 섹션에서 다음을 확인할 수 있습니다.redrive 원래 실행 시도의 이벤트에 관련 실행 이벤트가 추가되었습니다. 예제는 ExecutionRedriven 이벤트를 참조하세요.

검사 redriven 다음을 사용한 실행 APIs

만약 redriven 스테이트 머신 실행의 경우 다음 APIs 중 하나를 사용하여 에 대한 세부 정보를 볼 수 있습니다.redriven 실행. 교체하는 것을 잊지 마세요.italicized 텍스트를 리소스별 정보로 입력하세요.

  • GetExecutionHistory — 지정된 실행 기록을 이벤트 목록으로 반환합니다. 그러면 에 대한 세부 API 정보도 반환됩니다.redrive 실행 시도 (가능한 경우)

    에서 AWS CLI다음 명령을 실행합니다.

    aws stepfunctions get-execution-history --execution-arn arn:aws:states:us-east-2:123456789012:execution:myStateMachine:foo
  • DescribeExecution — 상태 시스템 실행에 대한 정보를 제공합니다. 실행, 실행 입력 및 출력, 실행과 관련된 상태 머신이 될 수 있습니다.redrive 세부 정보 (있는 경우) 및 관련 실행 메타데이터.

    에서 AWS CLI다음 명령을 실행합니다.

    aws stepfunctions describe-execution --execution-arn arn:aws:states:us-east-2:123456789012:execution:myStateMachine:foo

재시도 동작 redriven 처형

만약 redriven 재시도를 정의한 작업 워크플로 상태병렬 워크플로 상태, 또는 인라인 맵 상태에서 실행이 재실행되면 이러한 상태에 대한 재시도 횟수가 0으로 재설정되므로 최대 시도 횟수를 허용할 수 있습니다.redrive. 를 위해 redriven 실행의 경우 콘솔을 사용하여 이러한 상태의 개별 재시도 시도를 추적할 수 있습니다.

콘솔에서 개별 재시도 검사하기
  1. Step Functions 콘솔의 실행 세부 정보 페이지에서 재시도된 상태를 선택합니다.redrive.

  2. [재시도] 를 선택하고 redrives탭.

  3. 각 재시도 옆의 화살표 아이콘을 선택하면 세부 정보를 볼 수 있습니다. 재시도가 성공하면 드롭다운 상자에 나타나는 출력에서 결과를 볼 수 있습니다.

다음 이미지는 원래 실행 시도의 상태에 대해 수행된 재시도의 예와 redrives 해당 실행의 이 이미지에서는 원본에서 세 번의 재시도가 수행되고 redrive 실행 시도. 네 번째 실행에서 실행이 성공합니다.redrive 시도하고 16의 출력을 반환합니다.

세 번의 실패한 재시도와 네 번째 재시도의 성공을 보여주는 예시 스크린샷