Si experimentas algún comportamiento inesperado con Datadog Browser RUM, utiliza esta guía para resolver los problemas rápidamente. Si sigues teniendo problemas, contacta con el equipo de asistencia de Datadog para obtener más ayuda. Actualiza con regularidad el RUM Browser SDK a la última versión, ya que cada nueva versión contiene mejoras y correcciones.
Datos faltantes
Si no puedes ver ningún dato en RUM o si faltan datos de algún usuario:
Causas más frecuentes | Solución recomendada |
---|
Los bloqueadores de anuncios impiden que el SDK del RUM Browser se descargue o envíe datos a Datadog. | Algunos bloqueadores de anuncios amplían sus restricciones a las herramientas de rastreo de rendimiento y marketing. Consulta los documentos Instalar el SDK del RUM Browser con npm y reenviar los datos recopilados a través de un proxy. |
Las reglas de red, las VPN o el software antivirus pueden impedir que se descargue el SDK del RUM Browser o que se envíen datos a Datadog. | Permite el acceso a los endpoints necesarios para descargar el SDK del RUM Browser o para enviar datos. La lista de endpoints está disponible en la documentación sobre la Política de seguridad de contenido. |
Los scripts, paquetes y clientes inicializados antes del SDK del RUM Browser pueden provocar que se pierdan logs, recursos y acciones del usuario. Por ejemplo, inicializar ApolloClient antes que el SDK del RUM Browser puede provocar que las solicitudes graphql no se registren como recursos XHR en el navegador RUM. | Check dónde se inicializa el SDK de RUM Browser y plantéate adelantar este paso en la ejecución del código de tu aplicación. |
Si has configurado trackViewsManually: true y observas que no hay sesiones, es posible que la aplicación haya dejado de enviar información RUM repentinamente aunque no haya errores red. | Asegúrate de iniciar una vista inicial una vez que hayas inicializado RUM para evitar cualquier pérdida de datos. Consulta Configuración avanzada para obtener más información. |
Lee las directrices de la política de seguridad de contenidos y asegúrate de que tu sitio web permita el acceso al CDN del SDK del RUM Browser y al endpoint de ingesta.
Inicialización del SDK del RUM Browser
Check si el SDK del RUM Browser se inicializa ejecutando window.DD_RUM.getInternalContext()
en la consola de tu navegador y verifica que se devuelvan application_id
, session_id
y el objeto de vista:
Si el SDK del RUM Browser no está instalado o si no se inicializa correctamente, puedes ver el error ReferenceError: DD_RUM is not defined
como el que se muestra a continuación:
También puedes check la consola de herramientas de desarrollo de tu navegador o la pestaña de red si observas algún error relacionado con la carga del SDK del RUM Browser.
Nota: Para garantizar resultados precisos, configura sessionSampleRate
en 100. Para obtener más información, consulta Configurar la configuración de Browser RUM y Browser RUM & Session Replay Sampling.
Datos a la ingesta de Datadog
El SDK de RUM envía lotes de datos de eventos a la ingesta de Datadog cada vez que se cumple una de estas condiciones:
- Cada 30 segundos
- Cuando se hayan alcanzado 50 eventos
- Cuando la carga útil sea >16 kB
- En
visibility:hidden
o beforeUnload
Si se están enviando datos, deberías ver solicitudes de redes dirigidas a /v1/input
(la parte del origen de la URL puede diferir debido a la configuración de RUM) en la sección de red de las herramientas de desarrollo del navegador:
Cookies de RUM
El SDK del RUM Browser utiliza cookies para almacenar información de sesiones y seguir una sesión de usuario a través de diferentes páginas. Las cookies son de origen (se configuran en tu dominio) y no se utilizan para el rastreo entre sitios. Estas son las cookies configuradas por el SDK del RUM Browser.
Nombre de la cookie | Información |
---|
_dd_s | Cookie utilizada para agrupar todos los eventos generados a partir de una única sesión de usuario a través de múltiples páginas. Contiene el ID de sesión actual, si la sesión está excluida debido al muestreo y la fecha de expiración de la sesión. La cookie se prolonga 15 minutos más cada vez que el usuario interactúa con el sitio web, hasta la duración máxima de la sesión de usuario (4 horas). |
dd_site_test_* | Cookie temporal utilizada para realizar un test de la compatibilidad con cookies. Caduca al instante. |
dd_cookie_test_* | Cookie temporal utilizada para realizar un test de la compatibilidad con cookies. Caduca al instante. |
Nota: Las cookies _dd_l
, _dd_r
y _dd
se han sustituido con la _dd_s
en versiones recientes del SDK del RUM Browser.
Identificadores de sesiones, cookies y aplicaciones RUM
Existe una relación de uno a uno entre una sesión RUM y la aplicación RUM a la que pertenece. Por lo tanto, el dominio configurado para la cookie _dd_s
está totalmente dedicado a la aplicación RUM que está monitorizando y no puede monitorizar ninguna aplicación adicional.
Limitaciones técnicas
Cada evento enviado por el SDK del RUM Browser se crea con lo siguiente:
- Contexto global del RUM
- Contexto del evento (si lo hay)
- Atributos específicos del evento
Ejemplo:
window.DD_RUM && window.DD_RUM.setGlobalContextProperty('global', {'foo': 'bar'})
window.DD_RUM && window.DD_RUM.addAction('hello', {'action': 'qux'})
El código del ejemplo crea el siguiente evento de acción:
{
"type": "action",
"context": {
"global": {
"foo": "bar"
},
"action": "qux"
},
"action": {
"id": "xxx",
"target": {
"name": "hello"
},
"type": "custom"
},
...
}
Si un evento o una solicitud supera alguna de las siguientes limitaciones, la ingesta de Datadog lo rechaza.
Propiedad | Limitación |
---|
Número máximo de atributos por evento | 256 |
Profundidad máxima de atributos por evento | 20 |
Tamaño máximo del evento | 256 KB |
Tamaño máximo de la carga útil de ingesta | 5 MB |
Advertencia “Customer data exceeds the recommended threshold”
El SDK del navegador RUM permite configurar el contexto global, la información del usuario y las marcas de funciones que luego se incluyen con los eventos recopilados.
Para minimizar el impacto en el ancho de banda del usuario, el SDK del navegador RUM limita los datos enviados a la ingesta de Datadog. Sin embargo, el envío de grandes volúmenes de datos puede afectar al rendimiento de los usuarios con conexiones a Internet lentas.
Para una mejor experiencia de usuario, Datadog recomienda mantener el tamaño del contexto global, la información del usuario y las marcas de funciones por debajo de 3 KiB. Si los datos superan este límite, se muestra una advertencia: The data exceeds the recommended 3KiB threshold.
Desde v5.3.0, el SDK del RUM Browser admite la compresión de datos a través de compressIntakeRequest
parámetro de inicialización. Cuando está activado, este límite recomendado se amplía de 3 KiB a 16 KiB.
Advertencia de bloqueo de lectura de origen cruzado
En los navegadores basados en Chromium, cuando el SDK del RUM Browser envía datos a la ingesta de Datadog, se muestra una advertencia CORB en la consola: Cross-Origin Read Blocking (CORB) blocked cross-origin response
.
La advertencia se muestra porque la ingesta devuelve un objeto JSON no vacío. Este comportamiento es un problema reportado de Chromium. No afecta al SDK del RUM Browser y se lo puede ignorar en forma segura.
Referencias adicionales
Más enlaces, artículos y documentación útiles: