

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

# Amazon EMR에서 향상된 단계 디버깅
<a name="emr-enhanced-step-debugging"></a>

Amazon EMR 단계가 실패하고 AMI 버전 5.x 이상의 단계 API 작업을 사용하여 작업을 제출한 경우 Amazon EMR은 경우에 따라 단계 실패의 근본 원인을 식별하고 관련 로그 파일의 이름 및 애플리케이션 스택 추적의 일부와 함께 해당 원인을 API를 통해 반환할 수 있습니다. 예를 들어, 다음 실패를 식별할 수 있습니다.
+ 출력 디렉터리와 같은 일반적인 Hadoop 오류가 있거나, 입력 디렉터리가 없거나, 애플리케이션의 메모리가 부족합니다.
+ 호환되지 않는 Java 버전으로 컴파일된 애플리케이션과 같은 Java 오류가 있거나 찾을 수 없는 기본 클래스로 실행됩니다.
+ Amazon S3에 저장된 객체에 액세스하는 중 문제가 발생했습니다.

[DescribeStep](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_DescribeStep.html) 및 [ListSteps](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_ListSteps.html) API 작업을 통해 이 정보를 사용할 수 있습니다. 해당 작업에서 반환된 [StepSummary](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_StepSummary.html)의 [FailureDetails](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_FailureDetails.html) 필드. FailureDetails 정보에 액세스하려면 AWS CLI, 콘솔 또는 AWS SDK를 사용합니다.

------
#### [ Console ]

새 Amazon EMR 콘솔은 단계 디버깅을 제공하지 않습니다. 하지만 다음 단계를 통해 클러스터 종료 세부 정보를 볼 수 있습니다.

**콘솔을 사용하여 실패 세부 정보를 보는 방법**

1. 에 로그인 AWS Management Console하고 [https://console.aws.amazon.com/emr](https://console.aws.amazon.com/emr) Amazon EMR 콘솔을 엽니다.

1. 왼쪽 탐색 창의 **EMR on EC2**에서 **클러스터**를 선택하고 보려는 클러스터를 선택합니다.

1. 클러스터 세부 정보 페이지의 **요약** 섹션에 있는 **상태** 값을 기록합니다. **오류로 종료** 상태인 경우 텍스트 위에 마우스를 올려 놓으면 클러스터 실패 세부 정보를 볼 수 있습니다.

------
#### [ CLI ]

**를 사용하여 실패 세부 정보를 보려면 AWS CLI**
+ 를 사용하여 단계의 실패 세부 정보를 가져오려면 `describe-step` 명령을 AWS CLI사용합니다.

  ```
  aws emr describe-step --cluster-id j-1K48XXXXXHCB --step-id s-3QM0XXXXXM1W
  ```

  다음과 비슷한 출력이 표시될 것입니다.

  ```
  {
    "Step": {
      "Status": {
        "FailureDetails": {
          "LogFile": "s3://amzn-s3-demo-bucket/logs/j-1K48XXXXXHCB/steps/s-3QM0XXXXXM1W/stderr.gz",
          "Message": "org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory s3://amzn-s3-demo-bucket/logs/beta already exists",
          "Reason": "Output directory already exists."
        },
        "Timeline": {
          "EndDateTime": 1469034209.143,
          "CreationDateTime": 1469033847.105,
          "StartDateTime": 1469034202.881
        },
        "State": "FAILED",
        "StateChangeReason": {}
      },
      "Config": {
        "Args": [
          "wordcount",
          "s3://amzn-s3-demo-bucket/input/input.txt",
          "s3://amzn-s3-demo-bucket/logs/beta"
        ],
        "Jar": "s3://amzn-s3-demo-bucket/jars/hadoop-mapreduce-examples-2.7.2-amzn-1.jar",
        "Properties": {}
      },
      "Id": "s-3QM0XXXXXM1W",
      "ActionOnFailure": "CONTINUE",
      "Name": "ExampleJob"
    }
  }
  ```

------