Gracias a la integración de APM con la monitorización Synthetic, puedes ir desde un test potencialmente fallido a la causa de la falla analizando la traza (trace) generada al ejecutar el test.
Contar con datos específicos de la red (gracias al test), además de información sobre backend, infraestructura y logs (gracias a la traza), cote permitirá conocer con mucho más detalle cómo se comportan tu aplicación, tal como lo experimentan tus usuarios.
Uso
Las indicaciones de esta página se aplican a todos los tests de API HTTP, tests de API de varios pasos y tests de navegador para APM.
Requisitos previos
- Tu servicio y el endpoint en el que se ejecuta tu test, se rastrean en APM.
- Tu servicio utiliza un servidor HTTP.
- Tu servidor HTTP utiliza una biblioteca compatible con el rastreo distribuido.
Crea un test que alcance a tu servidor HTTP rastreado y Datadog vinculará automáticamente la traza generada por tu servidor con el resultado de test correspondiente.
Para vincular resultados de tests de navegador, permite las URL a las que quieres añadir las cabeceras de integración APM. Puedes hacerlo en los Parámetros de Synthetic. Utiliza * para los comodines:
https://*.datadoghq.com/*
Bibliotecas compatibles
Las siguientes bibliotecas de rastreo de Datadog son compatibles:
¿Cómo se vinculan las trazas con los tests?
Datadog utiliza el protocolo de rastreo distribuido y configura las siguientes cabeceras HTTP:
x-datadog-trace-id- Generado a partir del backend de monitorización Synthetic. Permite a Datadog vincular la traza con el resultado del test.
x-datadog-parent-id: 0- Para tener tests Synthetic como tramo (span) raíz de la traza generada.
x-datadog-origin: synthetics- Para identificar las trazas generados a partir de tus tests de API. Los tramos de estas trazas están etiquetados (tag) con
ingestion_reason:synthetics. x-datadog-origin: synthetics-browser- Para identificar las trazas generadas a partir de tus tests de navegador. Estas trazas están etiquetadas con
ingestion_reason:synthetics-browser. x-datadog-sampling-priority: 1- Para asegurarte de que el Agent conserva la traza.
traceparent: [version]-[trace id]-[parent id]-[trace flags]version: La especificación asume que la versión se configura en 00.trace id: ID de traza de 128 bits, hexadecimal en 32 caracteres. El ID de traza de origen es de 64 bits para conservar la compatibilidad con APM.parent id: ID de tramo de 64 bits, hexadecimal en 16 caracteres.trace flags: Muestreado (01) o no muestreado (00)- Ejemplo:
traceparent: 00-00000000000000008448eb211c80319c-b7ad6b7169203331s-01
¿Durante cuánto tiempo se conservan las trazas?
Estas trazas se conservan durante 15 días con el filtro de conservación Synthetics Default, igual que tus clásicas trazas APM.
Referencias adicionales
Más enlaces, artículos y documentación útiles: