Ajouter la journalisation et surveiller une fonction Azure dans le portail

Effectué

Maintenant que vous avez correctement déployé votre première fonction web serverless en utilisant l’archétype Maven d’Azure Functions, votre entreprise souhaite que vous fassiez des recherches sur la façon d’utiliser votre application avec Azure Application Insights.

Dans cette unité, vous découvrez le streaming de journaux en tant qu’outil de résolution des problèmes de base et l’intégration entre Azure Functions et Application Insights.

Effectuer le streaming des journaux en temps réel avec Azure CLI

Une fois que votre application de fonction est déployée et en cours d’exécution, Vous pouvez utiliser la commande Azure CLI suivante pour obtenir le streaming de journaux en temps réel à partir de l’application afin d’effectuer une résolution des problèmes de base :

az webapp log tail -n <function app name> -g <resource group name>

Le trafic vers votre application de fonction peut produire un journal de diffusion en continu comme cet exemple :

Image showing Log Streaming from Azure CLI.

Pour un scénario de résolution des problèmes et de monitoring plus complexe, Application Insights est plus adapté.

Présentation d’Application Insights

Azure Application Insights est un service de Gestion des performances des applications (APM) inclus dans Azure Monitor et intégré à Azure Functions. Application Insights permet aux développeurs d’afficher et d’analyser des données actives relatives à leurs applications lorsqu’elles sont utilisées par des clients. Application Insights fournit un ensemble complet d’outils qui peuvent vous aider à effectuer des analyses et à résoudre les problèmes susceptibles d’affecter votre application.

Application Insights prend en charge les applications développées dans Node.js, Java ou .NET. Il permet à votre équipe de développement d’obtenir une plus grande flexibilité et de choisir la façon dont elle structure et génère les applications de votre entreprise.

Application Insights fournit des informations essentielles sur les requêtes ayant échoué, le temps de réponse du serveur, les requêtes du serveur et la disponibilité. Application Insights est activé par défaut pour vos applications de fonction. Si vous incluez des points de suivi de télémétrie dans votre code, Application Insights peut également utiliser les données de télémétrie envoyées à partir de votre application.

Ajout de l’instrumentation à votre projet Java

Pour tirer le meilleur parti d’Application Insights, vous devez mettre à jour votre projet de fonction. Vous devez effectuer deux types de modifications :

  • Le premier ensemble de modifications concerne les mises à jour de votre configuration, afin d’ajouter Application Insights et la prise en charge de la journalisation :

    • Mettez à jour le fichier pom.xml de votre projet pour ajouter une dépendance pour la bibliothèque Application Insights.

    • Mettez à jour le fichier host.json de votre projet pour ajouter des paramètres qui définissent la façon dont vous souhaitez que la journalisation et Application Insights fonctionnent pour votre application.

  • Le deuxième ensemble de modifications concerne des modifications du code de votre application, qui vous permettent d’ajuster les rapports de votre application :

    • Pour implémenter le suivi des événements dans Application Insight, vous devez ajouter un traqueur à votre code.

    • Les traceurs sont ajoutés à des points critiques de l’exécution de votre code. Par exemple, lorsqu’une nouvelle page est sélectionnée ou lorsque des données spécifiques sont enregistrées dans votre application.

Compréhension des options de journalisation et de surveillance

La méthode recommandée pour utiliser Application Insights dans vos applications de fonctions consiste à ajuster l’analyse et la création de rapports de votre application. Cependant, vous pouvez également récupérer des données sur le fonctionnement de vos applications à partir des journaux intégrés qu’Azure vous fournit.

Par exemple, le Streaming de journaux est disponible en sélectionnant Flux de journaux dans le menu Application de fonction. Choisissez ensuite Journaux Filesystem ou Journaux App Insights.

Image showing where to find Log Streaming.