Fermer

septembre 9, 2021

Azure Application Insights pour les applications Sitecore


Azure Application Insights, une fonctionnalité de Azure Monitorest une plateforme en tant que service (PaaS) offerte par Microsoft Azure. Il s'agit d'un service léger de gestion des performances des applications (APM) pour les applications Web, utilisé pour surveiller l'application en direct, détecter automatiquement les anomalies de performances et fournir des outils d'analyse pour diagnostiquer les problèmes et comprendre le modèle d'utilisation de l'application Web.

Il prend en charge une grande variété de plates-formes, notamment Sitecore, .NET, Node.js et Python. Grâce à toutes ces fonctionnalités intégrées, Application Insights sera en mesure de résoudre les problèmes en temps opportun et de fournir la possibilité de s'améliorer continuellement.

Azure Application Insights affiche des données sur votre application dans une ressource Microsoft Azure. La création d'une nouvelle ressource fait partie de la configuration d'Application Insights pour surveiller une nouvelle application. Après avoir créé votre nouvelle ressource, vous pouvez obtenir sa clé d'instrumentation et l'utiliser pour configurer le kit de développement logiciel Application Insights (SDK). La clé d'instrumentation relie votre télémétrie à la ressource.

Prérequis pour configurer Application Insight pour le service d'application Sitecore  

  • Un compte d'abonnement Azure 
  • Service d'application Sitecore configuré 

Étape 1 : Créez une ressource Application Insights 

Connectez-vous au portail Azure et créez une ressource Application Insights :  

Entrez les valeurs appropriées dans les champs requis ci-dessous, puis sélectionnez " réviser + créer. "

Lorsque votre application est créée, un nouveau panneau s'ouvre. Ce panneau est l'endroit où vous voyez les données de performances et d'utilisation de votre application surveillée. Vous allez copier la clé d'instrumentation, qui identifie la ressource à laquelle vous souhaitez associer vos données de télémétrie. Vous devrez copier la clé d'instrumentation et l'ajouter au code de votre application.

Étape 2 : Installez le SDK dans votre application

Installez le SDK Application Insights dans votre application. Cette étape dépend fortement du type de votre application. Utilisez la clé d'instrumentation pour configurer le SDK que vous installez dans votre application.

Le SDK comprend des modules standard qui envoient la télémétrie sans que vous ayez à écrire de code supplémentaire. Pour suivre les actions des utilisateurs ou diagnostiquer les problèmes plus en détail, utilisez l'interface de programmation d'applications (API) pour envoyer votre propre télémétrie. en fonction des différents packages Sitecore, un nombre différent d'applications Web sera créé lors de la configuration de l'application Sitecore dans Azure, mais voici l'astuce, par défaut il n'y aura que moins de quatre applications Web pour lesquelles les journaux doivent être recherchés pour :

  • Sitecore-cd
  • Sitecore-cm
  • Sitecore-prc
  • Sitecore-rep

Nous devons nous rappeler qu'Application Insights ne rapportera que les données de journalisation pour ces quatre applications Web une fois configurées. Même si nous essayons de configurer Application Insight pour le reste des applications Web supplémentaires pour Sitecore, nous ne verrons aucun rapport de données pour ces applications Web.

Maintenant que nous connaissons les étapes pour configurer Application Insight dans Azure, nous allons maintenant aller de l'avant et voir comment la configuration d'Application Insight peut être utile pour obtenir la cause de l'erreur se produisant dans votre application. Mais d'abord, nous allons découvrir les problèmes rencontrés lors de l'utilisation des journaux Sitecore de manière traditionnelle, qui est le moyen standard de rechercher des journaux à partir des fichiers journaux plutôt que d'utiliser la solution d'analyse d'application.

Points douloureux utilisant les journaux Sitecore.

L'avantage d'utiliser Sitecore par rapport à une application sur mesure est le nombre de fonctionnalités intégrées fournies par Sitecore, l'une d'entre elles étant la journalisation. Par défaut, Sitecore fournit une journalisation basée sur Log4Net. Il offre la possibilité d'écrire des données dans un fichier journal, mais est également livré avec une logique intégrée pour supprimer les anciens fichiers journaux, ce qui empêcherait le disque dur de votre serveur de se remplir.

Cependant, sur une grande solution de site Web, la norme les journaux ont souvent tendance à devenir gigantesques, et chaque fois que nous remarquons un problème d'installation, trouver les informations de trace exactes devient une tâche fastidieuse. Nous y reviendrons dans la dernière partie de l'article.

Application Insights avec Sitecore

Nous avons vu le problème le plus courant lors de l'utilisation des journaux Sitecore, qui consiste à déterminer les erreurs des journaux en cas de besoin. Cela nous amène à la question suivante : « Comment surmonter cela et comment pouvons-nous proposer des mises à jour sur l'erreur ou avertir qu'elle se produit sur le site Web ? »

Application Insights est utile ici. Nous nous attendons à ce que Sitecore envoie des erreurs, des avertissements et des journaux d'informations à Application Insights. Avec Applications Insights, il capture les temps de réponse du serveur, le temps de chargement des pages, les demandes ayant échoué, les demandes reçues et les mappages d'applications avec tous les composants connectés.

C'est beaucoup d'informations sur Application Insights. Mais comment cela va-t-il aider l'équipe d'assistance technique qui essaie toujours de trouver l'erreur dans le journal, de résoudre le problème et de le résoudre ? Nous le découvrirons en comparant Application Insights et les journaux. et le support technique essaie de comprendre l'erreur.

Si vous utilisez des journaux, l'équipe de support technique doit obtenir les informations sur la page d'erreur et enregistrer la date de l'erreur. Ensuite, l'équipe doit se rendre dans le répertoire des journaux et rechercher les journaux, qui sont datés comme indiqué par l'utilisateur. Si l'utilisateur est du même fuseau horaire que le serveur, alors nous pouvons vérifier directement les journaux avec l'heure fournie, sinon, l'équipe doit le convertir dans le fuseau horaire du serveur et vérifier les journaux pertinents.

Une fois le log des données requises est déterminé, puis l'équipe doit l'ouvrir à l'aide de n'importe quel éditeur de texte ou d'outils spécifiques pour afficher les journaux et rechercher le mot-clé du fichier pour comprendre l'erreur. Si le résultat de la recherche ne fournit aucun résultat, la même chose doit être répétée pour quelques fichiers journaux supplémentaires d'horodatages différents (tous les utilisateurs qui signalent le problème ne fournissent pas la date et l'heure exactes auxquelles il s'est produit).

Parfois, lorsque nous implémentez un équilibreur de charge et disposez de plusieurs instances de l'application Sitecore, l'horodatage fourni par l'utilisateur ne sera pas suffisant pour résoudre le problème d'un seul coup. En effet, l'équipe doit d'abord déterminer quelle instance de l'application a été consommée par l'utilisateur et rechercher le texte requis dans le journal daté.

Une fois la clé de recherche identifiée, la description de l'erreur ou les traces de la pile doivent être déterminées à partir de les journaux pour identifier la cause première de l'erreur. Cela peut sembler fastidieux, mais voyons comment nous pouvons obtenir la même chose en utilisant Application Insights.

Dans le cas d'Application Insights, pour extraire des informations de toutes les instances de Sitecore, un filtre de « rôle » peut être appliqué pour obtenir le événements de toutes les instances de livraison de Sitecore. L'étape suivante consiste à filtrer les exceptions. Nous pouvons maintenant appliquer le filtre « date-heure » ​​avec une heure tampon ajoutée pour éviter les erreurs de l'utilisateur. Tout ce que nous devons faire est de suivre les étapes ci-dessus et Application Insights fournira la liste des erreurs qui se sont produites dans toutes les instances pendant le temps imparti.

Image : Recherche de journaux à l'aide d'Azure Application Insights

Ressources Azure importantes

L'utilisation d'Azure Application Insights pour les applications Web Sitecore est une excellente solution. Il peut également fournir des informations analytiques sur l'application en un rien de temps. Pour plus d'informations sur ces services, contactez nos experts dès aujourd'hui.

À propos de l'auteur

Swapnil est un administrateur système senior doté d'une expertise qualifiée en matière d'administration de serveurs et de technologie cloud. Il travaille actuellement sur des environnements dédiés aux clients sur Azure Cloud.

Plus de cet auteur




Source link

septembre 9, 2021