

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

# Step Functions에서 사용할 워크플로 상태 알아보기
<a name="workflow-states"></a>

*상태*는 상태 시스템의 요소입니다. 상태는 *이름*으로 참조되는데, 이름은 문자열일 수 있으며 전체 상태 머신 범위 내에서 고유해야 합니다.

상태는 호출 또는 이전 상태에서 입력을 받습니다. 상태는 입력을 필터링한 후 다음 상태로 전송되는 출력을 조작할 수 있습니다.

다음 예는 AWS Lambda 함수를 간접 호출하는 `HelloWorld`라는 상태입니다.

```
"HelloWorld": {
  "Type": "Task",
  "Resource": "arn:aws:lambda:region:123456789012:function:HelloFunction",
  "Next": "AfterHelloWorldState",
  "Comment": "Run the HelloWorld Lambda function"
}
```

개별 상태는 입력을 기반으로 결정하고 입력에서 작업을 수행하며 출력을 다른 상태로 전달할 수 있습니다. 에서는 Amazon States Language(ASL)로 워크플로를 AWS Step Functions정의합니다. Step Functions 콘솔은 애플리케이션 로직을 시각화하는 데 도움이 되도록 상태 시스템의 그래픽 표현을 제공합니다.

다음 스크린샷은 Workflow Studio에서 가장 많이 사용되는 **작업**과 7가지 **흐름** 상태를 보여줍니다.

![\[Workflow Studio에서 많이 사용되는 작업 및 흐름 상태를 보여주는 예시 스크린샷\]](http://docs.aws.amazon.com/ko_kr/step-functions/latest/dg/images/wfs-actions-flow-panel.png)


상태는 다음과 같은 많은 일반 기능을 공유합니다.
+ 상태 유형을 나타내는 `Type` 필드
+ 상태에 대한 사람이 읽을 수 있는 메모나 설명이 있는 선택적 `Comment` 필드
+ 각 상태(`Succeed` 또는 `Fail` 상태 제외)에는 워크플로의 다음 상태를 지정하는 `Next` 필드가 필요합니다. `Choice` 상태에는 실제로 각 선택 규칙 내에 둘 이상의 `Next`가 있을 수 있습니다. 또는 `End` 필드를 true로 설정하여 상태가 터미널 상태가 될 수 있습니다.

특정 상태 유형에는 추가 필드가 필요하거나 일반 필드 사용법을 재정의할 수 있습니다.

**워크플로의 로그 정보에 액세스하려면**
+ 표준 워크플로를 만들고 실행한 후에는 Step Functions 콘솔의 실행 세부 정보 페이지를 확인하여 각 상태, 입력 및 출력, 활성 시기 및 기간에 대한 정보에 액세스할 수 있습니다.
+ Express 워크플로 실행을 만들고 실행한 후 로깅을 활성화하면 Step Functions 콘솔 또는 Amazon CloudWatch Logs에서 실행 내역을 확인할 수 있습니다.

 실행 보기 및 디버깅에 대한 자세한 내용은 [워크플로 실행 보기](concepts-view-execution-details.md) 및 [CloudWatch Logs를 사용하여 Step Functions에서 실행 기록 로깅](cw-logs.md) 섹션을 참조하세요.

## 워크플로 상태 참조 목록
<a name="states-ref-list"></a>

상태는 Workflow Studio에서 **Task 상태**라고도 하는 **작업**과 7개의 **흐름 상태**로 구분됩니다. **작업 상태** 또는 Workflow Studio의 작업을 사용하여 타사 서비스를 호출하고, 함수를 호출하고, 수백 개의 AWS서비스 엔드포인트를 사용할 수 있습니다. **흐름 상태**를 사용하면 워크플로를 지시하고 제어할 수 있습니다. 모든 상태는 이전 상태에서 입력을 받으며, 많은 상태가 입력 필터링 및 워크플로의 다음 상태로 전달되는 출력에 대한 필터링/변환을 제공합니다.
+ [Task 워크플로 상태](state-task.md): 상태 시스템에서 수행할 단일 작업 단위를 추가합니다.
+ [Choice 워크플로 상태](state-choice.md): 워크플로에 실행 브랜치 사이에 선택 항목을 추가합니다.
+ [병렬 워크플로 상태](state-parallel.md): 워크플로에 병렬 실행 브랜치를 추가합니다.
+ [Map 워크플로 상태](state-map.md): 입력 배열의 요소마다 단계를 동적으로 반복합니다. `Parallel` 흐름 상태와 달리 상태는 `Map` 상태는 상태 입력에 있는 배열의 여러 항목에 같은 단계를 실행합니다.
+ [Pass 워크플로 상태](state-pass.md): 상태 입력을 출력으로 전달합니다. 필요에 따라 고정된 데이터를 필터링, 변환 및 출력에 추가합니다.
+ [Wait 워크플로 상태](state-wait.md): 워크플로를 일정 시간 동안 또는 지정된 시간이나 날짜까지 일시 중지합니다.
+ [Succeed 워크플로 상태](state-succeed.md): 워크플로를 성공적으로 중지합니다.
+ [Fail 워크플로 상태](state-fail.md): 실패 시 워크플로를 중지합니다.