Canary 수정
    • PDF

    Canary 수정

    • PDF

    기사 요약

    Classic/VPC 환경에서 이용 가능합니다.

    활성화된 Canary 설정을 수정합니다.

    요청

    요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

    메서드URI
    PATCH/products/{product-id}/apis/{api-id}/stages/{stage-id}/canary

    요청 헤더

    API Gateway에서 공통으로 사용하는 헤더에 대한 자세한 내용은 API Gateway 요청 헤더를 참조해 주십시오.

    요청 경로 파라미터

    파라미터에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    product-idStringRequiredAPI에 연결된 Product ID
    • 1~10자
    api-idStringRequiredProduct에 생성된 API ID
    • 1~10자
    stage-idStringRequiredAPI에 생성된 Stage ID
    • 1~10자

    요청 구문

    요청 구문은 다음과 같습니다.

    {
      "canaryCacheTtlSec" : 0,
      "useDistributionRate" : true,
      "canaryConditions" : [ {
        "parameterName" : "parameterName",
        "parameterCode" : "REQUEST_HEADER",
        "parameterValue" : "parameterValue"
      } ],
      "canaryEndpointDomain" : "canaryEndpointDomain",
      "canaryThrottleRps" : 0,
      "canaryDistributionRate" : 0
    }
    

    요청 바디

    요청 바디에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    canaryCacheTtlSecStringOptional캐시를 유지할 초 (sec)
    • 1~3600
    useDistributionRateBooleanRequired요청을 Stage와 Canary에 분배하는 방법 결정
    • true | false
      • true: Percentage 분배 방식(Canary 요청의 실행 비율 지정)
      • false: Condition 분배 방식(설정한 헤더 및 쿼리 스트링과 요청이 동일할 때 Canary 요청 실행)
    canaryConditions[]ObjectConditionalCanary 테스트 요청 정보
    • useDistributionRatefalse인 경우 필수
    canaryConditions[].parameterNameStringConditional파라미터 이름
    • useDistributionRatefalse인 경우 필수
    canaryConditions[].parameterCodeStringConditional파라미터 유형
    • REQUEST_HEADER | REQUEST_QUERY
      • REQUEST_HEADER: 헤더 유형 파라미터
      • REQUEST_QUERY: 쿼리 유형 파라미터
    • useDistributionRatefalse인 경우 필수
    canaryConditions[].parameterValueStringConditional파라미터 요청 값
    • useDistributionRatefalse인 경우 필수
    canaryEndpointDomainStringRequiredCanary의 Endpoint 도메인을 설정
    canaryThrottleRpsStringOptional백엔드 서버를 보호하기 위해, 등록한 메서드별로 제한할 초당 요청 수
    canaryDistributionRateFloatConditionalCanary 요청의 실행 비율
    • useDistributionRatetrue인 경우 필수

    요청 예시

    요청 예시는 다음과 같습니다.

    curl -X PATCH 'https://apigateway.apigw.ntruss.com/api/v1/products/{product-id}/apis/{api-id}/stages/{stage-id}/canary' \
    --header 'Content-Type: application/json' \
    --header 'x-ncp-apigw-timestamp: {Timestamp}' \
    --header 'x-ncp-iam-access-key: {Access Key}' \
    --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'
    --data '{
      "canaryCacheTtlSec" : 0,
      "useDistributionRate" : true,
      "canaryConditions" : [ {
        "parameterName" : "parameter-***",
        "parameterCode" : "REQUEST_HEADER",
        "parameterValue" : "*****"
      } ],
      "canaryEndpointDomain" : "canaryEndpointDomain",
      "canaryThrottleRps" : 6,
      "canaryDistributionRate" : 1.4658129
    }'
    

    응답

    응답 형식을 설명합니다.

    응답 구문

    구문은 다음과 같습니다.

    {
      "stageId": "stageId",
      "canaryCertificateId": "canaryCertificateId",
      "canaryDeploymentNo": 0,
      "canaryDistributionRate": 0.0,
      "canaryCacheTtlSec": 0,
      "canaryThrottleRps": 0,
      "canaryEndpointDomain": "canaryEndpointDomain",
      "canaryDeployedTime": "2024-05-08T09:46:57.364Z",
      "canaryDeploymentDescription": "canaryDeploymentDescription",
      "deployedStageDeploymentNo": 0,
      "useDistributionRate": true,
      "canaryConditions": [
        {
          "parameterCode": "parameterCode",
          "parameterName": "parameterName",
          "parameterValue": "parameterValue"
        }
      ]
    }
    

    응답 상태 코드

    API Gateway에서 공통으로 사용하는 응답 상태 코드에 대한 자세한 내용은 API Gateway 응답 상태 코드를 참조해 주십시오.

    응답 예시

    응답 예시는 다음과 같습니다.

    {
      "stageId": "*****7mhdv",
      "canaryCertificateId": "",
      "canaryDeploymentNo": 251437,
      "canaryDistributionRate": 1.4658129,
      "canaryCacheTtlSec": 1,
      "canaryThrottleRps": 6,
      "canaryEndpointDomain": "NONE",
      "canaryDeployedTime": "2024-05-08T09:46:57.364Z",
      "canaryDeploymentDescription": "",
      "deployedStageDeploymentNo": 251381,
      "useDistributionRate": true,
      "canaryConditions": [
        {
          "parameterCode": "REQUEST_HEADER",
          "parameterName": "****",
          "parameterValue": "****"
        }
      ]
    }
    

    이 문서가 도움이 되었습니까?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.