Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Benutzerdefinierte Ereignisse senden
CloudWatch RUMzeichnet die unter aufgeführten Ereignisse auf und nimmt sie aufVom Webclient gesammelte Informationen CloudWatch RUM. Wenn Sie Version 1.12.0 oder höher des CloudWatch RUM Webclients verwenden, können Sie zusätzliche benutzerdefinierte Ereignisse definieren, aufzeichnen und senden. Sie definieren den Namen des Ereignistyps und die zu sendenden Daten für jeden Ereignistyp, den Sie definieren. Jede benutzerdefinierte Ereignis-Nutzlast kann bis zu 6 KB groß sein.
Benutzerdefinierte Ereignisse werden nur erfasst, wenn der Anwendungsmonitor benutzerdefinierte Ereignisse aktiviert hat. Um die Konfigurationseinstellungen Ihres App Monitors zu aktualisieren, verwenden Sie die CloudWatch RUM Konsole oder die. UpdateAppMonitorAPI
Nachdem Sie benutzerdefinierte Ereignisse aktiviert und anschließend benutzerdefinierte Ereignisse definiert und gesendet haben, können Sie nach ihnen suchen. Verwenden Sie die Registerkarte Ereignisse in der CloudWatch RUM Konsole, um nach ihnen zu suchen. Suchen Sie anhand des Ereignistyps.
Anforderungen und Syntax
Benutzerdefinierte Ereignisse bestehen aus einem Ereignistyp und Ereignisdetails. Die Anforderungen für diese sind Folgende:
Ereignistyp
-
Dies kann entweder der type (Typ) oder der name (Name) Ihres Ereignisses sein. Beispielsweise JsErrorhat der CloudWatch RUM integrierte Ereignistyp namens den Ereignistyp
com.amazon.rum.js_error_event
. -
Muss zwischen 1 und 256 Zeichen lang sein.
-
Kann eine Kombination aus alphanumerischen Zeichen, Unterstrichen, Bindestrichen und Punkten sein.
-
Ereignisdetails
-
Enthält die eigentlichen Daten, in denen Sie aufzeichnen möchten CloudWatch RUM.
-
Muss ein Objekt sein, das aus Feldern und Werten besteht.
-
Beispiele für die Aufzeichnung benutzerdefinierter Ereignisse
Es gibt zwei Möglichkeiten, benutzerdefinierte Ereignisse im CloudWatch RUM Webclient aufzuzeichnen.
Verwenden Sie die des CloudWatch RUM Webclients
recordEvent
API.Verwenden Sie ein benutzerdefiniertes Plugin.
Senden Sie ein benutzerdefiniertes Ereignis anhand des recordEvent
API NPM Beispiels
awsRum.recordEvent('my_custom_event', { location: 'IAD', current_url: 'amazonaws.com', user_interaction: { interaction_1 : "click", interaction_2 : "scroll" }, visit_count:10 } )
Senden Sie ein benutzerdefiniertes Ereignis mithilfe des recordEvent
API Beispiels für ein eingebettetes Skript
cwr('recordEvent', { type: 'my_custom_event', data: { location: 'IAD', current_url: 'amazonaws.com', user_interaction: { interaction_1 : "click", interaction_2 : "scroll" }, visit_count:10 } })
Beispiel für das Senden eines benutzerdefinierten Ereignisses mit einem benutzerdefinierten Plugin
// 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); } }