Para probar la vista previa de la inyección automática de SDK RUM, sigue las instrucciones de configuración que aparecen a continuación.

Información general

La instrumentación automática RUM Datadog (del lado del servidor) te permite optar por Real User Monitoring (RUM) automáticamente instrumentando aplicaciones web servidas a través de un servidor web o proxy.

La instrumentación automática RUM funciona inyectando un scriptlet JavaScript del SDK RUM en las respuestas HTML que se sirven a través de un servidor web o proxy.

Una vez instrumentadas tus aplicaciones, puedes configurar tu aplicación RUM en Datadog.

Limitaciones

La funcionalidad disponible tiene las siguientes limitaciones importantes:

  • Si se aplica un proxy para el tráfico comprimido, el método de instrumentación automática no puede inyectar el scriptlet JS en el tráfico HTML.
  • Este método de instrumentación no admite ninguna configuración de RUM avanzada. Sin embargo, se admiten allowedTracingUrls y excludedActivityUrls.
  • Si el servidor web actúa como proxy y el servidor ascendente tiene activado el cifrado de extremo a extremo (como TLS) o la compresión de contenidos (como gzip, zstd o Brotli), es posible que el módulo no inyecte el SDK del navegador RUM. Asegúrate de lo siguiente para que la instrumentación tenga éxito:
    • La compresión de contenidos está desactivada en el servidor ascendente.
    • El servidor web está configurado para originar TLS.
  • La configuración para la instrumentación automática (sólo Windows IIS) sólo está disponible por cada sitio Windows IIS.

Requisitos previos

El método de instalación automática requiere que tengas instalado el Datadog Agent.

Configurar tu aplicación RUM

Para solicitar asistencia con un servidor web que no figura en esta lista, rellena este formulario.

El método de instrumentación automática aprovecha la capacidad de los módulos dinámicos NGINX para implementar un filtro de cuerpo de respuesta. El filtro inyecta el SDK del navegador RUM en el cuerpo de la respuesta para las respuestas identificadas como HTML. Para un control más granular de la gestión de los archivos de configuración o los permisos, también puedes instalar NGINX manualmente.

Para instrumentar automáticamente tu aplicación RUM:

  1. En Datadog, ve a Digital Experience > Add an Application Page (Experiencia digital > Añadir una página de aplicación) y selecciona el tipo de aplicación JavaScript (JS).

  2. Selecciona Instrumentación automática y NGINX.

  3. Configura las frecuencias de muestreo de tu sesión y de Session Replay. Consulta la guía para la configuración del muestreo.

  4. Copia y ejecuta el comando de instalación para cargar el módulo NGINX Datadog con el inyector de SDK RUM en NGINX.

  5. Una vez que el instalador haya instalado correctamente el inyector de SDK, reinicia NGINX para comenzar a recopilar sesiones RUM.

  6. (Opcional) Para comprobar que el módulo está inyectando correctamente el SDK del navegador RUM en páginas HTML, consulta los logs de error de NGINX para ver si hay mensajes importantes. El módulo registra pasos importantes durante el proceso de inyección. Asegúrate de que NGINX está configurado con al menos el nivel de log INFO con lo siguiente:

    error_log <file> info;
    

Descarga el archivo .tgz correspondiente

  1. Utiliza el archivo .tgz correspondiente a tu versión de NGINX. Puedes encontrar todos los archivos .tgz relevantes presentados por versión de NGINX en Referencia.
  2. Extrae el tarball para extraer el archivo ngx_http_datadog_module.so. Desplázalo hacia una localización a la que NGINX tenga acceso (citada como <RUM_MODULE_PATH> en los pasos siguientes).

Actualizar la configuración de NGINX

  1. El archivo nginx.conf se encuentra normalmente en el directorio de configuración de NGINX. Añade la siguiente línea para cargar el módulo:

    load_module <RUM_MODULE_PATH>;
    
  2. A continuación, en la sección http/server/location, añade lo siguiente:

    # APM Tracing is enabled by default. The following line disables APM Tracing.
    datadog_disable;
    datadog_rum on;
    datadog_rum_config "v5" {
      "applicationId" "<DATADOG_APPLICATION_ID>";
      "clientToken" "<DATADOG_CLIENT_TOKEN>";
      "site" "<DATADOG_SITE>";
      "service" "my-web-application";
      "env" "production";
      "version" "1.0.0";
      "sessionSampleRate" "100";
      "sessionReplaySampleRate" "100";
      "trackResources" "true";
      "trackLongTasks" "true";
      "trackUserInteractions" "true";
    }
    

Reiniciar el servidor

  1. Reinicia el servidor NGINX para comenzar a recopilar datos de tu aplicación RUM Datadog. Por defecto, el SDK RUM se inyecta en todos los documentos HTML. Es posible que necesites borrar la memoria caché de tu navegador.

  2. (Opcional) Para comprobar que el módulo está inyectando correctamente el SDK del navegador RUM en páginas HTML, consulta los logs de error de NGINX para ver si hay mensajes importantes. El módulo registra pasos importantes durante el proceso de inyección. Asegúrate de que NGINX está configurado con al menos el nivel de log INFO con lo siguiente:

    error_log <file> info;
    

El método de instrumentación automática aprovecha la capacidad de los módulos httpd Apache para implementar un filtro de cuerpo de respuesta. El filtro inyecta el SDK del navegador RUM en el cuerpo de la respuesta para las respuestas identificadas como HTML. Para un control más granular de la gestión de los archivos de configuración o los permisos, también puedes instalar NGINX manualmente.

Para instrumentar automáticamente tu aplicación RUM:

  1. En Datadog, ve a Digital Experience > Add an Application Page (Experiencia digital > Añadir una página de aplicación) y selecciona el tipo de aplicación JavaScript (JS).
  2. Selecciona Instrumentación automática y httpd.
  3. Configura las frecuencias de muestreo de tu sesión y de Session Replay. Consulta la guía para la configuración del muestreo.
  4. Copia y ejecuta el comando de instalación para cargar el módulo httpd Datadog con el inyector de SDK RUM en httpd.
  5. Una vez que el instalador haya instalado correctamente el inyector de SDK, reinicia httpd para comenzar a recopilar sesiones RUM.
  6. (Opcional) Para comprobar que el módulo está inyectando correctamente el SDK del navegador RUM en páginas HTML, consulta los logs de error de httpd para ver si hay mensajes importantes. El módulo registra pasos importantes durante el proceso de inyección. Asegúrate de que el servidor HTTP APache está configurado con al menos el nivel de log info con lo siguiente:

Descargar el archivo del módulo

  1. Descarga el módulo comprimido.
  2. Extrae el zip para obtener el archivo mod_datadog.so. Desplázalo hacia una localización a la que tenga acceso el servidor HTTP Apache (citada como <RUM_MODULE_PATH> en los pasos siguientes).

Actualizar la configuración del servidor HTTP Apache

  1. Busca el archivo de configuración. Puedes utilizar apachectl -V para encontrar la ruta de configuración por defecto. Añade la siguiente línea para cargar el módulo:

    LoadModule datadog_module <RUM_MODULE_PATH>
    
  2. En la sección raíz o localización correspondiente, añade lo siguiente:

    # APM Tracing is enabled by default. The following line disables APM Tracing
    DatadogTracing Off
    DatadogRum On
    <DatadogRumSettings>
        DatadogRumOption "applicationId" "<DATADOG_APPLICATION_ID>"
        DatadogRumOption "clientToken" "<DATADOG_CLIENT_TOKEN>"
        DatadogRumOption "site" "<DATADOG_SITE>"
        DatadogRumOption "service" "my-web-application"
        DatadogRumOption "env" "production"
        DatadogRumOption "version" "1.0.0"
        DatadogRumOption "sessionSampleRate" "100"
        DatadogRumOption "sessionReplaySampleRate" "100"
        DatadogRumOption "trackResources" "true"
        DatadogRumOption "trackLongTasks" "true"
        DatadogRumOption "trackUserInteractions" "true"
    </DatadogRumSettings>
    

Reiniciar el servidor

  1. Reinicia el servidor HTTP Apache para comenzar a recopilar datos de tu aplicación RUM Datadog. Por defecto, el SDK RUM se inyecta en todos los documentos HTML. Es posible que necesites borrar la memoria caché de tu navegador.
  2. (Opcional) Para comprobar que el módulo está inyectando correctamente el SDK del navegador RUM en páginas HTML, consulta los logs de error de httpd para ver si hay mensajes importantes. El módulo registra pasos importantes durante el proceso de inyección. Asegúrate de que el servidor HTTP Apache está configurado con al menos el nivel de log info con lo siguiente:

La instrumentación automática aprovecha un módulo de Windows que inyecta el SDK RUM en el cuerpo de la respuesta para las respuestas servidas por la instancia IIS.

  1. En Datadog, ve a Digital Experience > Add an Application Page (Experiencia digital > Añadir una página de aplicación) y selecciona el tipo de aplicación JavaScript (JS).
  2. Selecciona Instrumentación automática y Windows IIS.
  3. Configura el módulo IIS utilizando el instalador GUI o la línea de comandos como se describe a continuación:
  1. Descarga el instalador RUM Datadog.
  2. Sigue el instalador como administrador abriendo el archivo .msi.
  3. Sigue las instrucciones y acepta el acuerdo de licencia.
  4. Configura las frecuencias de muestreo de tu sesión y de Session Replay. Consulta la guía para la configuración del muestreo.
  5. Copia y ejecuta el comando de configuración mostrado para cada sitio IIS en el que quieres inyectar RUM.
  1. Ejecuta la línea de comandos Powershell como administrador.
  2. Configura las frecuencias de muestreo de tu sesión y de Session Replay. Consulta la guía para la configuración del muestreo.
  3. Copia y ejecuta el comando de configuración mostrado para cada sitio IIS en el que quieres inyectar RUM.

Actualización de la aplicación RUM

Puedes ajustar las frecuencias de muestreo de tu sesión y de Session Replay desde la página Gestión de aplicaciones.

Para actualizar tu solicitud RUM:

  1. Ve a tu aplicación RUM desde la lista de Gestión de aplicaciones.
  2. En la página Instrumentar tu aplicación, ajusta el control deslizante o introduce un porcentaje específico en el cuadro de entrada para el muestreo de sesiones o de Session Replay.
  3. Copia y pega el fragmento de configuración en tu archivo NGINX.conf.

Para actualizar tu solicitud RUM:

  1. Ve a tu aplicación RUM desde la lista de Gestión de aplicaciones.
  2. En la página Instrumentar tu aplicación, ajusta el control deslizante o introduce un porcentaje específico en el cuadro de entrada para el muestreo de sesiones o de Session Replay.
  3. Copia y pega el fragmento de configuración en tu archivo /opt/datadog-httpd/datadog.conf.

Para actualizar tu solicitud RUM:

  1. Ve a tu aplicación RUM desde la lista de Gestión de aplicaciones.
  2. En la página Instrumentar tu aplicación, ajusta el control deslizante o introduce un porcentaje específico en el cuadro de entrada para el muestreo de sesiones o de Session Replay.
  3. Copia y sustituye el código en el archivo de configuración de RUM Datadog para el sitio IIS que hayas instrumentado.

Solucionar problemas

NGINX deja de responder

Dado que el módulo se encuentra en versión de vista previa, es posible que NGINX deje de servir solicitudes, especialmente después de la instalación. Si experimentas este problema, ponte en contacto con el servicio de asistencia de Datadog con la siguiente información, para ayudar con la investigación y resolución del problema:

  • Tu archivo de configuración de NGINX
  • Cualquier log de error relevante

No se inyecta RUM

Si observas que RUM no se inyecta en las páginas HTML, considera las siguientes causas posibles:

  • No coincide el tipo de contenido: RUM sólo se inyecta en páginas HTML. Si la cabecera Content-Type no indica correctamente text/html, se omite la inyección.
  • Servidor de flujo ascendente con cifrado de extremo a extremo o compresión de contenidos: Consulta Limitaciones.

Referencia

Módulos NGINX

Referencias adicionales