Avec l'onglet Group errors vous pouvez filtrer et regrouper dynamiquement les erreurs pour une analyse plus approfondie. Les erreurs de groupe vous montrent où se produisent vos erreurs JavaScript et fournissent des outils pour vous aider à déterminer la cause première. Vous pouvez également interroger et créer un dashboard des données d'erreur JS dans le générateur de requêtes, ou utiliser l'API du navigateur pour monitorer les erreurs gérées.

Pour examiner les erreurs JavaScript :
- Allez à one.newrelic.com > All capabilities > Browser > (select an app) > Errors.
- Utilisez les options disponibles dans l’ UI pour examiner ce qui peut être à l’origine des erreurs.
- Facultatif : Vérifiez le suivi des événements ou la trace d'appels dans l'UI.
- Facultatif : interrogez et créez un dashboard pour les données d'erreur JS avec le générateur de requêtes, ou utilisez l'API pour monitorer ou log les erreurs.
Affichage de la liste des erreurs
Commencez par le tableau des erreurs de chargement de page pour voir en un coup d’œil s’il y a des pics, des creux ou des modèles inattendus avec des erreurs en général. Mettez en corrélation les modèles généraux du graphique des 5 principales erreurs avec les alertes survenues au cours de la même période.
- Dynamic grouping: Le regroupement par défaut des occurrences d’erreur est basé sur le message d’erreur. Vous avez la possibilité de modifier les options de regroupement par n'importe quel attribut, jusqu'à cinq attributs à la fois.
- Filtering: De nombreux clients New Relic attribuent instrument personnalisé. Le filtrage sur un attribut personnalisé spécifique peut être un moyen rapide de réduire le bruit de toutes les occurrences d'erreur.

Profils d'erreur
Les profils d’erreur révèlent les utilisateurs fréquemment impactés pendant une période donnée. Vous pouvez télécharger les attributs utilisateur au format CSV ou explorer les répartitions détaillées en sélectionnant des lignes individuelles. Profitez de ces informations détaillées pour prioriser le débogage et améliorer la stabilité des applications.

one.newrelic.com > All capabilities > Browser > (select an app) > Errors (errors inbox) > View profiles
Affichage des détails des erreurs
Sur cette page, vous pouvez approfondir un groupe d’erreurs spécifique. La vue détaillée fournit des détails contextuels. À partir de la vue détaillée, vous pouvez parcourir les occurrences d'erreur spécifiques à l'aide du bouton bascule en haut à droite pour naviguer entre la première instance de l'erreur, la dernière ou toute instance intermédiaire. En haut de la page de détails, vous pouvez inspecter les champs Filtered et Grouped By pour voir comment les informations ont été filtrées et regroupées. Vous pouvez recevoir un message permanent d'un événement spécifique. Il est important de connaître les filtres et les sélections de regroupement pour comprendre le contexte de l'événement.

Onglet Occurrences
L'onglet Occurrences inclut non seulement la fréquence des erreurs, les détails de l'occurrence et la trace des appels, mais également des informations de triage.
Section de triage

La section de triage relie l'occurrence d'erreur spécifique que vous visualisez à un groupe d'erreurs créé par le système qui possède une empreinte digitale unique. Pourquoi est-ce important ? Cette empreinte digitale unique vous permet de trier un groupe d’erreurs à l’aide d’une mise à jour de statut ou d’une affectation. Les groupes d’erreurs créés par le système sont ceux que vous trouvez dans l’onglet Triage . Pour plus d'informations sur la manière dont ils sont générés, voir Fonctionnement des groupes d'erreurs.
trace d'appel
trace d'appels peut vous montrer d'où provient une erreur dans le code pour aider à une résolution plus rapide. Il existe différentes manières de s'assurer que le code que vous visualisez n'est pas minifié. Vous pouvez télécharger manuellement des cartes sources via l'UI ou via l'API.
Résoudre les problèmes de traces d'appels manquantes
Voici quelques raisons pour lesquelles vous ne voyez pas de trace d'appels pour une erreur :
Si aucune erreur n'est générée, il n'y aura aucune trace d'appels.
- Exemple d'erreur renvoyée qui n'aura PAS de trace d'appels : throw
this is an error string
. - Exemple d'erreur levée qui aura une trace d'appels : throw new Error
this is an error string
.
- Exemple d'erreur renvoyée qui n'aura PAS de trace d'appels : throw
Le Javascript est hébergé sur un CDN ou un autre emplacement externe, et New Relic ne peut pas voir les erreurs provenant de ces scripts. Cela peut être résolu dans certains cas en utilisant le partage de ressources inter-origines (CORS).
C'est une erreur AngularJS. Pour en savoir plus, consultez Erreurs angulaires manquantes.
L'erreur est un
SyntaxError
ouScript error
: elles se produisent pendant le chargement du script, elles ne produisent donc pas de trace d'appels.Certains navigateurs plus anciens peuvent générer des erreurs sans trace d'appels, ou peuvent fournir une trace d'appels qui n'est pas utilisable.
Vous avez capturé l'erreur avant que l'agent New Relic ne la voie.
Si l'erreur survient lors de plusieurs cycles de collecte au cours d'une même visite utilisateur, seul l'événement d'erreur signalé lors du premier cycle de collecte aura une trace d'appels enregistrée.
Solutions pour signaler les traces d'appels
- Utilisez l' appel d'API
noticeError
. - Utilisez la page JS errors UI pour obtenir plus d'informations, y compris le suivi des événements. La page JS errors est conçue pour vous fournir des informations exploitables même sans aucune trace d'appels.
suivi des événements
Pour certains navigateurs plus anciens, les erreurs suivantes peuvent ne pas être disponibles : monitoring SPA doit être activée. Le suivi des événements montre l'interaction du navigateur, les appels AJAX et la trace qui a conduit à une erreur Javascript. Cela peut vous aider à résoudre la cause première des erreurs.
Par exemple, si une erreur JS se produit après une requête AJAX qui fournit un message d'erreur, il se peut que votre requête AJAX ne contienne pas les bonnes informations. Cela entraîne une erreur JS en raison d'un appel AJAX ayant échoué.

Voici quelques raisons pour lesquelles l’événement dans le log des événements n’est pas présent :
- Agent version. Pour capturer les données log des événements, votre site doit avoir monitoringSPA activée (version de l'agent de navigateur 1071 ou supérieure).
- JS error not part of a browser interaction. Si l'erreur JS se produit en dehors d'une interaction, les détails de l'interaction du navigateur associés ne peuvent pas être capturés (par exemple : si un fichier JS asynchrone rencontre une erreur).
- A click triggered the JS error. Dans certains cas, si l’erreur est le résultat direct d’un clic, aucune interaction associée n’est capturée. Sans log des événements ni trace d'appels, vous pouvez utiliser les graphiques de détails des erreurs pour analyser l'impact de l'erreur par type de navigateur, type d'appareil et URI.
Interroger et visualiser des données JS
New Relic enregistre les erreurs JS sous forme de données d'événement. Cela vous permet de requêter vos données d'erreur dans le générateur de requêtes. Pour exécuter une requête NRQL et créer un dashboard à visualiser ou partager, requêtez le type d'événement JavaScriptError dans le générateur de requêtes.
Erreurs globales et génériques
New Relic encapsule des fonctions JavaScript pour obtenir des informations sur les erreurs générées via la trace d'appels. Si aucune erreur n'est générée, elles ne seront pas disponibles. Par exemple, si vous avez une application AngularJS, suivez les procédures de dépannage lorsque les erreurs AngularJS n'apparaissent pas dans l'UI. Pour certains navigateurs plus anciens, les erreurs suivantes peuvent ne pas être disponibles :
SyntaxError
ouScript error
: ceux-ci se produisent pendant le chargement du script, ils ne produisent donc pas de trace d'appels.- Erreurs JavaScript en ligne ou du gestionnaire d'événements : elles ne sont pas encapsulées.
- Les erreurs générées par un script tiers résidant sur un autre domaine ne sont pas disponibles.
- Erreurs survenant sur les navigateurs plus anciens : ceux-ci peuvent ne pas être en mesure de fournir une trace d'appels utilisable. Dans certains cas, ils peuvent ne fournir aucune trace d'appel. La collecte des erreurs est effectuée en encapsulant les fonctions JavaScript, de sorte que les erreurs générées par le navigateur à un niveau inférieur (telles que les erreurs de partage de ressources entre origines ) ne sont pas non plus disponibles.