Dynamic Instrumentation es una característica de apoyo para las bibliotecas de rastreo de Datadog. Si ya estás utilizando APM para recopilar trazas (traces) para tu aplicación, asegúrate de que tu Agent y biblioteca de rastreo están en la versión requerida. A continuación, ve directamente a la activación de Dynamic Instrumentation en el paso 4.

Requisitos previos

Recomendado, autocompletar y buscar (en Vista previa) está activado.

Instalación

  1. Instala o actualiza tu Agent a la versión 7.45.0 o posterior.

  2. Si aún no tienes APM habilitado, en tu configuración del Agent, establece la variable de entorno DD_APM_ENABLED en true y escuchando en el puerto 8126/TCP.

  3. Instala ddtrace, que proporciona tanto rastreo como Dynamic Instrumentation:

    pip install ddtrace
    

    Nota: Dynamic Instrumentation está disponible en la biblioteca ddtrace a partir de la versión 2.2.0.

  4. Ejecuta tu servicio conDynamic Instrumentation habilitada, al configurar la variable de entorno DD_DYNAMIC_INSTRUMENTATION_ENABLED en true. Especifica las etiquetas de servicio unificado DD_SERVICE, DD_ENV y DD_VERSION para que puedas filtrar y agrupar tus instrumentaciones y dirigirte a los clientes activos a través de estas dimensiones.

    Invoca tu servicio:

    export DD_SERVICE=<YOUR_SERVICE>
    export DD_ENV=<YOUR_ENV>
    export DD_VERSION=<YOUR_VERSION>
    export DD_DYNAMIC_INSTRUMENTATION_ENABLED=true
    ddtrace-run python -m myapp.py
    
    from ddtrace.debugging import DynamicInstrumentation
    
    DynamicInstrumentation.enable()
    

  5. Después de iniciar tu servicio con la Dynamic Instrumentation activada, puedes empezar a utilizarlo en la página APM > Dynamic Instrumentation.

Configuración

Configurar Dynamic Instrumentation utilizando las siguientes variables de entorno:

Variable de entornoTipoDescripción
DD_DYNAMIC_INSTRUMENTATION_ENABLEDBooleanoSelecciona true para activar Dynamic Instrumentation.
DD_SERVICECadenaEl nombre de servicio, por ejemplo, web-backend.
DD_ENVCadenaEl nombre de entorno, por ejemplo, production.
DD_VERSIONCadenaLa versión de tu servicio.
DD_TAGSCadenaEtiquetas para aplicar a los datos producidos. Debe ser una lista de <key>:<value> separada por comas como: layer:api, team:intake.

¿Qué hacer a continuación?

Consulta Dynamic Instrumentation para obtener información sobre cómo añadir instrumentaciones y explorar e indexar los datos.

Referencias adicionales

Más enlaces, artículos y documentación útiles:

PREVIEWING: guacbot/translation-pipeline