View a markdown version of this page

Informations collectées par le client Web CloudWatch RUM - Amazon CloudWatch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Informations collectées par le client Web CloudWatch RUM

Cette section décrit le PutRumEventsschéma qui définit la structure des données que vous pouvez collecter à partir de sessions utilisateur à l'aide de CloudWatch RUM.

Une PutRumEventsdemande envoie une structure de données avec les champs suivants à CloudWatch RUM.

  • ID de ce lot d'événements RUM

  • Détails du moniteur d'application, qui comprennent les éléments suivants :

    • ID du moniteur d'application

    • Version de l'application contrôlée

  • Détails sur les utilisateurs, qui comprennent les éléments suivants. Ces informations ne sont collectées que si les cookies sont activés sur le moniteur d'application.

    • ID utilisateur généré par le client web

    • ID de session

  • Tableau des événements RUM dans ce lot

Schéma d'événements RUM

La structure de chaque événement RUM comprend les champs suivants.

Métadonnées des événements RUM

Les métadonnées incluent les métadonnées de page, les métadonnées de l'agent utilisateur, les métadonnées de géolocalisation et les métadonnées de domaine.

Métadonnées de page

Les métadonnées de page incluent les éléments suivants :

  • ID de la page

  • Titre de la page

  • ID de la page parent. – Ces informations ne sont collectées que si les cookies sont activés sur le moniteur d'application.

  • Profondeur d'interaction – Ces informations ne sont collectées que si les cookies sont activés sur le moniteur d'application.

  • Balises de page – Vous pouvez ajouter des balises aux événements de page pour regrouper les pages. Pour de plus amples informations, veuillez consulter Utiliser des groupes de pages.

Métadonnées de l'agent utilisateur

Les métadonnées de l'agent utilisateur incluent les éléments suivants :

  • Langue du navigateur

  • Nom du navigateur

  • Version du navigateur

  • Nom du système d'exploitation

  • Version du système d'exploitation

  • Type d’appareil

  • Types de plateforme

Métadonnées de géolocalisation

Les métadonnées de géolocalisation incluent les éléments suivants :

  • Code pays

  • Code de subdivision

Métadonnées de domaine

Les métadonnées de domaine incluent le domaine d'URL.

Détails de l'événement RUM

Les détails d'un événement suivent l'un des types de schémas suivants, en fonction du type d'événement.

Événement de démarrage de session

Cet événement ne contient aucun champ. Ces informations ne sont collectées que si les cookies sont activés sur le moniteur d'application.

Schéma de consultation de page

Un événement Page view (Consultation de page) contient les propriétés suivantes. Vous pouvez configurer le client web pour désactiver la collecte des consultations de page. Pour plus d'informations, consultez la documentation du client Web CloudWatch RUM.

Nom Type Description

Page ID (ID de la page)

Chaîne

Un ID qui représente cette page de manière unique au sein de l'application. Par défaut, il s'agit du chemin de l'URL.

Parent page ID (ID de la page parent)

String

L'ID de la page sur laquelle l'utilisateur se trouvait lorsqu'il a accédé à la page actuelle. Ces informations ne sont collectées que si les cookies sont activés sur le moniteur d'application.

Interaction depth (Profondeur d'interaction)

String

Ces informations ne sont collectées que si les cookies sont activés sur le moniteur d'application.

JavaScript schéma d'erreur

JavaScript les événements d'erreur générés par l'agent contiennent les propriétés suivantes. Le client web ne collecte ces événements que si vous avez choisi de collecter la télémétrie des erreurs.

Nom Type Description

Error type (Type d'erreur)

String

Le nom de l'erreur, le cas échéant. Pour de plus amples informations, veuillez consulter Error.prototype.name.

Certains navigateurs peuvent ne pas prendre en charge les types d'erreurs.

Error message (Message d'erreur)

String

Le message de l'erreur. Pour de plus amples informations, veuillez consulter Error.prototype.message. Si le champ d'erreur n'existe pas, il s'agit du message de l'événement d'erreur. Pour de plus amples informations, veuillez consulter ErrorEvent.

Les messages d'erreur peuvent varier d'un navigateur à l'autre.

Stack trace (Suivi de pile)

String

Le suivi de pile de l'erreur, le cas échéant, tronqué à 150 caractères. Pour de plus amples informations, veuillez consulter Error.prototype.stack.

Certains navigateurs peuvent ne pas prendre en charge les suivis de pile.

Schéma d'événements DOM

Les événements DOM (Document Object Model) générés par l'agent contiennent les propriétés suivantes. Par défaut, ces événements ne sont pas collectés. Ils ne sont collectés que si vous activez la télémétrie des interactions. Pour plus d'informations, consultez la documentation du client Web CloudWatch RUM.

Nom Type Description

Event

String

Le type d'événement DOM, comme un clic, un défilement ou un survol. Pour plus d'informations, consultez Référence des événements.

Element

String

Type d'élément DOM

Element ID (ID de l'élément)

String

Si l'élément qui a généré l'événement possède un ID, cette propriété stocke cet ID. Pour de plus amples informations, veuillez consulter Element.id.

CSSLocator

String

Localisateur CSS utilisé pour identifier l'élément DOM.

InteractionId

String

Un identifiant unique pour l'interaction entre l'utilisateur et l'interface utilisateur.

Schéma d'événement de navigation

Les événements de navigation ne sont collectés que si la télémétrie de performance est activée sur le moniteur d'application.

Les événements de navigation utilisent les API Navigation timing Level 1 et Navigation timing Level 2. Les API Level 2 ne sont pas prises en charge sur tous les navigateurs. Ces nouveaux champs sont donc facultatifs.

Note

Les métriques d'horodatage sont basées sur. DOMHighResTimestamp Avec les API Level 2, par défaut, toutes les durées sont relatives à la startTime. Mais pour Level 1, la métrique navigationStart est soustraite des métriques d'horodatage pour obtenir des valeurs relatives. Toutes les valeurs d'horodatage sont exprimées en millisecondes.

Les événements de navigation contiennent les propriétés suivantes.

Nom Type Description Remarques

initiatorType

String

Représente le type de ressource qui a initié l'événement de performance.

Valeur : "navigation"

Level 1 : "navigation"

Niveau 2 : entrée Data.initiatorType

navigationType

String

Représente le type de navigation.

Cet attribut n'est pas obligatoire.

Valeur : cette valeur doit être l'un des éléments suivants.

  • navigate est une navigation démarrée par le choix d'un lien, la saisie d'une URL dans la barre d'adresse d'un navigateur, l'envoi d'un formulaire ou l'initialisation via une opération de script autre que reload ou back_forward .

  • reload est une navigation réalisée via l'opération de rechargement du navigateur ou location.reload() .

  • back_forward est une navigation réalisée via l'opération de balayage de l'historique du navigateur.

  • prerender est une navigation initiée par un indicateur de prérendu. Pour de plus amples informations, veuillez consulter Prerender.

startTime

Number

Indique quand l'événement est déclenché.

Valeur : 0

Niveau 1 : entrée Data.navigationStart - entrée Data.navigationStart

Niveau 2 : entrée Data.startTime

décharger EventStart

Number

Indique l'heure à laquelle le déchargement du document précédent de la fenêtre a commencé après que l'événement unload a été levé.

Valeur : s'il n'y a pas de document précédent ou si le document précédent ou l'une des redirections nécessaires ne sont pas de la même origine, la valeur renvoyée est 0.

Level 1 :

entryData.unloadEventStart > 0 ? entryData.unloadEventStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.unloadEventStart

rapide ForUnload

Number

Temps nécessaire au déchargement du document. En d'autres termes, le temps entre unloadEventStart et unloadEventEnd. UnloadEventEnd représente le moment, en millisecondes, où le gestionnaire d'événements de déchargement se termine.

Valeur : s'il n'y a pas de document précédent ou si le document précédent ou l'une des redirections nécessaires ne sont pas de la même origine, la valeur renvoyée est 0.

Niveau 1 : entrée Data.unloadEventEnd - entrée Data.unloadEventStart

Niveau 2 : entrée Data.unloadEventEnd - entrée Data.unloadEventStart

redirectCount

Number

Numéro représentant le nombre de redirections depuis la dernière navigation non redirigée dans le contexte de navigation actuel.

Cet attribut n'est pas obligatoire.

Valeur : s'il n'y a pas de redirection ou s'il y a une redirection qui n'est pas de la même origine que le document de destination, la valeur renvoyée est 0.

Level 1 : non disponible

Niveau 2 : entrée Data.redirectCount

redirectStart

Number

Heure de démarrage de la première redirection HTTP.

Valeur : s'il n'y a pas de redirection ou s'il y a une redirection qui n'est pas de la même origine que le document de destination, la valeur renvoyée est 0.

Level 1 :

entryData.redirectStart > 0 ? entryData.redirectStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.redirectStart

redirectTime

Number

Le temps nécessaire à la redirection HTTP. Il s'agit de la différence entre redirectStart et redirectEnd.

Niveau 1 : entrée Data.redirectEnd - entrée Data.redirectStart

Niveau 2 : entrée Data.redirectEnd - entrée Data.redirectStart

workerStart

Number

Propriété de l'interface PerformanceResourceTiming. Elle marque le début de l'opération de thread de travail.

Cet attribut n'est pas obligatoire.

Valeur : si un thread de service worker est déjà en cours d'exécution, ou immédiatement avant le démarrage du thread de service worker, cette propriété renvoie l'heure précédant immédiatement la distribution de FetchEvent. Elle renvoie 0 si la ressource n'est pas interceptée par un service worker.

Level 1 : non disponible

Niveau 2 : entrée Data.workerStart

workerTime

Number

Si la ressource est interceptée par un service worker, cela renvoie le temps requis pour l'opération du thread de travail.

Cet attribut n'est pas obligatoire.

Level 1 : non disponible

Level 2 :

entryData.workerStart > 0 ? entryData.fetchStart - entryData.workerStart : 0

fetchStart

Number

Heure à laquelle le navigateur est prêt à récupérer le document à l'aide d'une demande HTTP. Et ce, avant de vérifier n'importe quel cache d'application.

Level 1 :

: entryData.fetchStart > 0 ? entryData.fetchStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.fetchStart

domaineLookupStart

Number

Heure de démarrage de la recherche de domaine.

Valeur : si une connexion persistante est utilisée ou si les informations sont stockées dans un cache ou une ressource locale, la valeur sera identique à fetchStart.

Level 1 :

entryData.domainLookupStart > 0 ? entryData.domainLookupStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.domainLookupStart

dns

Number

Temps nécessaire à la recherche de domaines.

Valeur : si les ressources et les enregistrements DNS sont mis en cache, la valeur attendue est 0.

Niveau 1 : entrée Data.domainLookupEnd - entrée Data.domainLookupStart

Niveau 2 : entrée Data.domainLookupEnd - entrée Data.domainLookupStart

suivant HopProtocol

String

Chaîne représentant le protocole réseau utilisé pour récupérer la ressource.

Cet attribut n'est pas obligatoire.

Level 1 : non disponible

Niveau 2 : entrée Data.nextHopProtocol

connectStart

Number

Heure précédant immédiatement le lancement par l'agent utilisateur de l'établissement de la connexion au serveur pour récupérer le document.

Valeur : si une connexion persistante RFC2616 est utilisée ou si le document actuel est extrait à partir de ressources locales ou de caches d'applications pertinents, cet attribut renvoie la valeur de domainLookupEnd.

Level 1 :

entryData.connectStart > 0 ? entryData.connectStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.connectStart

connect

Number

Mesure le temps nécessaire à l'établissement des connexions de transport ou à l'authentification SSL. Il inclut également le temps bloqué qui est pris lorsqu'il y a trop de demandes simultanées émises par le navigateur.

Niveau 1 : entrée Data.connectEnd - entrée Data.connectStart

Niveau 2 : entrée Data.connectEnd - entrée Data.connectStart

sécurisé ConnectionStart

Number

Si le modèle d'URL de la page actuelle est « https », cet attribut renvoie l'heure précédant immédiatement le lancement par l'agent utilisateur du processus de négociation pour sécuriser la connexion actuelle. Il renvoie 0 si HTTPS n'est pas utilisé. Pour plus d'informations sur les modèles d'URL, consultez URL representation.

Formule : entrée Data.secureConnectionStart

tlsTime

Number

Le temps nécessaire pour terminer une négociation SSL.

Level 1 :

entryData.secureConnectionStart > 0 ? entryData.connectEnd - entryData.secureConnectionStart : 0

Level 2 :

entryData.secureConnectionStart > 0 ? entryData.connectEnd - entryData.secureConnectionStart : 0

requestStart

Number

Heure précédant immédiatement le début de la demande de ressource par l'agent utilisateur auprès du serveur, des caches d'application pertinents ou des ressources locales.

Level 1 :

: entryData.requestStart > 0 ? entryData.requestStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.requestStart

timeToFirstByte

Number

Temps nécessaire à la réception du premier octet d'informations après l'envoi de la demande. Ce temps est relatif à la valeur startTime.

Niveau 1 : entrée Data.responseStart - entrée Data.requestStart

Niveau 2 : entrée Data.responseStart - entrée Data.requestStart

responseStart

Number

Heure suivant immédiatement la réception par l'analyseur HTTP de l'agent utilisateur du premier octet de la réponse des caches d'application concernés, des ressources locales ou du serveur.

Level 1 :

entryData.responseStart > 0 ? entryData.responseStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.responseStart

responseTime

String

Temps nécessaire à la réception d'une réponse complète sous la forme d'octets provenant des caches d'application concernés, des ressources locales ou du serveur.

Level 1 :

entryData.responseStart > 0 ? entryData.responseEnd - entryData.responseStart : 0

Level 2 :

entryData.responseStart > 0 ? entryData.responseEnd - entryData.responseStart : 0

domInteractive

Number

Heure à laquelle l'analyseur a terminé son travail sur le document principal et que le DOM HTML est construit. À ce moment, la valeur Document.readyState passe à "interactive" (interactif) et l'événement readystatechange correspondant est levé.

Level 1 :

entryData.domInteractive > 0 ? entryData.domInteractive - entryData.navigationStart : 0

Niveau 2 : entrée Data.domInteractive

dom ContentLoadedEventStart

Number

Représente la valeur temporelle égale à l'heure immédiatement avant que l'agent utilisateur ne déclenche l' DOMContentLoaded événement dans le document actuel. TheDOMContentLoaded L'événement se déclenche lorsque le document HTML initial a été complètement chargé et analysé. À ce moment, le document HTML principal a terminé l'analyse, le navigateur commence à construire l'arborescence de rendu et les sous-ressources doivent encore être chargées. Cette propriété n'attend pas la fin du chargement des feuilles de style, des images et les sous-cadres.

Level 1 :

entryData.domContentLoadedEventStart > 0 ? entryData.domContentLoadedEventStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.domContentLoadedEventStart

dom ContentLoaded

Number

Cette heure de début et de fin de la construction de l'arborescence de rendu est marquée par domContentLoadedEventStart et domContentLoadedEventEnd. Il permet à CloudWatch RUM de suivre l'exécution. Cette propriété correspond à la différence entre domContentLoadedStart et domContentLoadedEnd.

Pendant ce temps, DOM et CSSOM sont prêts. Cette propriété attend l'exécution des scripts, à l'exception des scripts asynchrones et de ceux créés dynamiquement. Si les scripts dépendent de feuilles de style, domContentLoaded les attend aussi. Cette propriété n'attend pas les images.

Note

Les valeurs réelles de domContentLoadedStart et domContentLoadedEnd correspondent approximativement à domContentLoaded dans le panneau Réseau de Google Chrome. Celui-ci indique le temps de construction de l'arborescence de rendu DOM HTML + CSSOM depuis le début du processus de chargement de la page. Dans le cas des mesures de navigation, la valeur domContentLoaded représente la différence entre les valeurs de début et de fin, ce qui correspond au temps nécessaire au téléchargement des sous-ressources et à la construction de l'arborescence de rendu uniquement.

Niveau 2 : entrée Data.domContentLoadedEventEnd - entrée Data.domContentLoadedEventStart

Niveau 2 : entrée Data.domContentLoadedEventEnd - entrée Data.domContentLoadedEventStart

domComplete

Number

Heure précédant immédiatement la définition par le navigateur de la préparation du document actuel sur terminée. À ce stade, le chargement des sous-ressources, telles que des images, est terminé. Cela inclut le temps nécessaire au téléchargement de contenus bloquants tels que le CSS et le contenu synchrone. JavaScript Cette valeur correspond approximativement à loadTime dans le panneau Réseau de Google Chrome.

Level 1 :

entryData.domComplete > 0 ? entryData.domComplete - entryData.navigationStart : 0

Niveau 2 : entrée Data.domComplete

dom ProcessingTime

Number

Durée totale entre la réponse et le début de l'événement de chargement.

Niveau 1 : entrée Data.loadEventStart - entrée Data.responseEnd

Niveau 2 : entrée Data.loadEventStart - entrée Data.responseEnd

charge EventStart

Number

Heure précédant immédiatement le lancement de l'événement load du document actif.

Level 1 :

entryData.loadEventStart > 0 ? entryData.loadEventStart - entryData.navigationStart : 0

Niveau 2 : entrée Data.loadEventStart

charge EventTime

Number

Différence entre loadEventStart et loadEventEnd. La logique ou les fonctions supplémentaires en attente de cet événement de chargement seront déclenchées pendant cette période.

Niveau 1 : entrée Data.loadEventEnd - entrée Data.loadEventStart

Niveau 2 : entrée Data.loadEventEnd - entrée Data.loadEventStart

duration

String

Durée correspond au temps de chargement total de la page. Cette propriété enregistre la durée nécessaire au téléchargement de la page principale et de toutes ses sous-ressources synchrones, ainsi qu'au rendu de la page. Le téléchargement des ressources asynchrones telles que les scripts se poursuit ultérieurement. Cette propriété correspond à la différence entre les propriétés loadEventEnd et startTime.

Niveau 1 : entrée Data.loadEventEnd - entrée Data.navigationStart

Niveau 2 : entrée Data.duration

headerSize

Number

Renvoie la différence entre transferSize et encodedBodySize.

Cet attribut n'est pas obligatoire.

Level 1 : non disponible

Niveau 2 : entrée Data.transferSize - entrée Data.encodedBodySize

Niveau 2 : entrée Data.transferSize - entrée Data.encodedBodySize

compressionRatio

Number

Rapport entre encodedBodySize et decodedBodySize. La valeur de encodedBodySize correspond à la taille compressée de la ressource, à l'exclusion des en-têtes HTTP. La valeur de decodedBodySize correspond à la taille décompressée de la ressource, à l'exclusion des en-têtes HTTP.

Cet attribut n'est pas obligatoire.

Level 1 : non disponible.

Level 2 :

entryData.encodedBodySize > 0 ? entryData.decodedBodySize / entryData.encodedBodySize : 0

navigation TimingLevel

Number

Version de l'API Navigation Timing.

Valeur : 1 ou 2

Schéma d'événement de ressource

Les événements de ressource ne sont collectés que si la télémétrie de performance est activée sur le moniteur d'application.

Les métriques d'horodatage sont basées sur le DOMHighResTimeStamp typedef. Avec les API Level 2, par défaut, toutes les durées sont relatives à la startTime. Mais pour les API Level 1, la métrique navigationStart est soustraite des métriques d'horodatage pour obtenir des valeurs relatives. Toutes les valeurs d'horodatage sont exprimées en millisecondes.

Les événements de ressource générés par l'agent contiennent les propriétés suivantes.

Nom Type Description Remarques

targetUrl

String

Renvoie l'URL de la ressource.

Formule : entrée Data.name

initiatorType

String

Représente le type de ressource qui a initié l'événement de ressource de performance.

Valeur : "ressource"

Formule : entrée Data.initiatorType

duration

String

Renvoie la différence entre les propriétés responseEnd et startTime.

Cet attribut n'est pas obligatoire.

Formule : entrée Data.duration

transferSize

Number

Renvoie la taille (en octets) de la ressource récupérée, y compris les champs d'en-tête de réponse et le corps de la charge utile de réponse.

Cet attribut n'est pas obligatoire.

Formule : entrée Data.transferSize

fileType

String

Extensions dérivées du modèle d'URL cible.

Schéma d'événement Largest Contentful Paint

Les événements Largest Contentful Paint contiennent les propriétés suivantes.

Ces événements ne sont collectés que si la télémétrie de performance est activée sur le moniteur d'application.

Nom Description

Valeur

Pour de plus amples informations, veuillez consulter Web Vitals.

Événement First Input Delay

Les événements First Input Delay contiennent les propriétés suivantes.

Ces événements ne sont collectés que si la télémétrie de performance est activée sur le moniteur d'application.

Nom Description

Valeur

Pour de plus amples informations, veuillez consulter Web Vitals.

Événement Cumulative Layout Shift

Les événements Cumulative Layout Shift contiennent les propriétés suivantes.

Ces événements ne sont collectés que si la télémétrie de performance est activée sur le moniteur d'application.

Nom Description

Valeur

Pour de plus amples informations, veuillez consulter Web Vitals.

Événement HTTP

Les événements HTTP peuvent contenir les propriétés suivantes. Ils contiendront un champ Response ou Error, mais pas les deux.

Ces événements ne sont collectés que si la télémétrie HTTP est activée sur le moniteur d'application.

Nom Description

Demande

Le champ de requête inclut les éléments suivants :

  • Le champ Method, qui peut contenir des valeurs telles que GET, POST, etc.

  • L'URL.

Réponse

Le champ de réponse inclut les éléments suivants :

  • Statut, tel que 2xx, 4xx ou 5xx

  • Texte de statut

Error (Erreur)

Le champ d'erreur peut inclure les éléments suivants :

  • Type

  • Message

  • Nom de fichier

  • Numéro de ligne

  • Numéro de colonne

  • Suivi de pile

X-Ray schéma d'événements de suivi

Ces événements ne sont collectés que si le X-Ray suivi est activé sur le moniteur de l'application.

Pour plus d'informations sur les schémas d'événements de X-Ray suivi, consultez les documents de AWS X-Ray segment.