

# API Gateway API에 대한 AWS X-Ray 샘플링 규칙 구성
<a name="apigateway-configuring-xray-sampling-rules"></a>

AWS X-Ray 콘솔 또는 SDK를 사용하여 Amazon API Gateway API에 대한 샘플링 규칙을 구성할 수 있습니다. 샘플링 규칙은 X-Ray가 API에 대해 기록해야 하는 요청을 지정합니다. 샘플링 규칙을 사용자 지정하여 기록할 데이터의 양을 제어하고 코드를 수정하거나 재배포하는 대신 즉석에서 샘플링 동작을 수정할 수 있습니다.

X-Ray 샘플링 규칙을 지정하기 전에 X-Ray 개발자 안내서의 다음 주제를 읽으십시오.
+ [샘플링 규칙 구성](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray-interface-console.html#xray-console-sampling)
+ [X-Ray API에 샘플링 규칙 사용](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray-interface-api.html#xray-api-sampling)

**Topics**
+ [API Gateway API에 대한 X-Ray 샘플링 규칙 옵션 값](#apigateway-xray-sampling-rule-options)
+ [X-Ray 샘플링 규칙 예제](#apigateway-xray-sampling-rules-examples)

## API Gateway API에 대한 X-Ray 샘플링 규칙 옵션 값
<a name="apigateway-xray-sampling-rule-options"></a>

다음 X-Ray 샘플링 옵션은 API Gateway와 관련됩니다. 문자열 값은 와일드카드를 사용하여 단일 문자(?) 또는 0개 이상의 문자(\*)와 일치시킬 수 있습니다. **리저버** 및 **속도** 설정의 사용 방법에 대한 상세 설명을 포함한 자세한 내용은 [샘플링 규칙 구성](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray-interface-console.html#xray-console-sampling)을 참조하세요.
+ **규칙 이름**(문자열) - 규칙의 고유한 이름입니다.
+ **우선 순위**(1\~9999 사이의 정수) - 샘플링 규칙의 우선 순위입니다. 서비스에서 규칙의 우선 순위를 오름차순으로 평가하며 일치하는 첫 번째 규칙으로 샘플링을 결정합니다.
+ **리저버**(음수가 아닌 정수) - 고정 속도를 적용하기 전, 초당 계측과 일치하는 요청의 고정 수입니다. 리저버는 서비스에서 직접 사용하지 않지만 규칙을 총체적으로 사용하여 모든 서비스에 적용됩니다.
+ **속도**(0\~100 사이의 숫자) - 리저버가 소진된 후, 계측과 일치하는 요청의 백분율입니다.
+ **서비스 이름**(문자열) - **{{{api-name}}}/{{{stage-name}}}** 형식으로 표시된 API 단계 이름입니다. 예를 들어, [PetStore](api-gateway-create-api-from-example.md) 샘플 API를 `test`라는 단계로 배포하려는 경우, 샘플링 규칙에서 지정할 **서비스 이름** 값은 **pets/test**일 수 있습니다.
+ **서비스 유형**(문자열) - API Gateway API의 경우 **AWS::ApiGateway::Stage** 또는 **AWS::ApiGateway::\***를 지정할 수 있습니다.
+ **호스트**(문자열) - HTTP 호스트 헤더에 있는 호스트 이름입니다. 이 호스트 이름을 **\***으로 설정하여 모든 호스트 이름에 대해 일치시킵니다. 또는 일치시킬 전체 또는 부분적 호스트 이름(예: **api.example.com** 또는 **\*.example.com**)을 지정할 수 있습니다.
+ **리소스 ARN**(문자열) - API 단계의 ARN입니다(예: **arn:aws:apigateway:{{region}}::/restapis/{{api-id}}/stages/{{stage-name}}**).

  단계 이름은 콘솔이나 API Gateway CLI 또는 API에서 가져올 수 있습니다. ARN 형식에 대한 자세한 내용은 [Amazon Web Services 일반 참조](https://docs.aws.amazon.com/general/latest/gr/) 섹션을 참조하세요.
+ **HTTP 메서드**(문자열) - 샘플링할 메서드입니다(예: **GET**).
+ **URL 경로**(문자열) - 요청의 URL 경로입니다.
+ (선택 사항) **속성**(키 및 값) - 원본 HTTP 요청의 헤더입니다(예: **Connection**, **Content-Length** 또는 **Content-Type**). 각 속성 값은 최대 32자일 수 있습니다.

## X-Ray 샘플링 규칙 예제
<a name="apigateway-xray-sampling-rules-examples"></a>

**샘플링 규칙 예제 \#1**

이 규칙은 `GET` 단계에서 `testxray` API에 대한 모든 `test` 요청을 샘플링합니다.
+ **규칙 이름 - ****test-sampling**
+ **우선 순위 - ****17**
+ **리저버 크기 - ****10**
+ **고정 비율 - ****10**
+ **서비스 이름 - ****testxray/test**
+ **서비스 유형 - ****AWS::ApiGateway::Stage**
+ **HTTP 메서드 - ****GET**
+ **리소스 ARN - ****\***
+ **호스트 - ****\***

**샘플링 규칙 예제 \#2**

이 규칙은 `testxray` 단계에서 `prod` API에 대한 모든 요청을 샘플링합니다.
+ **규칙 이름 - ****prod-sampling**
+ **우선 순위 - ****478**
+ **리저버 크기 - ****1**
+ **고정 비율 - ****60**
+ **서비스 이름 - ****testxray/prod**
+ **서비스 유형 - ****AWS::ApiGateway::Stage**
+ **HTTP 메서드 - ****\***
+ **리소스 ARN - ****\***
+ **호스트 - ****\***
+ **속성** - **{}**