Syntaxe
newrelic.addPageAction(string $name[, JSON object $attributes])
Rapporte un événement PageAction du navigateur avec un nom et un attribut facultatif.
Exigences
Agent navigateur Pro ou Pro+SPA (v593 ou supérieur)
Si vous utilisez npm pour installer l'agent du navigateur, vous devez activer la fonctionnalité
generic_events
lors de l'instanciation de la classeBrowserAgent
. Dans l'éventailfeatures
, ajoutez ce qui suit :import { GenericEvents } from '@newrelic/browser-agent/features/generic_events';const options = {info: { ... },loader_config: { ... },init: { ... },features: [GenericEvents]}Pour plus d'informations, consultez la documentation d'installation du navigateur npm.
Description
Cet appel d'API envoie un événementPageAction
du navigateur avec votre nom défini par l'utilisateur et un attribut facultatif au dashboard, ainsi que plusieurs attributs par défaut. Cela est utile pour suivre tout événement qui n'est pas déjà suivi automatiquement par l'agent du navigateur, comme cliquer sur un bouton Subscribe ou accéder à un didacticiel.
PageAction
événement sont envoyés toutes les 30 secondes.- Si 1 000 événements sont observés, l'agent récoltera immédiatement l'événement mis en mémoire tampon, en contournant l'intervalle du cycle de collecte.
Important
Dans les versions antérieures de l'agent, les événements étaient abandonnés après que 120 aient été observés. La limite des événements a été augmentée de 120 à 1 000 dans la version 1.264.0 et n'est plus supprimée.
Paramètres
paramètres | Description |
---|---|
chaîne | Requis. Nom ou catégorie de l'action. Signalé comme l'attribut Évitez d’utiliser des mots NRQL réservés lorsque vous nommez l’attribut ou la valeur. |
Objet JSON | Facultatif. Objet JSON avec une ou plusieurs paires valeur-clé. Par exemple : Évitez d’utiliser des mots NRQL réservés lorsque vous nommez l’attribut/la valeur. |
Exemples
Enregistrer les clics sur les liens (JavaScript)
Cet exemple enregistre un événement PageAction chaque fois qu'un utilisateur sélectionne le lien Try Me . L'événement est enregistré avec un actionName
de clickedTryMe
:
<a href="/demo" id="try-me">Try Me!</a><script> document.getElementById('try-me').addEventListener('click', function (e) { newrelic.addPageAction('clickedTryMe'); });</script>
Vous pouvez ensuite interroger le nombre de fois que le bouton Try Me a été cliqué avec la requête NRQL suivante :
SELECT count(*) FROM PageAction WHERE actionName = 'clickedTryMe' SINCE 1 hour ago
Enregistrer les clics sur les liens (jQuery)
Cet exemple envoie un événement PageAction lorsqu'un utilisateur clique sur un élément avec la classe copy-text
. Le actionName
est copy-text-button
et la valeur est signalée comme un autre attribut appelé Result
qui correspond aux méthodes nommées success
et error
qui gèrent le résultat.
$('.copy-text').click(function() { var clipboard = new Clipboard('.copy-text'); clipboard.on('success', function(event) { // Do stuff // Report data to New Relic if (typeof newrelic == 'object') { newrelic.addPageAction('copy-text-button', { result: 'success' }); } }); clipboard.on('error', function(event) { // Do stuff // Report data to New Relic if (typeof newrelic == 'object') { newrelic.addPageAction('copy-text-button', { result: 'error' }); } });});
Ensuite, dans le générateur de requêtes, vous pouvez créer un graphique à secteurs pour voir la répartition du nombre de clics sur les boutons ayant abouti à un succès par rapport à une erreur au cours des 30 derniers jours :
SELECT count(*) AS 'Clicks' FROM PageAction WHERE actionName = 'copy-text-button' FACET result SINCE 30 days ago
Vous pouvez également créer une requête pour voir quelles pages ont enregistré le plus de clics sur le bouton Copier au cours des 30 derniers jours :
SELECT count(*) AS 'Clicks' FROM PageAction WHERE actionName = 'copy-text-button' FACET currentUrl SINCE 30 days ago
Saisir les données du formulaire
Cet exemple capture la saisie utilisateur (adresses e-mail) à partir d'un formulaire appelé Signup. L'événement est enregistré avec un actionName
de userSignup
:
<form action="/signup" id="myform"> <input id="email" name="email" /> <input type="submit" value="Signup" /></form><script type="text/javascript"> document.getElementById('myform').addEventListener('submit', function (e) { var email = e.target.elements['email'].value; newrelic.addPageAction('userSignup', { email: email }); });</script>
Vous pouvez ensuite voir les e-mails que vous avez collectés avec la requête NRQL suivante :
SELECT uniques(email) FROM PageAction WHERE actionName = 'userSignup' SINCE 1 hour ago