Informazioni raccolte dal client web CloudWatch RUM - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Informazioni raccolte dal client web CloudWatch RUM

Questa sezione documenta lo PutRumEventsschema, che definisce la struttura dei dati che è possibile raccogliere dalle sessioni utente utilizzando CloudWatch RUM.

Una PutRumEventsrichiesta invia a CloudWatch RUM una struttura di dati con i seguenti campi.

  • L'ID di questo batch di eventi RUM

  • Dettagli del monitor dell'app, che includono i seguenti:

    • ID dell'app del monitor

    • Versione dell'applicazione monitorata

  • Dettagli dell'utente, che comprendono i seguenti. Questo viene raccolto solo se sul monitor dell'app sono abilitati i cookie.

    • ID utente generato dal client web

    • ID sessione

  • La gamma di Eventi RUM in questo batch.

Schema eventi RUM

La struttura di ciascun evento RUM include i campi riportati di seguito.

Metadati degli eventi RUM

I metadati includono metadati di pagina, metadati dell'agente utente, metadati di geolocalizzazione e metadati di dominio.

Metadati della pagina

I metadati della pagina includono quanto segue:

  • ID pagina

  • Titolo pagina

  • ID pagina principale. - Questo viene raccolto solo se sul monitor di app sono abilitati i cookie.

  • Profondità di interazione - Questo viene raccolto solo se sul monitor di app sono abilitati i cookie.

  • Tag di pagina: puoi aggiungere tag agli eventi delle pagine per raggruppare le pagine. Per ulteriori informazioni, consulta Utilizzo dei gruppi di pagine.

Metadati dell'agente utente

I metadati dell'agente utente includono quanto segue:

  • Lingua browser

  • Nome browser

  • Versione browser

  • Nome del sistema operativo

  • Versione del sistema operativo

  • Tipo dispositivo

  • Tipo di piattaforma

Metadati di geolocalizzazione

I metadati di geolocalizzazione includono quanto segue:

  • Codice del paese

  • Codice di suddivisione

Metadati del dominio

I metadati del dominio includono il dominio URL.

Dettagli evento RUM

I dettagli di un evento seguono uno dei seguenti tipi di schemi, a seconda del tipo di evento.

Evento di avvio della sessione

Questo evento non contiene campi. Questo viene raccolto solo se sul monitor dell'app sono abilitati i cookie.

Schema di visualizzazione pagina

Un'evento di Visualizzazione pagina contiene le seguenti proprietà. È possibile disattivare la raccolta di viste pagina configurando il client Web. Per ulteriori informazioni, consulta la documentazione del client web CloudWatch RUM.

Nome Tipo Descrizione

ID pagina

Stringa

ID che rappresenta in modo univoco questa pagina all'interno dell'applicazione. Per impostazione predefinita, questo è il percorso URL.

ID pagina principale

Stringa

L'ID della pagina in cui si trovava l'utente quando si è spostato alla pagina corrente. Questo viene raccolto solo se sul monitor dell'app sono abilitati i cookie.

Profondità di interazione

Stringa

Questo viene raccolto solo se sul monitor dell'app sono abilitati i cookie.

JavaScript schema di errore

JavaScript gli eventi di errore generati dall'agente contengono le seguenti proprietà. Il client web raccoglie questi eventi solo se si è scelto di raccogliere gli errori di telemetria.

Nome Tipo Descrizione

Tipi di errore

Stringa

Nome dell'errore, se esiste. Per ulteriori informazioni, consulta Error.prototype.name.

Alcuni browser potrebbero non supportare i tipi di errore.

Messaggio di errore

Stringa

Messaggio di errore. Per ulteriori informazioni, consulta Error.prototype.message. Se il campo di errore non esiste, questo è il messaggio dell'evento di errore. Per ulteriori informazioni, consulta ErrorEvent.

I messaggi di errore potrebbero non essere coerenti su diversi browser.

Traccia della pila

Stringa

La traccia della pila dell'errore, se esistente, è troncata a 150 caratteri. Per ulteriori informazioni, consulta Error.prototype.stack.

Alcuni browser potrebbero non supportare le tracce della pila.

Schema eventi DOM

Gli eventi DOM (Document Object Model) generati dall'agente contengono le seguenti proprietà. Questi eventi non vengono raccolti per impostazione predefinita. Vengono raccolti solo se si attiva la telemetria delle interazioni. Per ulteriori informazioni, consultate la documentazione del client web CloudWatch RUM.

Nome Tipo Descrizione

Evento

Stringa

Il tipo di evento DOM, come click, scorrimento o passaggio del mouse. Per ulteriori informazioni, consulta Riferimento evento.

Elemento

Stringa

Il tipo di elemento DOM

Elemento ID

Stringa

Se l'elemento che ha generato l'evento ha un ID, questa proprietà memorizza tale ID. Per ulteriori informazioni, consulta Element.id.

CSSLocator

Stringa

Il localizzatore CSS utilizzato per identificare l'elemento DOM.

InteractionId

Stringa

Un ID univoco per l'interazione tra l'utente e l'interfaccia utente.

Schema eventi di navigazione

Gli eventi di navigazione vengono raccolti solo se il monitor dell'app ha attivato la telemetria delle prestazioni.

Gli eventi di navigazione utilizzano la temporizzazione di navigazione di livello 1 e la temporizzazione di navigazione di livello 2. APIs Il livello 2 APIs non è supportato su tutti i browser, quindi questi campi più recenti sono facoltativi.

Nota

Le metriche del timestamp si basano su. DOMHighResTimestamp Con Level 2 APIs, per impostazione predefinita tutti gli orari sono relativi a. startTime Ma per il livello 1, il parametro navigationStart viene sottratto dai parametri del timestamp per ottenere valori relativi. Tutti i valori del timestamp sono espressi in millisecondi.

Gli eventi di navigazione contengono le seguenti proprietà.

Nome Tipo Descrizione Note

Tipo di iniziatore

Stringa

Rappresenta il tipo di risorsa che ha avviato l'evento delle prestazioni.

Value (Valore): «navigazione»

Livello 1: «navigazione»

Livello 2: entryData.initiatorType

Tipo di navigazione

Stringa

Rappresenta il tipo di navigazione.

Questo attributo non è obbligatorio.

Valore Il valore deve essere uno dei seguenti:

  • navigate è una navigazione avviata scegliendo un collegamento, inserendo un URL nella barra degli indirizzi di un browser, l'invio di un modulo o l'inizializzazione tramite un'operazione di script diversa da reload o back_forward .

  • reload è una navigazione attraverso l'operazione di ricaricamento del browser o location.reload() .

  • back_forward è una navigazione attraverso l'operazione di attraversamento della cronologia del browser.

  • prerender è una navigazione avviata da un suggerimento prerender. Per ulteriori informazioni, consulta Prerender.

startTime

Numero

Indica quando viene attivato l'evento.

Value (Valore): 0

Livello 1:entrydata.navigationStart - entryData.NavigationStart

Livello 2: entryData.startTime

unloadEventStart

Numero

Indica l'ora in cui il documento precedente nella finestra ha iniziato a scaricarsi dopo che l'evento unload è stato lanciato.

Value (Valore): Se non esiste un documento precedente o se il documento precedente o uno dei reindirizzamenti necessari non hanno la stessa origine, il valore restituito è 0.

Livello 1:

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

Livello 2: EntryData. unloadEventStart

promptForUnload

Numero

Il tempo necessario per scaricare il documento. In altre parole, il tempo tra unloadEventStart e unloadEventEnd. UnloadEventEnd rappresenta il momento in millisecondi al termine del gestore eventi di scarico.

Value (Valore): Se non esiste un documento precedente o se il documento precedente o uno dei reindirizzamenti necessari non hanno la stessa origine, il valore restituito è 0.

Livello 1: EntryData. unloadEventEnd - Dati di ingresso. unloadEventStart

Livello 2: EntryData. unloadEventEnd - Dati di ingresso. unloadEventStart

Redirect Count

Numero

Un numero che rappresenta il numero di reindirizzamenti dall'ultima navigazione non reindirizzata nel contesto di navigazione corrente.

Questo attributo non è obbligatorio.

Value (Valore): Se non è presente alcun reindirizzamento o se è presente un reindirizzamento non della stessa origine del documento di destinazione, il valore restituito è 0.

Livello 1: Non disponibile

Livello 2: entryData.redirectCount

RedirectStart

Numero

L'ora in cui inizia il primo reindirizzamento HTTP.

Value (Valore): Se non è presente alcun reindirizzamento o se è presente un reindirizzamento non della stessa origine del documento di destinazione, il valore restituito è 0.

Livello 1:

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

Livello 2: entryData.redirectStart

Tempo di reindirizzamento

Numero

Il tempo impiegato per il reindirizzamento HTTP. Questa è la differenza tra redirectStart e redirectEnd.

Livello 1:: entryData.redirectEnd - entryData.redirectStart

Livello 2:: entryData.redirectEnd - entryData.redirectStart

workerStart

Numero

Questa è una proprietà dell'interfaccia PerformanceResourceTiming. Segna l'inizio dell'operazione del thread di lavoro.

Questo attributo non è obbligatorio.

Value (Valore): Se un thread Service Worker è già in esecuzione o immediatamente prima di avviare il thread Service Worker, questa proprietà restituisce l'ora immediatamente prima dell'invio di FetchEvent. Restituisce 0 se la risorsa non viene intercettata da un Service Worker.

Livello 1: Non disponibile

Livello 2: entryData.workerStart

workerTime

Numero

Se la risorsa viene intercettata da un Service Worker, restituisce il tempo necessario per l'operazione del thread di lavoro.

Questo attributo non è obbligatorio.

Livello 1: Non disponibile

Livello 2:

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

fetchStart

Numero

Il momento in cui il browser è pronto a recuperare il documento utilizzando una richiesta HTTP. Questo è prima di controllare qualsiasi cache dell'applicazione.

Livello 1:

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

Livello 2: entrydata.fetchStart

domainLookupStart

Numero

Ora di avvio della ricerca del dominio.

Value (Valore): Se viene utilizzata una connessione persistente o se le informazioni sono memorizzate in una cache o in una risorsa locale, il valore sarà lo stesso fetchStart.

Livello 1:

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

Livello 2: EntryData. domainLookupStart

dns

Numero

Il tempo necessario per la ricerca del dominio.

Value (Valore): Se le risorse e i record DNS sono memorizzati nella cache, il valore previsto è 0.

Livello 1: EntryData. domainLookupEnd - Dati di ingresso. domainLookupStart

Livello 2: EntryData. domainLookupEnd - Dati di ingresso. domainLookupStart

nextHopProtocol

Stringa

Stringa che rappresenta il protocollo di rete utilizzato per recuperare la risorsa.

Questo attributo non è obbligatorio.

Livello 1: Non disponibile

Livello 2: EntryData. nextHopProtocol

connectStart

Numero

Il tempo immediatamente prima che l'agente utente inizi a stabilire la connessione al server per recuperare il documento.

Valore: se viene utilizzata una connessione RFC2616 persistente o se il documento corrente viene recuperato dalle cache dell'applicazione o dalle risorse locali pertinenti, questo attributo restituisce il valore di. domainLookupEnd

Livello 1:

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

Livello 2: entryData.connectStart

connect

Numero

Misura il tempo necessario per stabilire le connessioni di trasporto o per eseguire l'autenticazione SSL. Include anche il tempo bloccato impiegato quando sono presenti troppe richieste simultanee emesse dal browser.

Livello 1: entryData.connectEnd - EntryData.connectStart

Livello 2: entryData.connectEnd - EntryData.connectStart

secureConnectionStart

Numero

Se lo schema URL della pagina corrente è «https», questo attributo restituisce il tempo immediatamente prima che l'agente del'utente avvii il processo di handshake per proteggere la connessione corrente. Restituisce 0 se non viene utilizzato HTTPS. Per ulteriori informazioni sugli schemi URL, consulta Rappresentazione dell'URL.

Formula: EntryData. secureConnectionStart

Tempo tls

Numero

Il tempo necessario per completare una handshake SSL.

Livello 1:

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

Livello 2:

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

Inizio richiesta

Numero

Il tempo immediatamente prima che l'agente utente inizi a richiedere la risorsa dal server, dalle cache delle applicazioni pertinenti o dalle risorse locali.

Livello 1:

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

Livello 2: entryData.requestStart

timeToFirstByte

Numero

Il tempo necessario per ricevere il primo byte di informazioni dopo la richiesta. Questa tempo è relativo al startTime.

Livello 1: entryData.responseStart - entryData.requestStart

Livello 2: entryData.responseStart - entryData.requestStart

Avvio risposta

Numero

Il tempo immediatamente dopo che il parser HTTP dell'agente utente riceve il primo byte della risposta dalle cache dell'applicazione pertinenti, dalle risorse locali o dal server.

Livello 1:

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

Livello 2: entryData.responseStart

responseTime

Stringa

Il tempo necessario per ricevere una risposta completa sotto forma di byte dalle cache delle applicazioni pertinenti, dalle risorse locali o dal server.

Livello 1:

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

Livello 2:

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

domInteractive

Numero

Il momento in cui il parser ha terminato il suo lavoro sul documento principale e viene costruito il DOM HTML. In questo momento, il Document.readyState cambia in «interattivo» e l'evento readystatechange corrispondente viene generato.

Livello 1:

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

Livello 2:Entrydata.com Interactive

domContentLoadedEventStart

Numero

Rappresenta il valore temporale uguale al tempo immediatamente precedente all'attivazione dell'evento DOMContent Loaded da parte dello user agent nel documento corrente. L'evento DOMContent Loaded si attiva quando il documento HTML iniziale è stato completamente caricato e analizzato. A questo punto, il documento HTML principale ha terminato l'analisi, il browser inizia a costruire l'albero di rendering e le sottofonti devono ancora essere caricate. Questo non attende che i fogli di stile, le immagini e i fotogrammi secondari finiscano il caricamento.

Livello 1:

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

Livello 2: EntryData. domContentLoadedEventStart

domContentLoaded

Numero

Questa ora di inizio e di fine della costruzione dell'albero di rendering è contrassegnata dalla domContentLoadedEventStart e domContentLoadedEventEnd. Consente a CloudWatch RUM di tracciare l'esecuzione. Questa proprietà è la differenza tra domContentLoadedStart e domContentLoadedEnd.

Durante questo periodo, DOM e CSSOM sono pronti. Questa proprietà attende l'esecuzione dello script, ad eccezione degli script asincroni e creati dinamicamente. Se gli script dipendono dai fogli di stile, domContentLoaded aspetta anche sui fogli di stile. Non aspetta le immagini.

Nota

I valori effettivi di domContentLoadedStart e domContentLoadedEnd approssimati a domContentLoaded nel pannello di rete di Google Chrome. Indica il tempo di costruzione dell'albero di rendering HTML DOM + CSSOM dall'inizio del processo di caricamento della pagina. Nel caso dei parametri di navigazione, il valore di domContentLoaded rappresenta la differenza tra i valori iniziale e finale, ovvero il tempo necessario per scaricare le sottofonti e la costruzione dell'albero di rendering.

Livello 2: EntryData. domContentLoadedEventEnd - Dati di ingresso. domContentLoadedEventStart

Livello 2: EntryData. domContentLoadedEventEnd - Dati di ingresso. domContentLoadedEventStart

DOM completo

Numero

Il tempo immediatamente prima che il browser imposti la disponibilità corrente del documento corrente per il completamento. A questo punto, il caricamento di sottofonti, come le immagini, è completo. Ciò include il tempo impiegato per scaricare contenuti bloccanti come CSS e sincroni. JavaScript Questo si avvicina a loadTime nel pannello di Rete di Google Chrome.

Livello 1:

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

Livello 2: Entrydata.com completo

domProcessingTime

Numero

Il tempo totale tra la risposta e l'avvio dell'evento di caricamento.

Livello 1: EntryData. loadEventStart - EntryData.responseEnd

Livello 2: EntryData. loadEventStart - EntryData.responseEnd

loadEventStart

Numero

Il tempo immediatamente prima dell'evento load del documento corrente viene attivato.

Livello 1:

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

Livello 2: EntryData. loadEventStart

loadEventTime

Numero

La differenza tra loadEventStart e loadEventEnd. Durante questo periodo verranno attivate funzioni o logiche aggiuntive in attesa di questo evento di caricamento.

Livello 1: EntryData. loadEventEnd - Dati di ingresso. loadEventStart

Livello 2: EntryData. loadEventEnd - Dati di ingresso. loadEventStart

durata

Stringa

La durata è il tempo di caricamento totale della pagina. Registra i tempi per il download della pagina principale e di tutte le sue sottofonti sincrone e anche per il rendering della pagina. Le risorse asincrone come gli script continuano a essere scaricate in un secondo momento. Questa è la differenza tra le proprietà loadEventEnd e startTime.

Livello 1: EntryData. loadEventEnd - EntryData.navigationStart

Livello 2: entryData.duration

Dimensioni intestazione

Numero

Restituisce la differenza tra transferSize e encodedBodySize.

Questo attributo non è obbligatorio.

Livello 1: Non disponibile

Livello 2: entryData.transferSize - EntryData. encodedBodySize

Livello 2: entryData.transferSize - EntryData. encodedBodySize

Rapporto di compressione

Numero

Il rapporto di encodedBodySize e decodedBodySize. Il valore di encodedBodySize è la dimensione compressa della risorsa escludendo le intestazioni HTTP. Il valore di decodedBodySize è la dimensione decompressa della risorsa escludendo le intestazioni HTTP.

Questo attributo non è obbligatorio.

Livello 1: Non disponibile.

Livello 2:

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

navigationTimingLevel

Numero

La versione dell'API di tempistica di navigazione.

Value (Valore): 1 o 2

Schemi di eventi delle risorse

Gli eventi delle risorse vengono raccolti solo se il monitor dell'app ha attivato la telemetria delle prestazioni.

Le metriche del timestamp si basano su The typedef. DOMHigh ResTimeStamp Con Level 2 APIs, per impostazione predefinita tutti gli orari sono relativi a. startTime Tuttavia, per il livello 1 APIs, la navigationStart metrica viene sottratta dalle metriche del timestamp per ottenere valori relativi. Tutti i valori del timestamp sono espressi in millisecondi.

Gli eventi delle risorse generati dall'agente contengono le seguenti proprietà.

Nome Tipo Descrizione Note

targetUrl

Stringa

Restituisce l'URL della risorsa.

Formula: EntryData.name

Tipo di iniziatore

Stringa

Rappresenta il tipo di risorsa che ha avviato l'evento della risorsa per le prestazioni.

Value (Valore): «risorsa»

Formula: entryData.initiatorType

durata

Stringa

Restituisce la differenza tra proprietà responseEnd e startTime.

Questo attributo non è obbligatorio.

Formula: entryData.duration

Dimensioni di trasferimento

Numero

Restituisce la dimensione (in ottetti) della risorsa recuperata, inclusi i campi di intestazione della risposta e il corpo del payload della risposta.

Questo attributo non è obbligatorio.

Formula: entryData.transferSize

TipoFile

Stringa

Estensioni derivate dal pattern URL di destinazione.

Il più grande schema di eventi di pittura contentful

I più grandi eventi di pittura contentful contengono le seguenti proprietà.

Questi eventi vengono raccolti solo se il monitor dell'app ha attivato la telemetria delle prestazioni.

Nome Descrizione

Valore

Per ulteriori informazioni, consulta Web Vitals (Informazioni sulla salute Web).

Primo evento di ritardo di input

I primi eventi di ritardo di input contengono le seguenti proprietà.

Questi eventi vengono raccolti solo se il monitor dell'app ha attivato la telemetria delle prestazioni.

Nome Descrizione

Valore

Per ulteriori informazioni, consulta Web Vitals (Informazioni sulla salute Web).

Evento di spostamento cumulativo del layout

Gli eventi cumulativi di spostamento di layout contengono le seguenti proprietà.

Questi eventi vengono raccolti solo se il monitor dell'app ha attivato la telemetria delle prestazioni.

Nome Descrizione

Valore

Per ulteriori informazioni, consulta Web Vitals (Informazioni sulla salute Web).

Evento HTTP

Gli eventi HTTP possono contenere le seguenti proprietà. Conterrà un campo Response o campo Error, ma non entrambi.

Questi eventi vengono raccolti solo se il monitor dell'app ha attivato la telemetria HTTP.

Nome Descrizione

Richiesta

Il campo della richiesta include quanto segue:

  • Il campo Method, che può avere valori come GET, POST e così via.

  • L'URL

Risposta

La risposta include quanto segue:

  • Stato, come 2xx, 4xx o 5xx

  • Testo di stato

Errore

La sezione di errore include quanto segue:

  • Tipo

  • Messaggio

  • Nome file

  • Numero riga

  • Numero colonna

  • Traccia della pila

Schemi di eventi X-Ray

Questi eventi vengono raccolti solo se il monitor dell'app ha attivato il tracciamento X-Ray.

Per informazioni sugli schemi degli eventi X-Ray trace, consulta documenti di un segmento AWS X-Ray.