Depuración de valores controlados de CloudWatch Synthetics mediante X-Ray - AWS X-Ray

Depuración de valores controlados de CloudWatch Synthetics mediante X-Ray

CloudWatch Synthetics es un servicio completamente administrado que le permite supervisar sus API y puntos de enlace mediante valores controlados con scripts que se ejecutan 24 horas al día, una vez por minuto.

Puede personalizar las scripts de un canary para comprobar si hay cambios en:

  • Disponibilidad

  • Latencia

  • Transacciones

  • Vínculos rotos o inactivos

  • Finalizaciones de tareas paso a paso

  • Errores de carga de páginas

  • Latencias de carga para activos de la interfaz de usuario

  • Flujos complejos del asistente

  • Flujos de compras en la aplicación

Los canaries siguen las mismas rutas y realizan las mismas acciones y comportamientos que sus clientes y verifican de forma continua la experiencia del cliente.

Para obtener más información acerca de la configuración de las pruebas de Synthetics, consulte Uso de Synthetics para crear y administrar canaries.

Ejemplo de nodo de canary en el mapa de seguimiento de X-Ray.

Los siguientes ejemplos muestran ejemplos comunes de casos de uso para los problemas de depuración que plantean los canaries de Synthetics. Cada ejemplo muestra una estrategia clave para la depuración mediante el mapa de rastros o la consola de X-Ray Analytics.

Para obtener más información acerca de cómo leer e interactuar con el mapa de rastros, consulte Ver el mapa de servicio.

Para obtener más información acerca de cómo leer e interactuar con la consola de X-Ray Analytics, consulte Interactuar con la consola de AWS X-Ray X-Ray Analytics.

Consultar canarios con un informe de errores mayor en el mapa de rastros

Para ver que canarios tienen un aumento de errores, fallos, tasas de limitación o tiempos de respuesta lentos en su mapa de rastros de X-Ray, puede destacar los nodos de clientes con canarios de Synthetics mediante el filtro Client::Synthetic. Al hacer clic en un nodo se muestra la distribución del tiempo de respuesta de toda la solicitud. Al hacer clic en un borde entre dos nodos, se muestran detalles sobre las solicitudes que viajaron por esa conexión. También puede ver los nodos inferidos “remotos” de los servicios posteriores relacionados en su mapa de rastros.

Al hacer clic en el nodo de Synthetics, en el panel lateral aparece el botón Ver en Synthetics, que te redirige a la consola de Synthetics, donde puede comprobar los valores controlados.

Ejemplo de un nodo de canario en el mapa de rastros de X-Ray con detalles de servicio.

Uso de mapas de detalles de rastro para rastros individuales con el fin de consultar cada solicitud con detalle

Para determinar qué servicio produce la mayor latencia o que causa un error, invoque el mapa de detalles de rastro al seleccionar el rastreo en el mapa de rastro. Los mapas de detalles de rastro individuales muestran la ruta integral de una sola solicitud. Utilice esto para comprender los servicios invocados y visualizar los servicios ascendentes y descendentes.

Ejemplo de nodo de canario en el mapa de detalles de rastro de X-Ray.

Determinar la causa raíz de los errores continuos en los servicios ascendentes y descendentes

Una vez que reciba una alarma de CloudWatch de fallos en un valor controlado de Synthetics, utilice el modelado estadístico en los datos de rastro en X-Ray para determinar la causa raíz probable del problema en la consola de X-Ray Analytics. En la consola de Analytics, la tabla Causa raíz del tiempo de respuesta muestra las rutas de las entidades registradas. X-ray determina qué ruta del rastro del usuario es la causa más probable del tiempo de respuesta. El formato indica una jerarquía de entidades detectadas, que termina en una causa raíz de tiempo de respuesta.

El siguiente ejemplo muestra que la prueba de Synthetics para la API “XXX” que se ejecuta en la puerta de enlace de la API falla debido a una excepción de capacidad de rendimiento de la tabla de Amazon DynamoDB.

Ejemplo de nodo de canary en el mapa de seguimiento de X-Ray.
Ejemplo de causa raíz del nodo del canary.
Ejemplo de filtro de anotación que indica el nodo de canario.

Identificar los cuellos de botella y las tendencias de rendimiento

Puede ver las tendencias del rendimiento de su punto de conexión a lo largo del tiempo mediante el tráfico continuo de sus valores controlados de Synthetics para rellenar un mapa de detalles del rastro durante un período de tiempo.

Ejemplo de filtro de anotación que indica el nodo de canario.

Comparar las tasas de error y de latencia antes y después de los cambios

Señale el momento en el que se produjo un cambio para correlacionar ese cambio a un aumento de los problemas captados por los canarios. Utilice la consola de X-Ray Analytics para definir los intervalos de tiempo anteriores y posteriores como conjuntos de rastros, creando una diferenciación visual en la distribución del tiempo de respuesta.

Ejemplo de filtro de anotación que indica el nodo de canario.

Determinar la cobertura de canary necesaria para todas las API y URL

Utilice X-Ray Analytics para comparar la experiencia de los canaries con los usuarios. La interfaz de usuario a continuación muestra una línea de tendencia azul para los canaries y una línea verde para los usuarios. También puede identificar las dos URL de tres que no tienen pruebas de canary.

Ejemplo de filtro de anotación que indica el nodo de canario.

Utilizar los grupos para centrarse en las pruebas de synthetics

Puede crear un grupo de X-Ray utilizando una expresión de filtro para centrarse en un conjunto determinado de flujos de trabajo, como las pruebas de Synthetics para la aplicación “www” que se está ejecutando en AWS Elastic Beanstalk. Utilice las palabras clave complejas service() y edge() para filtrar por servicios y bordes.

ejemplo Expresión de filtro de grupo
"edge(id(name: "www", type: "client::Synthetics"), id(name: "www", type: "AWS::ElasticBeanstalk::Environment"))"
Nodos de ejemplo para www de Elastic Beanstalk.