Remote Configuration de RUM

Este producto no es compatible con el sitio Datadog seleccionado. ().

Descripción general

A medida que su aplicación evoluciona, es posible que necesite ajustar los datos que recopila el SDK de RUM y su frecuencia de recopilación. La configuración remota de RUM le permite actualizar los ajustes compatibles del SDK para navegador, iOS y Android desde Datadog sin necesidad de implementar una nueva versión de su aplicación.

La página de configuración del SDK que enumera los ajustes de RUM para navegador disponibles para Remote Configuration.

Requisitos previos

Remote Configuration debe estar habilitada en su organización y requiere las siguientes versiones del SDK de RUM:

  • Versión 7.13.0+ del SDK para navegador
  • Versión 3.17.0+ del SDK para iOS
  • Versión 3.14.1+ del SDK para Android
Si su red o proxy utiliza una lista de permitidos, añada *.browser-intake-<DC_REGION>-datadoghq.com para su aplicación. Esta entrada cubre tanto la ingesta de datos de RUM como las solicitudes de Remote Configuration del SDK, que utilizan el sdk-configuration. subdominio. Para aplicaciones de navegador, añada también este dominio a su Política de Seguridad de Contenido.

Si este dominio está bloqueado, el SDK no puede recuperar los ajustes remotos y, en su lugar, continúa utilizando su configuración local, sin ningún error visible.

Cómo funciona

Cada aplicación de RUM tiene un ID de Remote Configuration que el SDK utiliza para recuperar sus ajustes remotos.

Cuando el SDK se inicializa, aplica los ajustes remotos almacenados en caché. Si no hay ajustes almacenados en caché disponibles, utiliza los ajustes definidos en su aplicación. El SDK verifica actualizaciones en segundo plano y almacena los cambios para la siguiente inicialización. Si la verificación falla, el SDK conserva su caché existente o continúa utilizando sus ajustes locales. La verificación no retrasa la inicialización del SDK ni interrumpe la recopilación de eventos de RUM.

Los ajustes remotos publicados anulan los ajustes correspondientes en su aplicación. Los ajustes que no habilite de forma remota seguirán utilizando sus valores locales. Habilite solo los ajustes que desee gestionar desde Datadog.

Una Remote Configuration se aplica a todos los usuarios y sesiones inicializados con su ID. No puede dirigirse a usuarios o sesiones individuales. Si cambia el ID, el SDK lo trata como una nueva Remote Configuration y no utiliza los ajustes almacenados en caché con el ID anterior.

El SDK recupera los ajustes de Remote Configuration desde un punto de conexión (CDN) público. No incluya secretos ni información personal en los valores de configuración.

Permisos

La configuración remota utiliza los mismos permisos que las aplicaciones de RUM. Para habilitar, editar o publicar una configuración, necesita el permiso RUM Apps Write. Para obtener más información, consulte Real User Monitoring permissions.

Configuración

Para configurar los ajustes remotos de una aplicación:

  1. Instale un SDK de RUM compatible en una aplicación nueva o actualice el SDK en una aplicación existente.

  2. Vaya a RUM > Manage Applications, seleccione una aplicación y haga clic en SDK Configuration.

  3. Habilite la configuración remota para generar un ID de configuración remota. Nota: Datadog guarda la configuración como borrador, por lo que sus valores no anulan los ajustes existentes del SDK antes de que usted la publique.

  4. Agregue el ID de Remote Configuration a la inicialización de su SDK.

    Agregue un objeto remoteConfiguration a su llamada datadogRum.init() existente:

    remoteConfiguration: {
        id: '<REMOTE_CONFIGURATION_ID>',
    },
    

    Agregue remoteConfiguration a su Datadog.Configuration:

    remoteConfiguration: .init(id: "<REMOTE_CONFIGURATION_ID>")
    

    Llame a setRemoteConfigurationId() en su Configuration.Builder:

    .setRemoteConfigurationId("<REMOTE_CONFIGURATION_ID>")
    
  5. Actualice la configuración como se describe en la sección Cambiar la configuración del SDK con Remote Configuration.

  6. Publique la configuración para aplicar sus ajustes habilitados.

Cambiar la configuración del SDK con Remote Configuration

La Remote Configuration no anula ninguna configuración del SDK de forma predeterminada. Para administrar una configuración de forma remota, habilite explícitamente su anulación en Datadog y luego configure su valor. Las configuraciones sin una anulación habilitada continúan usando los valores configurados en el SDK.

  1. Habilite la anulación para una configuración que desee administrar de forma remota. Elija entre las configuraciones enumeradas en la sección Configuraciones configurables para su plataforma.

    Ciertas configuraciones requieren las importaciones de módulos correspondientes en los SDK de iOS y Android. Si su aplicación no importa estos módulos, Remote Configuration no funcionará para Session Replay, la traza distribuida o la generación de perfiles.
  2. Configure el ajuste seleccionando un estado, cambiando su tasa de muestreo o agregando datos.

  3. Guarde sus cambios.

Configuraciones configurables

Tasas de muestreo

Etiqueta de la interfaz de usuarioNombre del parámetro
Tasa de muestreo de Session Replayrum.sessionReplaySampleRate
Tasa de muestreo de trazarum.traceSampleRate
Tasa de muestreo de generación de perfilesprofiling.sampleRate

Privacidad

Etiqueta de la interfaz de usuarioNombre del parámetro
Nivel de privacidad predeterminadorum.defaultPrivacyLevel
Privacidad para nombres de acciónrum.enablePrivacyForActionName

Seguimiento de eventos

Etiqueta de la interfaz de usuarioNombre del parámetro
Rastrear usuarios anónimosrum.trackAnonymousUser
Rastrear interacciones de usuariorum.trackUserInteractions
Rastrear recursosrum.trackResources
Rastrear tareas largasrum.trackLongTasks
Rastrear sesiones en subdominiosrum.trackSessionAcrossSubdomains

Atributos de la aplicación

Etiqueta de la interfaz de usuarioNombre del parámetro
Atributo de nombre de acciónrum.actionNameAttribute
Inyección de contexto de trazarum.traceContextInjection
URL de traza permitidasrum.allowedTracingUrls
Orígenes de seguimiento permitidosrum.allowedTrackingOrigins

Tasas de muestreo

Etiqueta de la interfaz de usuarioNombre del parámetro
Tasa de muestreo de Session ReplaysessionReplay.sampleRate
Tasa de muestreo de perfilado continuoprofiling.continuousSampleRate
Tasa de muestreo de perfilado de inicio de aplicaciónprofiling.applicationLaunchSampleRate
Frecuencia de muestreo de trazastrace.sampleRate

Privacidad

Etiqueta de la interfaz de usuarioNombre del parámetro
Privacidad de texto y entradasessionReplay.textAndInputPrivacy
Privacidad de imágenessessionReplay.imagePrivacy
Privacidad táctilsessionReplay.touchPrivacy

Seguimiento de eventos

Etiqueta de la interfaz de usuarioNombre del parámetro
Rastrear usuarios anónimosrum.trackAnonymousUser
Rastrear interacciones de usuariorum.trackUserInteractions
Rastrear recursosrum.trackResources
Rastrear eventos en segundo planorum.trackBackgroundEvents
Rastrear señales de frustraciónrum.trackFrustrations
Rastrear tareas largasrum.longTask.enabled
Umbral de tarea largarum.longTask.threshold
Frecuencia de actualización de indicadores vitalesrum.vitalsUpdateFrequency
Rastrear fotogramas lentosrum.trackSlowFrames
Rastrear bloqueos de la aplicaciónrum.appHang.enabled
Umbral de bloqueo de la aplicaciónrum.appHang.threshold
Rastrear terminaciones del watchdogrum.trackWatchdogTerminations
Rastrear advertencias de memoriarum.trackMemoryWarnings

Atributos de la aplicación

Etiqueta de la interfaz de usuarioNombre del parámetro
Inyección de contexto de trazatrace.traceContextInjection
URL de traza permitidastrace.tracedHosts

Tasas de muestreo

Etiqueta de la interfaz de usuarioNombre del parámetro
Tasa de muestreo de perfiladorum.profilingSampleRate
Tasa de muestreo de Session ReplaysessionReplay.sampleRate
Tasa de muestreo de perfilado continuoprofiling.continuousSampleRate
Tasa de muestreo de perfilado de inicio de aplicaciónprofiling.applicationLaunchSampleRate
Frecuencia de muestreo de trazastrace.sampleRate

Privacidad

Etiqueta de la interfaz de usuarioNombre del parámetro
Privacidad de texto y entradasessionReplay.textAndInputPrivacy
Privacidad de imágenessessionReplay.imagePrivacy
Privacidad táctilsessionReplay.touchPrivacy

Seguimiento de eventos

Etiqueta de la interfaz de usuarioNombre del parámetro
Rastrear usuarios anónimosrum.trackAnonymousUser
Rastrear interacciones de usuariorum.trackUserInteractions
Rastrear eventos en segundo planorum.trackBackgroundEvents
Rastrear señales de frustraciónrum.trackFrustrations
Rastrear tareas largasrum.longTask.enabled
Umbral de tarea largarum.longTask.threshold
Frecuencia de actualización de indicadores vitalesrum.vitalsUpdateFrequency
Rastrear fotogramas lentosrum.trackSlowFrames
Reporte de fallorum.crashReportsEnabled
Rastrear ANR no fatalesrum.trackNonFatalAnrs

Atributos de la aplicación

Etiqueta de la interfaz de usuarioNombre del parámetro
Inyección de contexto de trazatrace.traceContextInjection
URL de traza permitidastrace.tracedHosts

Lecturas adicionales

Documentación, enlaces y artículos útiles adicionales: