Este artículo está disponible en francés.
1. Vue d'ensemble #
Azure Monitor et ses magasins de données.
Une plateforme unique : Azure Monitor #
Sur Azure, toute l'observabilité passe par Azure Monitor. Il repose sur deux magasins principaux : Azure Monitor Metrics (séries temporelles légères, conservées 93 jours) et les journaux Azure Monitor stockés dans des espaces de travail Log Analytics et interrogés en KQL (Kusto Query Language). Application Insights apporte l'APM et stocke ses données (requêtes, dépendances, traces, exceptions) dans Log Analytics. Pour Kubernetes et les métriques Prometheus, Azure propose Azure Monitor managed service for Prometheus et Azure Managed Grafana.
Piliers pris en charge #
| Pilier | Composant Azure | Exploration | OpenTelemetry |
|---|---|---|---|
| Métriques | Azure Monitor Metrics, Managed Prometheus | Metrics Explorer, PromQL | ✅ Oui |
| Journaux | Log Analytics (tables, plans Analytics, Basic, Auxiliary) | KQL, Logs, Workbooks | ✅ Oui |
| Traces | Application Insights (tables AppRequests, AppDependencies) | Recherche de transactions, carte d'application | ✅ Oui (distro Azure Monitor OpenTelemetry) |
| Profils | Application Insights Profiler (.NET, Java) | Traces de profilage par requête | 🟡 Partiel (Profiler propre à Azure) |
| RUM et synthétique | Application Insights (SDK navigateur), tests de disponibilité standard | Expérience utilisateur, tests web | 🟡 Partiel |
| Événements et audit | Journal d'activité, Change Analysis | KQL, Azure Resource Graph | ❌ Non |
À savoir : Le Snapshot Debugger d'Application Insights capture l'état des variables au moment d'une exception en production (.NET) : un complément utile aux profils.
2. Les composants en détail #
Rôle de chaque brique d'Azure Monitor.
Métriques de plateforme et paramètres de diagnostic #
Chaque ressource Azure publie gratuitement ses métriques de plateforme. Les journaux de ressources (requêtes d'une passerelle d'application, journaux d'audit d'une base, etc.) ne sont collectés que si l'on crée un paramètre de diagnostic qui les envoie vers Log Analytics, un compte de stockage, Event Hubs ou une solution partenaire. Le journal d'activité trace les opérations de gestion (création, suppression, modifications de la configuration).
az monitor diagnostic-settings create --name vers-law \
--resource /subscriptions/<abonnement>/resourceGroups/rg-prod/providers/Microsoft.Web/sites/api-boutique \
--workspace /subscriptions/<abonnement>/resourceGroups/rg-obs/providers/Microsoft.OperationalInsights/workspaces/law-prod \
--logs '[{"category":"AppServiceHTTPLogs","enabled":true}]' --metrics '[{"category":"AllMetrics","enabled":true}]'Log Analytics et KQL #
Un espace de travail Log Analytics contient des tables (Syslog, Perf, ContainerLogV2, AppRequests…). Chaque table peut utiliser le plan Analytics (requêtes complètes, alertes), Basic ou Auxiliary (moins chers, requêtes limitées) selon l'usage. La rétention interactive et l'archivage longue durée se règlent par table.
AppRequests
| where TimeGenerated > ago(1h)
| summarize requetes = count(), erreurs = countif(Success == false),
p95 = percentile(DurationMs, 95) by bin(TimeGenerated, 5m), Name
| order by TimeGenerated descAzure Monitor Agent et règles de collecte (DCR) #
L'Azure Monitor Agent (AMA) remplace les anciens agents Log Analytics (MMA/OMS). Il collecte journaux système, compteurs de performance et fichiers texte sur les VM Windows et Linux, y compris hors Azure via Azure Arc. Ce qu'il collecte et où il l'envoie est décrit dans des règles de collecte de données (DCR), qui peuvent aussi filtrer et transformer les données en KQL avant ingestion pour réduire les coûts.
Application Insights #
Application Insights est la brique APM : requêtes entrantes, dépendances sortantes, exceptions, traces, carte de l'application, analyse des défaillances et des performances, recherche de transactions de bout en bout, métriques en direct, tests de disponibilité et expérience des utilisateurs (SDK JavaScript). Une ressource Application Insights est rattachée à un espace Log Analytics.
Kubernetes : Container Insights, Prometheus et Grafana managés #
Sur AKS, Container Insights collecte journaux et inventaire des conteneurs, tandis que Managed Prometheus collecte les métriques (cibles par défaut, ServiceMonitor et PodMonitor) dans un espace de travail Azure Monitor. Azure Managed Grafana s'y connecte avec des tableaux de bord prêts à l'emploi.
az aks update --resource-group rg-prod --name aks-prod \
--enable-azure-monitor-metrics \
--azure-monitor-workspace-resource-id <id-espace-azure-monitor> \
--grafana-resource-id <id-grafana-manage>Alertes, groupes d'actions et classeurs #
| Type | Usage |
|---|---|
| Alertes de métriques | Seuils statiques ou dynamiques sur des métriques, évaluées chaque minute |
| Alertes de recherche de journaux | Requête KQL planifiée ; idéale pour des conditions complexes |
| Alertes Prometheus | Groupes de règles PromQL sur l'espace Azure Monitor |
| Alertes du journal d'activité et Service Health | Opérations de gestion et incidents de la plateforme Azure |
| Groupes d'actions | Notifications (e-mail, SMS, application) et actions (webhook, Logic Apps, Functions, ITSM) |
| Classeurs (Workbooks) | Rapports interactifs combinant métriques, KQL et paramètres |
3. Fiche détaillée de chaque composant #
Rôle, contenu, types de données, rétention et interactions internes et externes de chaque brique du schéma.
Vue récapitulative #
Le tableau suivant résume chaque composant du schéma d'architecture ; les fiches qui suivent les détaillent une par une.
| Composant | Zone | Signaux | Ouvrable vers l'extérieur |
|---|---|---|---|
| Paramètres de diagnostic | Collecte | Journaux de ressources, métriques | 🔒 Non (interne) |
| AMA + règles DCR | Collecte | Journaux, compteurs, métriques | 🔒 Non (interne) |
| Azure Monitor Metrics | Stockage | Métriques | 🟡 Indirectement |
| Managed Prometheus | Stockage | Métriques Prometheus | 🟡 Indirectement |
| Log Analytics | Stockage | Journaux, traces, événements | 🟡 Indirectement |
| Application Insights | APM | Traces, requêtes, exceptions, profils | 🟡 Indirectement |
| Managed Grafana | Sortie | Visualisation | 🟠 Oui |
| API de requête | Sortie | Tous | 🟠 Oui |
| Alertes et groupes d'actions | Sortie | Événements | 🟠 Oui |
| Event Hubs | Sortie | Journaux et métriques en flux | 🟠 Oui |
Valeurs indicatives : Les durées de rétention, limites et modèles de prix évoluent régulièrement : vérifiez-les dans la documentation officielle avant de dimensionner une architecture.
Paramètres de diagnostic (diagnostic settings) #
Le mécanisme qui active la collecte des journaux de ressources d'un service Azure et choisit leur destination.
| Caractéristique | Détail |
|---|---|
| Rôle | Router les journaux de ressources, les métriques de plateforme et le journal d'activité vers une ou plusieurs destinations. |
| Contenu | Jusqu'à 5 paramètres par ressource ; choix des catégories de journaux (ou groupes allLogs, audit) et des métriques (AllMetrics). |
| Type de données | Journaux de ressources (requêtes, audits, erreurs), métriques de plateforme, journal d'activité de l'abonnement. |
| Stockage et rétention | Aucun : simple routage. |
| Entrées (composants internes) | Ressources Azure (App Service, Key Vault, SQL, Application Gateway…). |
| Sorties (composants internes) | Log Analytics, compte de stockage, Event Hubs, solutions partenaires. |
| Interactions externes | Via Event Hubs ou les services ISV natifs (Datadog, Elastic, Dynatrace, New Relic). |
| Ouvrable vers l'extérieur | 🔒 Non (interne) : il alimente des composants ouvrables mais n'expose rien lui-même. |
| Sécurité et accès | Rôle Contributeur de supervision ; déploiement à grande échelle par Azure Policy (DeployIfNotExists). |
| Coût | Gratuit ; on paie l'ingestion à destination. |
Azure Monitor Agent (AMA) et règles de collecte (DCR) #
L'agent unique de collecte d'Azure Monitor, piloté par des règles de collecte de données.
| Caractéristique | Détail |
|---|---|
| Rôle | Collecter journaux et compteurs des machines virtuelles et serveurs, filtrer et transformer avant ingestion. |
| Contenu | Règles DCR : sources (compteurs de performance, Syslog, événements Windows, fichiers texte et JSON, IIS), destinations, transformations KQL ; points de terminaison DCE ; API d'ingestion de journaux pour les applications. |
| Type de données | Journaux système et applicatifs, compteurs de performance, métriques invitées ; métriques Prometheus sur AKS (module ama-metrics). |
| Stockage et rétention | Aucun : tampon local. |
| Entrées (composants internes) | VM Azure, groupes identiques, serveurs sur site ou d'autres clouds via Azure Arc, clusters AKS. |
| Sorties (composants internes) | Log Analytics, Azure Monitor Metrics, Managed Prometheus (espace Azure Monitor). |
| Interactions externes | Aucune directe : passer par Event Hubs ou les API. |
| Ouvrable vers l'extérieur | 🔒 Non (interne) |
| Sécurité et accès | Identité managée de la machine ; association de règles DCR par Azure Policy. |
| Coût | Gratuit ; ingestion facturée à destination (réduite par les transformations). |
Azure Monitor Metrics #
Le magasin de métriques léger et rapide d'Azure Monitor.
| Caractéristique | Détail |
|---|---|
| Rôle | Stocker les métriques numériques de toutes les ressources et alimenter alertes, autoscaling et tableaux de bord. |
| Contenu | Métriques de plateforme (automatiques), métriques invitées et personnalisées ; dimensions ; Metrics Explorer. |
| Type de données | Séries temporelles, granularité d'une minute. |
| Stockage et rétention | Conservées 93 jours. |
| Entrées (composants internes) | Ressources Azure (automatique), AMA, Application Insights (métriques personnalisées). |
| Sorties (composants internes) | Alertes de métriques, autoscaling, Managed Grafana, paramètres de diagnostic (export vers Log Analytics, stockage, Event Hubs). |
| Interactions externes | Lu par Grafana, Datadog, Dynatrace via l'API REST Metrics. |
| Ouvrable vers l'extérieur | 🟡 Indirectement : par l'API REST et l'export des paramètres de diagnostic. |
| Sécurité et accès | RBAC Azure (Lecteur de surveillance) ; identités managées pour les outils. |
| Coût | Métriques de plateforme gratuites ; métriques personnalisées et appels d'API facturés. |
Azure Monitor managed service for Prometheus #
Le service Prometheus managé d'Azure, adossé à un espace de travail Azure Monitor.
| Caractéristique | Détail |
|---|---|
| Rôle | Stocker et interroger en PromQL les métriques Prometheus, en particulier celles d'AKS et d'Azure Arc pour Kubernetes. |
| Contenu | Espace de travail Azure Monitor, groupes de règles Prometheus (enregistrement et alerte), point de terminaison de requête PromQL. |
| Type de données | Séries temporelles Prometheus. |
| Stockage et rétention | Conservées 18 mois. |
| Entrées (composants internes) | Module ama-metrics d'AKS (cibles par défaut, ServiceMonitor, PodMonitor), remote write depuis Prometheus ou un collecteur. |
| Sorties (composants internes) | Managed Grafana, alertes Prometheus vers les groupes d'actions. |
| Interactions externes | Tout outil compatible PromQL (Grafana auto-hébergé, KEDA) via le point de terminaison de requête. |
| Ouvrable vers l'extérieur | 🟡 Indirectement : par son API PromQL. |
| Sécurité et accès | Entra ID (identité managée ou principal de service) avec le rôle Lecteur de données de surveillance. |
| Coût | Échantillons ingérés et requêtés. |
Log Analytics #
Le cœur des journaux Azure Monitor : un espace de travail contenant des tables interrogées en KQL.
| Caractéristique | Détail |
|---|---|
| Rôle | Stocker et analyser journaux, traces, événements et données de sécurité ; servir de base à Application Insights et Microsoft Sentinel. |
| Contenu | Tables (Syslog, Perf, Event, ContainerLogV2, AzureDiagnostics, tables App* d'Application Insights, tables personnalisées), requêtes KQL, classeurs, fonctions. |
| Type de données | Enregistrements structurés en colonnes (journaux, traces, métriques invitées, événements). |
| Stockage et rétention | Rétention interactive de 30 jours par défaut (jusqu'à 2 ans) et rétention totale jusqu'à 12 ans ; plans de table Analytics, Basic et Auxiliary. |
| Entrées (composants internes) | Paramètres de diagnostic, AMA et DCR, Application Insights, API d'ingestion de journaux. |
| Sorties (composants internes) | Alertes de recherche de journaux, classeurs, Managed Grafana, règles d'export de données. |
| Interactions externes | Règles d'export vers Event Hubs ou stockage ; requêtes par l'API Log Analytics depuis Grafana ou un SIEM. |
| Ouvrable vers l'extérieur | 🟡 Indirectement : par l'API de requête et les règles d'export. |
| Sécurité et accès | RBAC au niveau de l'espace, de la table ou de la ressource (contexte de ressource) ; liaisons privées. |
| Coût | Ingestion par Go selon le plan de table, rétention au-delà de la période incluse, requêtes sur les plans Basic et Auxiliary. |
Application Insights #
La brique APM d'Azure Monitor.
| Caractéristique | Détail |
|---|---|
| Rôle | Suivre la performance et la fiabilité des applications : requêtes, dépendances, exceptions, disponibilité, expérience utilisateur. |
| Contenu | Carte de l'application, recherche de transactions, analyse des défaillances et des performances, métriques en direct, tests de disponibilité, Profiler, Snapshot Debugger. |
| Type de données | Requêtes, dépendances, exceptions, traces, vues de pages, métriques personnalisées, résultats de disponibilité. |
| Stockage et rétention | Dans l'espace Log Analytics associé (tables AppRequests, AppDependencies, AppExceptions…), selon sa rétention. |
| Entrées (composants internes) | Distro Azure Monitor OpenTelemetry, agent Java, SDK JavaScript, instrumentation automatique d'App Service. |
| Sorties (composants internes) | Log Analytics, Azure Monitor Metrics (métriques standard), alertes. |
| Interactions externes | Les données OpenTelemetry peuvent être dupliquées vers un APM tiers par le collecteur. |
| Ouvrable vers l'extérieur | 🟡 Indirectement : par l'API Log Analytics. |
| Sécurité et accès | Chaîne de connexion ; authentification Entra ID de l'ingestion possible ; RBAC. |
| Coût | Comme Log Analytics (ingestion) ; l'échantillonnage réduit le volume. |
Azure Managed Grafana #
Une instance Grafana gérée par Microsoft, intégrée à Entra ID.
| Caractéristique | Détail |
|---|---|
| Rôle | Visualiser métriques, journaux et traces de plusieurs sources dans des tableaux de bord partagés. |
| Contenu | Tableaux de bord prêts à l'emploi pour Azure et AKS, sources Azure Monitor, Prometheus, Azure Data Explorer et plugins. |
| Type de données | Ne stocke pas de télémétrie. |
| Stockage et rétention | Tableaux de bord et configuration. |
| Entrées (composants internes) | Azure Monitor Metrics, Managed Prometheus, Log Analytics, Application Insights. |
| Sorties (composants internes) | Alertes et notifications Grafana. |
| Interactions externes | Peut interroger des sources hors Azure (Prometheus, Loki, Datadog) via les plugins. |
| Ouvrable vers l'extérieur | 🟠 Oui : interface web et API Grafana, avec accès public ou point de terminaison privé. |
| Sécurité et accès | Entra ID, rôles Grafana Admin, Editor, Viewer ; identité managée pour lire les données. |
| Coût | Par instance et par utilisateur actif (niveau Standard). |
API de requête (Azure Monitor, Log Analytics, Prometheus) #
Les points de terminaison qui exposent les données d'Azure Monitor en lecture.
| Caractéristique | Détail |
|---|---|
| Rôle | Permettre aux outils, scripts et tableaux de bord d'interroger métriques et journaux. |
| Contenu | API REST Azure Monitor Metrics, API de requête Log Analytics (KQL), API HTTP Prometheus de l'espace Azure Monitor, Azure Resource Graph ; bibliothèques Azure Monitor Query. |
| Type de données | Réponses JSON. |
| Entrées (composants internes) | Azure Monitor Metrics, Log Analytics, Managed Prometheus. |
| Sorties (composants internes) | Managed Grafana et tout client autorisé. |
| Interactions externes | Grafana auto-hébergé ou Cloud, SIEM, outils d'observabilité tiers, scripts. |
| Ouvrable vers l'extérieur | 🟠 Oui : points de terminaison publics ou privés (Azure Monitor Private Link Scope). |
| Sécurité et accès | Jeton Entra ID (principal de service ou identité managée) ; RBAC en lecture. |
| Coût | Gratuit pour la plupart des requêtes ; facturées sur les tables Basic et Auxiliary. |
Alertes et groupes d'actions #
Le moteur d'alerte d'Azure Monitor et ses canaux de notification et d'action.
| Caractéristique | Détail |
|---|---|
| Rôle | Détecter des conditions sur les données et notifier ou agir automatiquement. |
| Contenu | Alertes de métriques (seuils statiques ou dynamiques), de recherche de journaux (KQL), Prometheus, du journal d'activité et de Service Health ; règles de traitement des alertes ; schéma d'alerte commun. |
| Type de données | Instances d'alerte (déclenchée, résolue) au schéma JSON commun. |
| Entrées (composants internes) | Azure Monitor Metrics, Log Analytics, Managed Prometheus, journal d'activité. |
| Sorties (composants internes) | Groupes d'actions : runbooks Automation, Logic Apps, Azure Functions. |
| Interactions externes | E-mail, SMS, notifications vocales et mobiles, webhooks, connecteurs ITSM (ServiceNow), PagerDuty, Teams. |
| Ouvrable vers l'extérieur | 🟠 Oui : webhooks et notifications sortants. |
| Sécurité et accès | Rôle Contributeur de surveillance ; webhooks sécurisés (authentification Entra ID possible). |
| Coût | Par règle d'alerte et par notification (SMS, appels). |
Azure Event Hubs #
La plateforme de diffusion en continu d'Azure, utilisée comme passerelle d'export de la télémétrie.
| Caractéristique | Détail |
|---|---|
| Rôle | Recevoir en continu journaux et métriques depuis Azure Monitor et les mettre à disposition de consommateurs externes. |
| Contenu | Espace de noms, hubs d'événements, partitions, groupes de consommateurs ; protocole AMQP et compatibilité Apache Kafka. |
| Type de données | Événements JSON (enregistrements des paramètres de diagnostic, exports Log Analytics). |
| Stockage et rétention | Rétention de 1 à 7 jours (Standard), jusqu'à 90 jours (Premium, Dedicated) ; capture possible vers le stockage. |
| Entrées (composants internes) | Paramètres de diagnostic, règles d'export de Log Analytics, journal d'activité. |
| Sorties (composants internes) | Azure Functions, Stream Analytics, stockage (Capture). |
| Interactions externes | Splunk (module complémentaire), Elastic Agent et Logstash, Datadog (fonction de transfert), Sumo Logic, IBM QRadar, consommateurs Kafka. |
| Ouvrable vers l'extérieur | 🟠 Oui : c'est le principal canal d'export en continu vers l'extérieur. |
| Sécurité et accès | Signatures d'accès partagé (SAS) ou Entra ID ; points de terminaison privés et règles de pare-feu. |
| Coût | Unités de débit ou de traitement et volume d'événements. |
4. Compatibilité OpenTelemetry #
Distro Azure Monitor OpenTelemetry et collecteur.
Instrumenter avec la distro Azure Monitor OpenTelemetry #
Microsoft recommande désormais OpenTelemetry pour Application Insights : la distro Azure Monitor OpenTelemetry (.NET, Java, Node.js, Python) regroupe le SDK, l'instrumentation automatique des bibliothèques courantes et l'exportateur Azure Monitor. Les traces, métriques et journaux OpenTelemetry deviennent des requêtes, dépendances, traces et métriques personnalisées dans Application Insights.
pip install azure-monitor-opentelemetry
# app.py
from azure.monitor.opentelemetry import configure_azure_monitor
configure_azure_monitor() # lit APPLICATIONINSIGHTS_CONNECTION_STRINGAvec un collecteur OpenTelemetry, l'exportateur azuremonitor de la distribution contrib envoie traces, métriques et journaux vers Application Insights ; les métriques peuvent aussi partir en remote write vers Managed Prometheus. Azure Monitor propose par ailleurs l'ingestion OTLP native, en cours de déploiement : vérifiez sa disponibilité dans votre région avant de vous y appuyer.
À savoir : Pour Java, l'agent Application Insights 3.x est lui-même construit sur OpenTelemetry : il instrumente sans modification de code et accepte les API OpenTelemetry pour la télémétrie personnalisée.
5. Interconnexions avec les produits externes #
Exporter et intégrer.
Envoyer les données Azure ailleurs #
| Mécanisme | Données | Destinations |
|---|---|---|
| Paramètres de diagnostic vers Event Hubs | Journaux de ressources, métriques, journal d'activité | Splunk, Elastic, Datadog, IBM QRadar, Sumo Logic |
| Services ISV natifs Azure | Métriques et journaux par intégration native | Datadog, Dynatrace, New Relic, Elastic Cloud, Grafana |
| Règles d'exportation Log Analytics | Tables Log Analytics en continu | Compte de stockage, Event Hubs |
| Microsoft Sentinel | Journaux de sécurité dans Log Analytics | SIEM, détection et réponse |
| Grafana | Plugin Azure Monitor (Metrics, Logs, Traces, Resource Graph) | Grafana Cloud ou auto-hébergé |
Bonne Pratique : Pour un outil tiers, passez par Event Hubs plutôt que par l'interrogation des API : le flux est continu, scalable et indépendant du nombre de ressources.
6. Coûts et bonnes pratiques #
Maîtriser l'ingestion.
Bonnes pratiques #
- Centraliser les journaux dans peu d'espaces Log Analytics (par environnement ou par région), avec un contrôle d'accès par ressource.
- Choisir le plan de table adapté (Analytics, Basic, Auxiliary) et filtrer avec des transformations DCR.
- Déployer paramètres de diagnostic et règles DCR par Azure Policy pour couvrir automatiquement les nouvelles ressources.
- Instrumenter avec la distro OpenTelemetry pour rester portable.
- Échantillonner la télémétrie d'Application Insights sur les applications à fort trafic.
- Fixer un plafond journalier et des alertes de coût sur l'ingestion.
Erreur courante : Collecter « tous les journaux » de toutes les ressources dans le plan Analytics fait exploser la facture : commencez par les catégories utiles.
Mi seguimiento
Inicia sesión para seguir tu progreso y tomar notas. Iniciar sesión
Artículos recomendados
Préparer la certification Azure Administrator Associate (AZ-104)
Guide de préparation à l'AZ-104 : format, cinq domaines (identités et gouvernance, stockage, calc...
Bonnes pratiques Azure : landing zone, sécurité, fiabilité et coûts
Les bonnes pratiques pour exploiter Azure en production : landing zone et groupes d'administratio...
Comprendre Azure : régions, hiérarchie des ressources, outils et tarification
Les bases de Microsoft Azure : géographies, régions, paires de régions et zones de disponibilité,...
Observabilité sur Google Cloud : Cloud Monitoring, Logging, Trace, Profiler et Managed Prometheus
Panorama complet de Google Cloud Observability : Cloud Monitoring, Cloud Logging (routeur, récept...
Cloud et infrastructure avec Dynatrace : AWS, Azure, GCP, Kubernetes et extensions 2.0
Superviser cloud et infrastructure avec Dynatrace : intégrations AWS, Azure et GCP, logs cloud, K...
Dynatrace Credential Vault : Sécuriser et gérer vos secrets
Découvrez comment l'application Credential Vault de Dynatrace permet de gérer de manière sécurisé...
Logs Datadog avancés : index, filtres d'exclusion, Flex Logs, archives et Sensitive Data Scanner
Maîtriser coût et conformité des logs Datadog : pipelines et processeurs, index et rétention, fil...
Informatique serverless : définition, FaaS et cas d'usage
L'informatique serverless expliquée : Function as a Service (FaaS), fonctionnement, avantages, li...
Terraform sur plusieurs clouds : AWS, Azure, Google Cloud, OVHcloud et Kubernetes
Utiliser Terraform avec les principaux fournisseurs : aws, azurerm, google, ovh et openstack, kub...