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: