0Pricing
Cloud & IT Cert Prep · Leçon

Application Insights

Instrumentez une application web avec le SDK Application Insights, explorez la carte de l’application et utilisez Live Metrics Stream pour diagnostiquer les problèmes en temps réel.

Application Insights est une leçon Cloud & IT Cert Prep gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cloud & IT Cert Prep, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.

Qu’est-ce que Application Insights ?

Application Insights est une fonctionnalité d’Azure Monitor qui fournit une supervision des performances des applications (APM) pour les applications web en production. Elle collecte des données de télémétrie sur les requêtes, les dépendances, les exceptions, les affichages de pages et les événements personnalisés. Contrairement aux métriques de plateforme qui décrivent l’état de santé de l’infrastructure, Application Insights décrit ce que fait votre code d’application et la façon dont les utilisateurs finaux l’utilisent. Il prend en charge .NET, Node.js, Java, Python et JavaScript dans le navigateur.

Instrumenter votre application

Vous ajoutez Application Insights à une application en installant le SDK ou en utilisant l’instrumentation automatique (également appelée association sans code). Pour App Service, l’activation de Application Insights depuis le portail installe automatiquement l’agent, sans modification du code. Pour les applications que vous gérez vous-même, vous ajoutez le package SDK et fournissez la chaîne de connexion (recommandée par rapport à l’ancienne clé d’instrumentation) de votre ressource Application Insights.

# Enable Application Insights on an App Service app
az webapp config appsettings set \
  --name myApp \
  --resource-group myRG \
  --settings APPLICATIONINSIGHTS_CONNECTION_STRING='InstrumentationKey=...' \
             ApplicationInsightsAgent_EXTENSION_VERSION='~3'

La carte des applications

La carte des applications est une topologie visuelle des composants de votre application et de leurs dépendances. Chaque nœud représente un composant (votre application, une API en aval, une base de données ou un service Azure), et les connexions montrent les relations d’appel, annotées avec le temps de réponse moyen, le débit des requêtes et le taux d’échec. Vous pouvez cliquer sur n’importe quel nœud ou connexion pour examiner les traces de requêtes individuelles et déterminer l’origine de la latence ou des échecs.

Flux de métriques en temps réel

Live Metrics Stream fournit une vue en temps réel, à la sous-seconde, des performances de votre application, sans latence. Vous pouvez observer les taux de requêtes entrantes, les temps de réponse, les taux d’échec et l’utilisation du processeur au moment où ils se produisent — ce qui est essentiel pendant un déploiement en production ou l’analyse d’un incident. Live Metrics utilise une connexion sortante sécurisée entre votre application et Application Insights ; aucune modification des règles de pare-feu entrantes n’est donc nécessaire.

Traçage distribué et transactions de bout en bout

Le traçage distribué met en corrélation la télémétrie de plusieurs services à l’aide d’un operation_Id partagé. Lorsqu’une requête utilisateur arrive dans votre application frontale, Application Insights propage les en-têtes de contexte de trace aux services en aval. La vue Détails de la transaction de bout en bout rassemble toutes les étendues de tous les services participants dans une seule chronologie sous forme de diagramme de Gantt, en montrant exactement où le temps est consacré dans votre architecture de microservices.

Événements et métriques personnalisés

Au-delà de la télémétrie automatique, vous pouvez suivre des événements personnalisés et des métriques personnalisées à l’aide du SDK. Appelez trackEvent() pour enregistrer des événements métier tels que 'CheckoutCompleted' ou 'FeatureFlagEnabled'. Appelez trackMetric() pour enregistrer des mesures propres à l’application, telles que la profondeur d’une file d’attente ou le taux de succès du cache. La télémétrie personnalisée apparaît dans les mêmes tables Log Analytics et peut être interrogée avec KQL en parallèle des données de plateforme.

// Node.js SDK example — tracking a custom event
const appInsights = require('applicationinsights');
appInsights.defaultClient.trackEvent({
  name: 'CheckoutCompleted',
  properties: { userId: '42', plan: 'premium' },
  measurements: { orderValue: 99.99 }
});

Détection intelligente et anomalies d’échec

Smart Detection analyse automatiquement votre télémétrie à l’aide de l’apprentissage automatique et vous avertit des tendances inhabituelles — par exemple une augmentation soudaine du taux d’échec, une dégradation du temps de réponse du serveur ou une hausse anormale du nombre d’exceptions. Contrairement aux alertes à seuil que vous configurez manuellement, les règles Smart Detection s’adaptent au comportement habituel de votre application. Les alertes sont envoyées aux propriétaires de l’abonnement et apparaissent dans le volet Smart Detection.

Tests de disponibilité

Les tests de disponibilité (également appelés tests web) envoient selon une planification des requêtes HTTP synthétiques à votre application depuis plusieurs régions Azure du monde entier (jusqu’à une fréquence d’une fois par minute). Ils vérifient que vos points de terminaison publics renvoient le code d’état HTTP attendu dans le délai d’expiration imparti. Si un test échoue simultanément depuis plusieurs emplacements, une alerte se déclenche. Vous bénéficiez ainsi d’une supervision externe indépendante de votre infrastructure interne.

# Create a URL ping availability test via CLI
az monitor app-insights web-test create \
  --name 'HomepagePing' \
  --resource-group myRG \
  --app-component myAppInsightsResource \
  --defined-web-test-kind ping \
  --request-url 'https://myapp.azurewebsites.net/' \
  --locations '[{"Id":"us-ca-sjc-azr"},{"Id":"emea-gb-db3-azr"}]' \
  --frequency 300 \
  --timeout 30

Échantillonnage pour contrôler le volume de données

L’échantillonnage réduit le volume de télémétrie envoyé à Application Insights en n’enregistrant qu’une partie des requêtes, tout en préservant la précision statistique. L’échantillonnage adaptatif ajuste automatiquement le taux d’échantillonnage pour respecter un débit d’ingestion cible. L’échantillonnage à taux fixe applique un pourcentage déterminé. La télémétrie échantillonnée est marquée afin que les vues de métriques corrigent automatiquement le facteur d’échantillonnage lors de l’affichage des nombres et des taux.

Analytique des utilisateurs et des sessions

Application Insights inclut des outils d’analyse de l’utilisation intégrés pour les applications instrumentées dans le navigateur. Le volet Utilisateurs affiche le nombre d’utilisateurs uniques, le volet Sessions suit les parcours des utilisateurs, les entonnoirs visualisent les abandons au cours de parcours en plusieurs étapes, et les graphiques de rétention indiquent combien d’utilisateurs reviennent au fil du temps. Ces outils sont particulièrement utiles aux équipes produit qui optimisent les taux de conversion et l’engagement des utilisateurs, en complément de la surveillance opérationnelle.

Tables Application Insights et Log Analytics

Les données Application Insights sont stockées dans un espace de travail Log Analytics, dans des tables dédiées : requests, exceptions, dependencies, traces, pageViews, customEvents et customMetrics. Lorsque Application Insights est configuré en mode basé sur un espace de travail (le mode par défaut pour les nouvelles ressources), vous pouvez joindre ces tables à d’autres données de l’espace de travail — par exemple pour mettre en corrélation une exception d’application avec un refus d’accès à Key Vault journalisé dans AzureActivity.

// KQL — find the top 10 slowest dependencies in the last hour
dependencies
| where timestamp > ago(1h)
| where success == false or duration > 2000
| summarize AvgDuration = avg(duration), FailCount = countif(success==false)
    by name, type
| top 10 by AvgDuration desc

Vérification rapide

Vérifiez votre compréhension des concepts de Microsoft Azure Fundamentals (AZ-900) présentés dans cette leçon.

Récapitulatif de la leçon

Dans cette leçon, vous avez appris que Application Insights fournit une télémétrie de niveau APM sur les taux de requêtes, les échecs et les dépendances, que la carte des applications et le traçage distribué visualisent votre topologie de microservices de bout en bout, et que les tests de disponibilité vérifient vos points de terminaison publics depuis plusieurs emplacements dans le monde. Nous allons maintenant découvrir les tableaux de bord et les classeurs Azure pour partager la visibilité opérationnelle avec votre équipe.

Questions Fréquemment Posées

La leçon « Application Insights » est-elle gratuite ?

Oui — le texte complet de « Application Insights » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cloud & IT Cert Prep, passe à CoddyKit PRO. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Application Insights » ?

Instrumentez une application web avec le SDK Application Insights, explorez la carte de l’application et utilisez Live Metrics Stream pour diagnostiquer les problèmes en temps réel. Tu pratiques Cloud & IT Cert Prep avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Cloud & IT Cert Prep ?

Aucune expérience préalable n'est requise. Cloud & IT Cert Prep sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Application Insights » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Cloud & IT Cert Prep ?

Oui. Chaque leçon Cloud & IT Cert Prep inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Métriques et alertes Azure Monitor
  2. Principes fondamentaux de Log Analytics et KQL
  3. Application Insights
  4. Tableaux de bord et classeurs Azure
← Retour à Cloud & IT Cert Prep