Invio di eventi personalizzati - 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à.

Invio di eventi personalizzati

CloudWatch RUMregistra e inserisce gli eventi elencati inInformazioni raccolte dal client web CloudWatch RUM. Se si utilizza la versione 1.12.0 o successiva del client CloudWatch RUM Web, è possibile definire, registrare e inviare eventi personalizzati aggiuntivi. Puoi stabilire il nome del tipo di evento e i dati da inviare per ogni tipo di evento che definisci. Ogni payload di eventi personalizzato può contenere fino a 6 KB.

Gli eventi personalizzati vengono inseriti solo se sono stati abilitati nel monitoraggio dell'app. Per aggiornare le impostazioni di configurazione del monitor dell'app, utilizza la CloudWatch RUM console o il. UpdateAppMonitorAPI

Dopo aver abilitato gli eventi personalizzati e aver definito e inviato gli eventi personalizzati, puoi effettuare una ricerca. Per cercarli, usa la scheda Eventi nella CloudWatch RUM console. Effettua la ricerca utilizzando il tipo di evento.

Requisiti e sintassi

Gli eventi personalizzati sono costituiti da un tipo di evento e dai relativi dettagli. I parametri sono i seguenti:

  • Tipo di evento

    • Questo valore può essere il tipo o il nome dell'evento. Ad esempio, il tipo di evento CloudWatch RUM integrato chiamato JsErrorha un tipo di evento dicom.amazon.rum.js_error_event.

    • Deve contenere da 1 a 256 caratteri.

    • Può essere una combinazione di caratteri alfanumerici, caratteri di sottolineatura, trattini e punti.

  • Dettagli dell'evento

    • Contiene i dati effettivi in cui si desidera registrare CloudWatch RUM.

    • Deve essere un oggetto composto da campi e valori.

Esempi di registrazione di eventi personalizzati

Esistono due modi per registrare eventi personalizzati nel client CloudWatch RUM Web.

  • Usa quelli del client CloudWatch RUM web recordEventAPI.

  • Utilizza un plug-in personalizzato.

Invia un evento personalizzato utilizzando recordEvent API l'NPMesempio

awsRum.recordEvent('my_custom_event', { location: 'IAD', current_url: 'amazonaws.com', user_interaction: { interaction_1 : "click", interaction_2 : "scroll" }, visit_count:10 } )

Invia un evento personalizzato utilizzando l'recordEventAPIesempio di script incorporato

cwr('recordEvent', { type: 'my_custom_event', data: { location: 'IAD', current_url: 'amazonaws.com', user_interaction: { interaction_1 : "click", interaction_2 : "scroll" }, visit_count:10 } })

Esempio di invio di un evento personalizzato tramite un plug-in personalizzato

// Example of a plugin that listens to a scroll event, and // records a 'custom_scroll_event' that contains the timestamp of the event. class MyCustomPlugin implements Plugin { // Initialize MyCustomPlugin. constructor() { this.enabled; this.context; this.id = 'custom_event_plugin'; } // Load MyCustomPlugin. load(context) { this.context = context; this.enable(); } // Turn on MyCustomPlugin. enable() { this.enabled = true; this.addEventHandler(); } // Turn off MyCustomPlugin. disable() { this.enabled = false; this.removeEventHandler(); } // Return MyCustomPlugin Id. getPluginId() { return this.id; } // Record custom event. record(data) { this.context.record('custom_scroll_event', data); } // EventHandler. private eventHandler = (scrollEvent: Event) => { this.record({timestamp: Date.now()}) } // Attach an eventHandler to scroll event. private addEventHandler(): void { window.addEventListener('scroll', this.eventHandler); } // Detach eventHandler from scroll event. private removeEventHandler(): void { window.removeEventListender('scroll', this.eventHandler); } }