Actualización de un lanzamiento canary - Amazon API Gateway

Actualización de un lanzamiento canary

Una vez que se implemente el lanzamiento canary, es posible que quiera ajustar el porcentaje de tráfico de canary o que desee habilitar o deshabilitar el uso de la caché de etapas para optimizar el rendimiento de las pruebas. También puede modificar las variables de etapa que se utilizan en el lanzamiento canary cuando se actualiza el contexto de ejecución. Para realizar este tipo de actualizaciones, llame a la operación stage:update utilizando valores nuevos en canarySettings.

Puede actualizar un lanzamiento canary con la consola de API Gateway, el comando update-stage de la AWS CLI o un AWS SDK.

Actualización de un lanzamiento canary con la consola de API Gateway

Si desea utilizar la consola de API Gateway para actualizar la configuración de canary de una etapa, haga lo siguiente:

Para actualizar la configuración de canary actual
  1. Inicie sesión en la consola de API Gateway y elija la API de REST actual.

  2. En el panel de navegación principal, elija Etapas y, a continuación, elija la etapa actuala.

  3. Elija la pestaña Canary y, a continuación, elija Editar. Puede que tenga que elegir el botón de flecha hacia la derecha para mostrar la pestaña Canary.

  4. Actualice Distribución de solicitudes aumentando o reduciendo el porcentaje en un valor comprendido entre 0,0 y 100,0 (ambos incluidos).

  5. Active o desactive la casilla de verificación Caché de etapa.

  6. Agregue, elimine o modifique las Variables de etapa de Canary.

  7. Elija Guardar.

Actualización de un lanzamiento canary a través de la AWS CLI

Si desea utilizar la AWS CLI para actualizar un lanzamiento canary, llame al comando update-stage.

Para habilitar o desactivar el uso de una caché de etapas en el lanzamiento canary, llame al comando update-stage, tal y como se muestra a continuación:

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations op=replace,path=/canarySettings/useStageCache,value=true

Para ajustar el porcentaje de tráfico del lanzamiento canary, llame a update-stage para reemplazar el valor /canarySettings/percentTraffic de stage.

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations op=replace,path=/canarySettings/percentTraffic,value=25.0

Para actualizar las variables de etapa del lanzamiento canary agregando, sustituyendo o quitando una variable de etapa:

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations '[{ "op": "replace", "path": "/canarySettings/stageVariableOverrides/newVar", "value": "newVal" }, { "op": "replace", "path": "/canarySettings/stageVariableOverrides/var2", "value": "val4" }, { "op": "remove", "path": "/canarySettings/stageVariableOverrides/var1" }]'

Puede realizar todas las actualizaciones anteriores combinando las operaciones en un solo valor patch-operations:

aws apigateway update-stage \ --rest-api-id {rest-api-id} \ --stage-name '{stage-name}' \ --patch-operations '[{ "op": "replace", "path": "/canarySettings/percentTraffic", "value": "20.0" }, { "op": "replace", "path": "/canarySettings/useStageCache", "value": "true" }, { "op": "remove", "path": "/canarySettings/stageVariableOverrides/var1" }, { "op": "replace", "path": "/canarySettings/stageVariableOverrides/newVar", "value": "newVal" }, { "op": "replace", "path": "/canarySettings/stageVariableOverrides/val2", "value": "val4" }]'