Envoyer des événements personnalisés - 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.

Envoyer des événements personnalisés

CloudWatch RUMenregistre et ingère les événements listés dans. Informations collectées par le client CloudWatch RUM Web Si vous utilisez la version 1.12.0 ou ultérieure du client CloudWatch RUM Web, vous pouvez définir, enregistrer et envoyer des événements personnalisés supplémentaires. Vous définissez le nom du type d'événement et les données à envoyer pour chaque type d'événement que vous définissez. Chaque charge utile d'événement personnalisé peut atteindre 6 Ko.

Les événements personnalisés sont ingérés uniquement si les événements personnalisés sont activés dans le moniteur d'applications. Pour mettre à jour les paramètres de configuration de votre moniteur d'applications, utilisez la CloudWatch RUM console ou le UpdateAppMonitorAPI.

Après avoir activé les événements personnalisés, puis défini et envoyé des événements personnalisés, vous pouvez les rechercher. Pour les rechercher, utilisez l'onglet Événements de la CloudWatch RUM console. Recherchez en utilisant le type d'événement.

Exigences et syntaxe

Les événements personnalisés se composent d'un type d'événement et des détails de l'événement. Les conditions requises pour ces derniers sont les suivantes :

  • Type d'événement

    • Il peut s'agir du type ou du nom de votre événement. Par exemple, le type d'événement CloudWatch RUM intégré appelé JsErrorpossède un type d'événement decom.amazon.rum.js_error_event.

    • Doit comporter entre 1 et 256 caractères.

    • Peut être une combinaison de caractères alphanumériques, de traits de soulignement, de tirets et de points.

  • Détails de l'événement

    • Contient les données réelles dans lesquelles vous souhaitez enregistrer CloudWatch RUM.

    • Doit être un objet qui se compose de champs et de valeurs.

Exemples d'enregistrement d'événements personnalisés

Il existe deux manières d'enregistrer des événements personnalisés dans le client CloudWatch RUM Web.

  • Utilisez celui du client CloudWatch RUM Web recordEventAPI.

  • Utilisez un plugin personnalisé.

Envoyez un événement personnalisé à l'aide de recordEvent API l'NPMexemple

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

Envoyer un événement personnalisé à l'aide de recordEvent API l'exemple de script intégré

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

Exemple d'envoi d'un événement personnalisé à l'aide d'un plugin personnalisé

// 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); } }