

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

# Step Functions의 Workflow Studio를 사용하여 오류 처리 구성
<a name="workflow-studio-process-error"></a>

**상태 관리 및 데이터 트랜스포밍**  
[변수를 사용하여 상태 간 데이터 전달](workflow-variables.md)과 [JSONata를 사용하여 데이터 트랜스포밍](transforming-data.md)에 대해 알아봅니다.

Workflow Studio 시각적 편집기 내에서 오류 처리를 구성할 수 있습니다. 기본적으로 상태에서 오류를 보고하면 Step Functions로 인해 워크플로 실행 전체가 실패합니다. 작업 및 일부 흐름 상태의 경우 Step Functions에서 오류를 처리하는 방법을 구성할 수 있습니다.

오류 처리를 구성했더라도 여전히 일부 오류로 인해 워크플로 실행이 실패할 수 있습니다. 자세한 내용은 [Step Functions 워크플로의 오류 처리](concepts-error-handling.md) 단원을 참조하십시오. Workflow Studio에서 [Inspector 패널](workflow-studio.md#workflow-studio-components-formdefinition)의 **오류 처리** 탭에서 오류 처리를 구성합니다.

## 오류 재시도
<a name="workflow-studio-process-error-retry"></a>

작업 상태 및 [병렬 워크플로 상태](state-parallel.md) 흐름 상태에 규칙을 하나 이상 추가하여 오류가 발생할 때 작업을 재시도할 수 있습니다. 이러한 규칙을 *Retier*라고 합니다. Retrier를 추가하려면 **Retrier \$11** 상자에 있는 편집 아이콘을 선택한 다음 해당 옵션을 구성합니다.
+ (선택 사항) **설명**명 필드에 메모를 추가합니다. 워크플로에는 영향을 주지 않지만 워크플로에 주석을 다는 데 사용할 수 있습니다.
+ **오류** 필드에 커서를 올려 놓고 Retrier를 트리거할 오류를 선택하거나 사용자 지정 오류 이름을 입력합니다. 오류를 여러 개 선택하거나 추가할 수 있습니다.
+ (선택 사항) **간격**을 설정합니다. Step Functions가 처음 재시도하기 전까지의 시간(초)입니다. 추가 재시도는 **최대 시도 횟수** 및 **백오프 비율**로 구성할 수 있는 간격을 따릅니다.
+ (선택 사항) **최대 시도 횟수**를 설정합니다. 이는 Step Functions로 인해 실행이 실패하기 전까지의 최대 재시도 횟수입니다.
+ (선택 사항) **백오프 비율**을 설정합니다. 이 비율은 시도할 때마다 재시도 간격이 증가하는 정도를 결정하는 승수입니다.

**참고**  
모든 상태에서 모든 오류 처리 옵션을 사용할 수 있는 것은 아닙니다. Lambda Invoke에는 기본적으로 Retrier 하나가 구성되어 있습니다.

## 오류 포착
<a name="workflow-studio-process-error-catch"></a>

작업 상태와 [병렬 워크플로 상태](state-parallel.md) 및 [Map 워크플로 상태](state-map.md) 흐름 상태에 규칙을 하나 이상 추가하여 오류를 포착할 수 있습니다. 이러한 규칙을 *Catcher*라고 합니다. Catcher를 추가하려면 **새 Catcher 추가**를 선택한 다음 해당 옵션을 구성합니다.
+ (선택 사항) **설명**명 필드에 메모를 추가합니다. 워크플로에는 영향을 주지 않지만 워크플로에 주석을 다는 데 사용할 수 있습니다.
+ **오류** 필드에 커서를 올려 놓고 Catcher를 트리거할 오류를 선택하거나 사용자 지정 오류 이름을 입력합니다. 오류를 여러 개 선택하거나 추가할 수 있습니다.
+ **폴백 상태** 필드에서 [폴백 상태](concepts-error-handling.md#error-handling-fallback-states)를 선택합니다. 이 상태는 오류가 포착되면 워크플로가 다음으로 이동하는 상태입니다.
+ (선택 사항) **ResultPath** 필드에 `ResultPath` 필터를 추가하여 원래 상태 입력에 오류를 추가합니다. [`ResultPath`](input-output-resultpath.md)는 유효한 [JsonPath](https://datatracker.ietf.org/wg/jsonpath/about/)여야 합니다. 이는 폴백 상태로 전송됩니다.

## 시간 초과
<a name="workflow-studio-process-error-timeout"></a>

작업 상태의 제한 시간을 구성하여 실패하기 전에 상태를 실행할 수 있는 최대 시간(초)을 설정할 수 있습니다. 제한 시간을 사용하여 실행 멈춤을 방지합니다. 제한 시간을 구성하려면 실행이 실패하기 전에 상태가 기다려야 하는 시간(초)을 입력합니다. 제한 시간에 대한 자세한 내용은 [Task 워크플로 상태](state-task.md) 상태의 `TimeoutSeconds` 섹션을 참조하세요.

## HeartbeatSeconds
<a name="workflow-studio-process-error-heartbeat"></a>

작업에서 보내는 *하트비트* 또는 정기 알림을 구성할 수 있습니다. 하트비트 간격을 설정했지만 상태에서 구성된 간격으로 하트비트 알림을 전송하지 않으면 작업이 실패로 표시됩니다. 하트비트를 구성하려면 0이 아닌 양의 정수로 시간(초)을 설정합니다. 자세한 내용은 [Task 워크플로 상태](state-task.md)의 `HeartBeatSeconds` 섹션을 참조하세요.