Surveillance des sites web

La surveillance des sites web, souvent appelée « surveillance de l'expérience utilisateur » (EUM) ou « surveillance des utilisateurs réels » (RUM), est un outil essentiel pour comprendre l'expérience utilisateur numérique.

Concepts

Instana prend en charge la surveillance de site Web en analysant les temps des demandes de navigateur et les temps de chargement des routes réels. Il fournit des informations détaillées sur l'expérience de navigation Web des utilisateurs et une visibilité approfondie des chemins d'appel d'application.

Figure 1. Présentation de la surveillance de sites web
Présentation de la surveillance du site Web

Chargé de manière asynchrone sur le site web, l'agent transmet ses résultats à Instana sous forme de balises. Vous trouverez ces données de balise sous forme agrégée dans les tableaux de bord relatifs au site Web de l'interface utilisateur d'Instana. Les tableaux de bord permettent d'explorer le comportement et la vitesse des sites web. Ils sont accessibles à un large public et répondent aux questions les plus courantes. Il est possible de répondre à des questions et à des hypothèses plus spécifiques en utilisant des capacités d'analyse.

La capture d'écran suivante montre les données collectées pour un chargement de page, qui combine l'activité du navigateur d'un utilisateur et des liens vers le traçage dorsal.

Figure 2. Historique du site web
Trace du site Web

Installation

La solution de surveillance de sites web d' Instana fonctionne à l'aide d'un agent léger d' JavaScript, qui est intégré au site web surveillé. Pour installer l'agent « JavaScript », accédez à la section «Sites Web» de l'interface utilisateur d' Instana afin de commencer à suivre les données de performance des sites Web. L'interface utilisateur d' Instana vous guide tout au long du processus d'installation.

Figure 3 Instana interface utilisateur guidant l'utilisateur tout au long du processus de configuration
Instana interface utilisateur guidant l'utilisateur tout au long du processus de configuration

Activer l' Subresource Integrity

Instana La surveillance de sites Web vous offre la possibilité d'activer l'option « Subresource Integrity » ( SRI ) pour le script de suivi. Les utilisateurs peuvent activer ou désactiver l' SRI pour leur script de suivi et choisir une version spécifique de l'agent à l'aide de l' SRI. Dans le script de suivi, la version de l'agent JavaScript a été ajoutée, et un nouveau champ integrity apparaît avec le hachage base64-encoded sha384.

Figure 4 Activation de l'intégrité des sous-ressources pour la surveillance des sites Web
Activation de l'intégrité des sous-ressources pour la surveillance du site Web

Lorsque l'option « Subresource Integrity » est désactivée, le script de suivi utilise par défaut la dernière version de l'agent JavaScript, mais ne contient pas le champ d'intégrité.

Figure 5. Désactivation de l'intégrité des sous-ressources pour la surveillance des sites Web
Désactivation de l'intégrité des sous-ressources pour la surveillance du site Web
Remarque : le protocole « SRI » est une fonctionnalité de sécurité qui permet aux navigateurs de vérifier l'authenticité des ressources qu'ils récupèrent. Bien qu'il soit recommandé d'activer l' SRI e pour des raisons de sécurité, vous devez vérifier manuellement que vous utilisez bien la dernière version de l'agent dans la liste déroulante. Si vous décidez de le désactiver, vous utilisez la version la plus récente de l'agent mais vérifiez que vous vous trouvez dans un environnement réseau sécurisé.

Activer la détection automatique des changements de page

Si votre site web est une application monopage (SPA), vous pouvez configurer l'agent pour qu'il détecte automatiquement les transitions de page au sein de votre site web. L'activation de la détection automatique des changements de page évite d'avoir à modifier l'application pour y ajouter des appels à l'agent lors de ces changements. La détection automatique des transitions de page est activée par défaut pour les applications monopages. Pour activer cette option, sélectionnez « Applications monopages », puis réglez le paramètre « Activer la détection automatique des transitions de page » sur « Oui ».

Figure 6 application à page unique
Choisir une application monopage

Lorsque la détection automatique des changements de page est activée, l'agent envoie des balises qui utilisent soit le titre de la page, soit l'adresse URL comme nom de page. Il est utile de choisir un nom de page pertinent lorsque vous analysez les balises de votre site web. Pour les sites web dont les pages ont déjà un titre pertinent, utilisez ce titre comme nom de page dans les balises.

Lorsque vous utilisez l'adresse URL comme nom de page, il peut être utile de remplacer URL par un nom plus explicite dans la balise. Vous pouvez fournir une expression régulière qui convertit un motif d' URL s en un nom descriptif.

Pour saisir une expression régulière, procédez comme suit :

  1. Cochez la case « Activer le mappage par expression régulière ».
  2. Saisissez une ou plusieurs expressions régulières décrivant les URL de vos pages, en attribuant un nom explicite à chacune d'entre elles. Les URL de pages correspondant à une expression régulière sont remplacées par le nom descriptif indiqué dans la balise.
  3. Une fois que vous avez fini de saisir les expressions régulières, cliquez sur « Tout enregistrer » pour mettre à jour le script de suivi avec cette configuration.
Figure 7. Activation du mappage par expressions régulières
Activer le mappage par expressions régulières
Remarque : la configuration de la détection automatique des pages, y compris les expressions régulières, n'est pas enregistrée avec la configuration du site web. Veillez à copier le script de suivi avant de quitter la page de configuration du site web. Le script de suivi contient la configuration de la détection automatique des pages, y compris les expressions régulières.

De plus, si votre site web est une application monopage (SPA) et que la détection automatique des changements de page est activée, l'agent recueillera automatiquement les valeurs relatives à la durée des changements de page. Cette durée comprend à la fois le temps nécessaire à la transition visuelle de la page (c'est-à-dire les mises à jour du DOM) et le temps nécessaire au chargement des ressources initiales déclenchées par cette transition, telles que les appels à l' API, les images ou les scripts. La durée totale est mesurée en millisecondes et fournit des informations précieuses sur l'impact global d'une transition de page sur les performances, du point de vue de l'utilisateur.

Pour plus d'informations, consultez la page JavaScript agent API.

Tableaux de bord

Pour commencer à utiliser la surveillance de sites web d' Instana, il suffit de saisir le nom de votre site web et de copier un extrait de code JavaScript. Pour plus d'informations sur la surveillance d'un site web, voir la section installation.

Vitesse

Dans l'onglet Vitesse, vous pouvez afficher le débit, le temps d'attente et les métriques qui décrivent les temps de chargement des pages.

Figure 8. Vitesse de chargement du site web
Vitesse de surveillance du site Web

Ressources

Les ressources tierces, telles que les scripts et les images, sont souvent responsables du chargement lent des pages. Dans l'onglet des ressources, vous pouvez trouver un tableau qui affiche tous les fournisseurs de ressources qui sont activement utilisés par votre site Web.

Figure 9. Ressources pour la surveillance de sites web
Ressources de surveillance du site Web

Une fois que vous avez cliqué sur une origine spécifique, vous pouvez voir des informations plus détaillées, notamment les répartitions de temps de chargement et les performances de mise en cache. Vous pouvez voir les changements dans les statistiques de mise en cache au fil du temps et la façon dont elles sont liées aux temps de chargement.

Figure 10. Ressources pour la surveillance de sites web
Ressources de surveillance du site Web

Requêtes HTTP

Dans l'onglet « Requêtes d' HTTP », vous pouvez analyser quelles requêtes d' HTTP sont lentes ou posent problème. Si vous sélectionnez une origine spécifique, vous obtiendrez des informations détaillées sur la répartition des méthodes d' HTTP, le débit et la latence, ainsi que sur les taux d'erreur et la répartition de la latence.

Figure 11. HTTP détails de la demande
HTTP Détails de la demande

Erreurs

Des erreurs peuvent se produire dans les processus critiques. Par exemple, lors du processus de paiement d'articles achetés sur une boutique en ligne, des erreurs de double prélèvement peuvent se produire. En conséquence, le client peut être mécontent et l'entreprise doit prendre des dispositions, par exemple pour procéder à un remboursement par carte de crédit.

Bien que le fait de voir des erreurs non interceptées dans des traces soit utile, parfois vous ne vous souciez pas d'un seul problème. Lorsque de nombreuses équipes sont impliquées ou que de nombreuses erreurs surviennent, il est beaucoup plus utile d'avoir une vue d'ensemble de la situation. Dans l'interface utilisateur d' Instana, vous disposez d'un récapitulatif complet des erreurs, comprenant les informations suivantes :

  • Les erreurs qui se produisent et le nombre d'erreurs qui existent
  • Nombre d'utilisateurs affectés
  • Dans quels navigateurs les erreurs se produisent
  • Dans quels systèmes d'exploitation les erreurs se produisent
  • Pages dans lesquelles les erreurs se produisent

Les informations sur les utilisateurs concernés sont disponibles à mesure que les informations utilisateur sont mises à la disposition de l'agent JavaScript . Pour plus d'informations, voir Identification des utilisateurs.

Figure 12. Répartition des erreurs
Répartition des erreurs non interceptées

Événements personnalisés

Vous pouvez afficher la liste des événements personnalisés dans l'onglet Evénements personnalisés . Sélectionnez un événement pour afficher toutes les métriques associées.

Figure 13. Evénements personnalisés
Evénements personnalisés

Pour plus d'informations sur la génération de rapports sur les événements personnalisés, voir Génération de rapports sur les événements personnalisés.

Pages

Souvent, il est important d'isoler des pages spécifiques et d'analyser leurs performances. Cette vue est également idéale pour identifier la page sur laquelle le trafic est le plus élevé ou qui présente les temps de réponse les plus longs.

Une fois que vous avez sélectionné une page spécifique, vous pouvez voir tous les indicateurs de cette seule page.

Figure 14. Détails de la page
Détails de la page

Pour plus d'informations sur la manière de configurer Instana afin qu'il suive non seulement les chargements de pages, mais aussi les transitions entre pages, consultez la section Page.

Association des équipes

Vous pouvez attribuer une équipe à un site web spécifique, mais seules les équipes dont vous faites partie seront disponibles.

Une fois que les équipes ont été associées à des sites web, seuls leurs membres pourront consulter ces sites dans l'interface utilisateur. De plus, votre niveau d'accès au site web dépend des rôles qui vous sont attribués au sein de cette équipe.

Figure 15. Association d'équipes
Association d'équipes

Pour plus d'informations sur Team, consultez la section Team.

Alertes intelligentes

Affichez la liste de toutes les alertes intelligentes configurées. Cliquez sur une alerte pour afficher sa configuration, la modifier ou afficher son historique de révision. Si nécessaire, vous pouvez également désactiver ou retirer l'alerte.

La liste des alertes intelligentes, ainsi que chacune des configurations individuelles, affiche les équipes associées aux SLO sous-jacents pour lesquels l'alerte intelligente a été configurée.

Pour plus d'informations sur l'ajout d'une alerte, voir Smart Alerts.

Analyser

À l'instar des fonctionnalités d'analyse d' Instana pour les traces et les appels, la vue d'analyse des données de surveillance des sites Web permet de répondre à des questions spécifiques qui ne sont couvertes par aucun tableau de bord préconfiguré. Un élément de données de surveillance de site Web est appelé balise. Il existe plusieurs types de balises : le chargement de pages, les requêtes HTTP, les ressources et les erreurs JavaScript. Pour des raisons de commodité, chaque type de balise possède son propre élément de navigation principal dans la vue analytique.

Les données de balise peuvent être utilisées pour le filtrage et le regroupement. Le regroupement par défaut dépend du type de balise sélectionné. Il est possible de désactiver le regroupement pour examiner les balises individuelles qui correspondent aux filtres.

Vue groupée

Dans la vue analytique groupée, les données de balises sont regroupées en fonction d'une étiquette. Par défaut, les données de balise sont regroupées comme suit:

  • La page est chargée par nom de page (beacon.page.name).
  • Ressources par origine de ressource (beacon.http.origin).
  • HTTP demandes par origine de la cible d'appel (beacon.http.origin).
  • les erreurs JavaScript par message d'erreur (beacon.error.message).

La capture d'écran suivante montre les chargements de page regroupés par nom de navigateur (beacon.browser.name), avec un graphique qui affiche la distribution des temps de chargement de page (moyenne) dans les navigateurs pour un site Web appelé Robotshop.

Figure 16. Chargements de pages par lots
Groupes de chargements de pages

Sélection de métrique

Le tableau d'analyse présente pour chaque type de balise un ensemble par défaut de métriques qui sont utiles dans la plupart des cas. Pour répondre à des questions plus précises, le guide « Instana » propose une sélection d'indicateurs pour ces tableaux. Le choix des indicateurs permet d'effectuer des analyses à l'aide de différentes agrégations, par exemple des centiles, ainsi que d'indicateurs distincts, tels que les temps de réponse « TCP » et « SSL ».

La combinaison de filtrage, de regroupement, de sélection d'indicateurs et de graphiques est suffisante pour que tous les tableaux et graphiques trouvés dans les tableaux de bord du site Web puissent être régénérés dans la vue d'analyse.

Figure 17. sélection de métrique
Colonnes sélectionnables dans l'analyse

Vue non groupée

La vue non groupée est accessible une fois que les critères de regroupement ont été supprimés. Il répertorie toutes les balises qui correspondent aux filtres fournis. La vue non groupée constitue également une passerelle vers la vue des chargements de page.

Figure 18. Vue non groupée
Colonnes sélectionnables dans l'analyse

Vue de chargement de page

A l'instar de la vue de trace pour les traces et les appels, la vue de chargement de page est le niveau de détail le plus élevé dans Instana. Un chargement de page est défini comme l'extraction du document HTML initial et de tout ce qui suit jusqu'à la prochaine navigation pleine page.

La vue de chargement de page est conçue pour vous donner un aperçu rapide du chargement de page qui s'est produit. De plus, vous pouvez consulter toutes les données reçues par Instana lors du chargement de la page, ce qui signifie que le contexte est toujours disponible lorsque vous analysez les problèmes. Par exemple, lorsque vous analysez les erreurs de type « JavaScript », cette vue vous aide à mieux comprendre ce qui s'est passé auparavant.

La vue de chargement de page s'inspire des onglets relatifs au réseau des outils de développement Web communs. Le filtrage et la recherche sont possibles pour traiter même une grande quantité de données. Même la navigation vers les traces de backend est possible pour obtenir une compréhension complète pourquoi quelque chose se comporte comme il est !

Figure 19. Vue de chargement de page
Colonnes sélectionnables dans l'analyse

Afficher les dépendances des services pour les sites web

L'onglet « Dépendances » affiche les services directs auxquels le site web sélectionné fait appel. Le nœud racine représente le site web, et les nœuds de premier niveau indiquent les services dont il dépend. Vous pouvez consulter ces informations sous forme de graphique ou de tableau détaillé.

Lorsque vous cliquez sur le nœud du site web dans le graphique, le panneau latéral affiche les détails des appels, tels que le nombre total d'appels, le taux d'erreur et la latence moyenne des appels effectués par le site web. Lorsque vous cliquez sur un nœud de service, le panneau latéral affiche le nombre total d'appels reçus par le service, les appels provenant du site web sélectionné, ainsi que les mêmes indicateurs d'appel (nombre d'appels, taux d'erreur et latence moyenne).

Vous pouvez consulter les problèmes détectés au niveau du site web ou du service, classés par niveau de gravité.

Figure 20. vue des dépendances
Tableau de bord des dépendances

Intégration de la vue de trace

L'activation de la surveillance de site Web pour vos sites Web améliore également les vues de trace. Les vues de trace sont enrichies avec les données de surveillance du site Web comme le montre la capture d'écran suivante.

Figure 21. Intégration de la vue de trace
Le récapitulatif de chargement de page est visible dans la vue de trace

Données géographiques

Instana associe les adresses IP des utilisateurs finaux à des informations géographiques issues de la base de données GeoLite2, fournie par MaxMind. Les adresses IP sont collectées à l'aide du serveur proxy inverse.

Pour une installation auto-hébergée, veillez à configurer l'adresse URL du point de terminaison de surveillance de l'utilisateur final comme adresse de rapport de l' URL de l'agent. Sinon, les adresses IP ne sont pas collectées et les informations géographiques associées ne sont pas disponibles.