Informations de référence sur la supervision d’Azure Application Gateway

Cet article contient toutes les informations de référence de surveillance pour ce service.

Consultez Surveiller Azure Application Gateway pour plus d’informations sur les données que vous pouvez collecter pour Application Gateway et comment l’utiliser.

Métriques

Cette section répertorie toutes les métriques de plateforme collectées automatiquement pour App Service. Ces métriques font également partie de la liste globale de toutes les métriques de plateforme prises en charge dans Azure Monitor.

Pour plus d’informations sur les métriques de surveillance, consultez la section Présentation des métriques Azure Monitor.

Métriques prises en charge pour Microsoft.Network/applicationGateways

Le tableau suivant répertorie toutes les métriques disponibles pour le type de ressource Microsoft.Network/applicationGateways. Des détails supplémentaires sur la description de nombreuses métriques sont inclus après ce tableau.

  • Toutes les colonnes peuvent ne pas être présentes dans chaque table.
  • Certaines colonnes peuvent dépasser la zone d’affichage de la page. Sélectionnez Développer la table pour afficher toutes les colonnes disponibles.

Titres du tableau

  • Catégorie : le groupe de métriques ou classification.
  • Métrique : nom complet de la métrique tel qu’il apparaît dans le portail Azure.
  • Nom dans l’API REST : le nom de la métrique comme appelé dans l’API REST.
  • Unité : unité de mesure.
  • Agrégation : le type d’agrégation par défaut. Valeurs valides : Moyen (moy), Minimum (min), Maximum (max), Total (somme), Nombre.
  • Dimensions - Dimensions disponibles pour la métrique.
  • Fragments de temps - Intervalles auxquels la métrique est échantillonnée. Par exemple, PT1M indique que la métrique est échantillonnée toutes les minutes, PT30M toutes les 30 minutes, PT1H toutes les heures, et ainsi de suite.
  • Exportation DS : indique si la métrique est exportable vers les journaux Azure Monitor via les paramètres de diagnostic. Pour plus d’informations sur l’exportation des métriques, consultez Créer des paramètres de diagnostic dans Azure Monitor.
Mesure Nom dans l’API REST Unité Agrégation Dimensions Fragments de temps Exportation DS
Temps total d’Application Gateway

Temps nécessaire pour le traitement d’une requête et l’envoi de la réponse. Cela correspond à l’intervalle entre le moment où Application Gateway reçoit le premier octet d’une requête HTTP et le moment où l’opération d’envoi d’une réponse se termine. Il est important de noter que cela implique généralement le temps de traitement d’Application Gateway, le temps pendant lequel les paquets de requête et de réponse transitent sur le réseau et le temps que le serveur principal a mis pour répondre.
ApplicationGatewayTotalTime Millisecondes Moyenne, maximum Listener PT1M Non
Demandes par minute par hôte sain

Nombre moyen de demandes par minute par hôte back-end sain dans un pool
AvgRequestCountPerHealthyHost Count Average BackendSettingsPool PT1M Non
Correspondances de protection bot du WAF

Règles de bot correspondantes
AzwafBotProtection Count Total (Somme) Action, , Category, CountryCodeMode, , PolicyNamePolicyScope PT1M Oui
Correspondances de règle personnalisée du WAF

Règles personnalisées correspondantes
AzwafCustomRule Count Total (Somme) Action, , CustomRuleID, CountryCodeMode, , PolicyNamePolicyScope PT1M Oui
Nombre de requêtes de défi JS WAF

Nombre total de demandes de défi JS évaluées par WAF
AzWAFJSChallengeRequestCount Count Total (Somme) Action, , PolicyNameRule, ,PolicyScope PT1M Oui
Correspondances de règle managée du WAF

Règles managées correspondantes
AzwafSecRule Count Total (Somme) Action, Mode, , RuleIDRuleGroupID, CountryCode, PolicyName, , PolicyScope,RuleSetName PT1M Oui
Total des demandes du WAF

Nombre total de demandes évaluées par WAF
AzwafTotalRequests Count Total (Somme) Action, , CountryCode, ModeMethod, , PolicyNamePolicyScope PT1M Oui
Heure de connexion du back-end

Temps passé à établir une connexion avec un back-end
BackendConnectTime Millisecondes Moyenne, maximum Listener, , BackendServerBackendPool, ,BackendHttpSetting PT1M Non
Temps de réponse du premier octet du back-end

Intervalle de temps entre le début de l’établissement d’une connexion au principal et la réception du premier octet de l’en-tête de réponse, ce qui correspond approximativement au temps de traitement du principal
BackendFirstByteResponseTime Millisecondes Moyenne, maximum Listener, , BackendServerBackendPool, ,BackendHttpSetting PT1M Non
Temps de réponse du dernier octet du serveur principal

Intervalle de temps entre le début de l’établissement d’une connexion au principal et la réception du dernier octet du corps de la réponse
BackendLastByteResponseTime Millisecondes Moyenne, maximum Listener, , BackendServerBackendPool, ,BackendHttpSetting PT1M Non
État de la réponse du back-end

Nombre de codes de réponse HTTP générés par les membres du back-end. Cela n’inclut pas les codes de réponse générés par Application Gateway.
BackendResponseStatus Count Total (Somme) BackendServer, , BackendPoolBackendHttpSetting, ,HttpStatusGroup PT1M Oui
Distribution des règles de blocage des requêtes par le pare-feu d’applications web

Distribution des règles de demandes bloquées du pare-feu d’applications web
BlockedCount Count Total (Somme) RuleGroup, RuleId PT1M Oui
Octets reçus

Nombre total d’octets reçus par Application Gateway à partir des clients
BytesReceived Octets Total (Somme) Listener PT1M Oui
Octets envoyés

Nombre total d’octets envoyés par Application Gateway aux clients
BytesSent Octets Total (Somme) Listener PT1M Oui
Unités de capacité actuelles

Unités de capacité consommées
CapacityUnits Count Average <aucune> PT1M Non
RTT client

Durée des allers-retours entre les clients et Application Gateway. Cette métrique indique le temps nécessaire à l’établissement des connexions et au retour des accusés de réception
ClientRtt Millisecondes Moyenne, maximum Listener PT1M Non
Unités de calcul actuelles

Unités Compute consommées
ComputeUnits Count Average <aucune> PT1M Non
Utilisation du processeur

Utilisation actuelle du processeur d’Application Gateway
CpuUtilization Pourcentage Average <aucune> PT1M Non
Connexions courantes

Nombre de connexions courantes établies avec Application Gateway
CurrentConnections Count Total (Somme) <aucune> PT1M Oui
Unités de capacité facturées estimées

Unités de capacité estimées qui seront facturées
EstimatedBilledCapacityUnits Count Average <aucune> PT1M Non
Requêtes ayant échoué

Nombre de requêtes en échec servies par Application Gateway
FailedRequests Count Total (Somme) BackendSettingsPool PT1M Oui
Unités de capacité facturables fixes

Unités de capacité minimales qui seront facturées
FixedBillableCapacityUnits Count Average <aucune> PT1M Non
Nombre d’hôtes intègres

Nombre d’hôtes principaux intègres
HealthyHostCount Count Average BackendSettingsPool PT1M Oui
Distribution totale des règles du pare-feu d’applications web

Distribution totale des règles du pare-feu d’applications web pour le trafic entrant
MatchedCount Count Total (Somme) RuleGroup, RuleId PT1M Oui
Nouvelles connexions par seconde

Nouvelles connexions par seconde établies avec Application Gateway
NewConnectionsPerSecond CountPerSecond Average <aucune> PT1M Non
État de la réponse

État de la réponse HTTP retourné par Application Gateway
ResponseStatus Count Total (Somme) HttpStatusGroup PT1M Oui
Débit

Nombre d’octets par seconde servis par Application Gateway
Throughput BytesPerSecond Average <aucune> PT1M Non
Protocole TLS client

Nombre de demandes TLS et non-TLS lancées par le client qui a établi la connexion avec Application Gateway. Pour afficher la distribution du protocole TLS, filtrez par la dimension Protocole TLS.
TlsProtocol Count Total (Somme) Listener, TlsProtocol PT1M Oui
Total de requêtes

Nombre de requêtes réussies servies par Application Gateway
TotalRequests Count Total (Somme) BackendSettingsPool PT1M Oui
Nombre d’hôtes non sains

Nombre d’hôtes principaux non intègres
UnhealthyHostCount Count Average BackendSettingsPool PT1M Oui

Pour connaître les métriques WAF (Web Application Firewall) disponibles, consultez Métriques WAF Application Gateway v2 et Métriques WAF v1 Application Gateway.

Métriques de minutage pour la référence SKU Application Gateway v2

La référence SKU Application Gateway v2 fournit de nombreuses métriques de minutage intégrées liées à la demande et à la réponse, qui sont toutes mesurées en millisecondes. Ce qui suit est une description développée des métriques de minutage déjà répertoriées dans le tableau de métriques précédent.

  • Heure de connexion du back-end. Cette valeur inclut la latence réseau et le temps nécessaire à la pile TCP du serveur principal pour établir de nouvelles connexions. Pour TLS, il comprend également le temps consacré à l’établissement d’une liaison.
  • Temps de réponse du premier octet du back-end. Cette valeur correspond approximativement à la somme du temps de connexion back-end, du temps nécessaire à la requête pour atteindre le back-end à partir d’Application Gateway, du temps nécessaire à l’application back-end pour répondre, c’est-à-dire le temps nécessaire au serveur pour générer du contenu et éventuellement extraire des requêtes de base de données, ainsi que le temps nécessaire à la première octet de la réponse pour atteindre la passerelle Application Gateway à partir du serveur principal.
  • Heure de réponse du dernier octet du back-end. Cette valeur correspond approximativement à la somme du temps de réponse du premier octet principal et du temps de transfert des données. Ce nombre varie considérablement en fonction de la taille des objets demandés et de la latence du réseau serveur.
  • Durée totale de la passerelle Application Gateway. Cet intervalle est l’heure à laquelle Application Gateway reçoit le premier octet de la requête HTTP jusqu’à l’heure à laquelle le dernier octet de réponse a été envoyé au client.
  • Client RTT. Durée moyenne des allers-retours entre les clients et Application Gateway.

Métriques pour la référence SKU Application Gateway v2

Pour la référence SKU Application Gateway v2, les métriques suivantes sont disponibles. Ce qui suit est une description développée des métriques déjà répertoriées dans la table de métriques précédente.

  • Octets reçus. Cette métrique compte uniquement la taille de contenu de la requête observée par Application Gateway. Il n’inclut pas les transferts de données tels que les négociations d’en-tête TLS, les en-têtes de paquets TCP/IP ou les retransmissions.
  • Octets envoyés. Cette métrique compte uniquement la taille de contenu de réponse fournie par Application Gateway. Il n’inclut pas les transferts de données tels que les en-têtes de paquets TCP/IP ou les retransmissions.
  • Protocole TLS du client. Nombre de requêtes TLS et non-TLS.
  • Unités de capacité actuelles. Il existe trois déterminants pour l’unité de capacité : unité de calcul, connexions persistantes et débit. Chaque unité de capacité se compose d’au plus une unité de calcul, ou de 2500 connexions persistantes, ou de débit de 2,22 Mbits/s.
  • Unités de calcul actuelles. Les facteurs affectant l’unité Compute sont les connexions TLS/s, les calculs de réécriture d’URL et le traitement des règles WAF.
  • Connexions actuelles. Nombre total de connexions simultanées actives de clients à Application Gateway.
  • Unités de capacité facturées estimées. Avec la référence SKU v2, la consommation pilote le modèle tarifaire. Les unités de capacité mesurent le coût basé sur la consommation qui est facturé en plus du coût fixe. *Les unités de capacité facturées estimées indiquent le nombre d’unités de capacité à l’aide desquelles la facturation est estimée. Cette quantité est calculée en tant que valeur supérieure entre les unités de capacité actuelles (unités de capacité requises pour équilibrer la charge du trafic) et les unités de capacité facturable fixes (unités de capacité minimales conservées approvisionnées).
  • Demandes ayant échoué. Cette valeur inclut les codes 5xx générés à partir de la passerelle Application Gateway et les codes 5xx générés à partir du serveur principal. Le nombre de demandes peut être filtré pour afficher le nombre d’affichages par combinaison de paramètres HTTP/pool principal spécifique.
  • Correction des unités de capacité facturables. Nombre minimal d’unités de capacité conservées conformément au paramètre d’unités d’échelle minimale dans la configuration d’Application Gateway. Une instance se traduit par 10 unités de capacité.
  • Nouvelles connexions par seconde. Nombre moyen de nouvelles connexions TCP par seconde à partir de clients au Service Application Gateway et à partir du service Application Gateway à des membres principaux.
  • État de la réponse. La distribution du code d’état de la réponse peut être ultérieurement classée par catégorie afin d’afficher les réponses dans les catégories 2xx, 3xx, 4xx et 5xx.
  • Débit. Cette métrique compte uniquement la taille de contenu fournie par Application Gateway. Il n’inclut pas les transferts de données tels que les négociations d’en-tête TLS, les en-têtes de paquets TCP/IP ou les retransmissions.
  • Nombre total de demandes. Demandes réussies fournies par Application Gateway. Le nombre de requêtes peut être filtré pour afficher le nombre par combinaison de paramètres pool-http principal spécifique/ chaque.

Métriques principales pour la référence SKU Application Gateway v2

Pour la référence SKU Application Gateway v2, les métriques principales suivantes sont disponibles. Ce qui suit est une description développée des métriques principales déjà répertoriées dans la table de métriques précédente.

  • État de la réponse du back-end. Nombre de codes d’état de réponse HTTP retournés par les back-ends, sans inclure de codes de réponse générés par Application Gateway. La distribution du code d’état de réponse peut être catégorisée pour afficher les réponses dans les catégories 2xx, 3xx, 4xx et 5xx.|
  • Nombre d’hôtes sain. Nombre d’hôtes déterminés en bonne santé par la sonde d’intégrité. Vous pouvez filtrer sur une base de pool principal pour afficher le nombre d’hôtes sains dans un pool principal spécifique.
  • Nombre d’hôtes défectueux. Nombre d’hôtes déterminés non sains par la sonde d’intégrité. Vous pouvez filtrer sur une base de pool principal pour afficher le nombre d’hôtes non sains dans un pool principal spécifique.
  • Demandes par minute par hôte sain. Nombre moyen de requêtes que chaque membre sain d’un pool principal reçoit par minute. Spécifiez le pool principal à l’aide de la dimension BackendPool HttpSettings.

Métriques pour la référence SKU Application Gateway v1

Pour la référence SKU Application Gateway v1, les métriques suivantes sont disponibles. Ce qui suit est une description développée des métriques déjà répertoriées dans la table de métriques précédente.

  • Utilisation du processeur. Affiche l’utilisation des processeurs alloués à Application Gateway. Dans des conditions normales, l’utilisation du processeur ne doit pas dépasser régulièrement 90 %, car cette situation peut entraîner une latence dans les sites web hébergés derrière Application Gateway et perturber l’expérience cliente. Vous pouvez indirectement contrôler ou améliorer l'utilisation du processeur en modifiant la configuration d'Application Gateway en augmentant le nombre d'instances ou en passant à une taille SKU plus grande, ou en faisant les deux.

  • Connexions actuelles. Nombre de connexions en cours établies avec Application Gateway.

  • Demandes ayant échoué. Nombre de demandes ayant échoué en raison de problèmes de connexion. Ce nombre comprend les demandes qui ont échoué en raison du paramètre HTTP « Délai d’expiration des demandes » ou de problèmes de connexion entre Application Gateway et le serveur principal. Ne sont pas comptabilisées les défaillances dues à l’absence de serveur principal sain disponible. Les réponses 4xx et 5xx du serveur principal ne sont pas non plus prises en compte dans le cadre de cette métrique.

  • État de la réponse. État de la réponse HTTP retourné par Application Gateway. La distribution du code d’état de la réponse peut être ultérieurement classée par catégorie afin d’afficher les réponses dans les catégories 2xx, 3xx, 4xx et 5xx.

  • Débit. Nombre d’octets par seconde servis par seconde par application Gateway.

  • Nombre total de demandes. Nombre de requêtes réussies servies par Application Gateway. Le nombre de demandes peut être filtré pour afficher le nombre d’affichages par combinaison de paramètres HTTP/pool principal spécifique.

Métriques principales pour la référence SKU Application Gateway v1

Pour la référence SKU Application Gateway v1, les métriques principales suivantes sont disponibles. Ce qui suit est une description développée des métriques principales déjà répertoriées dans la table de métriques précédente.

  • Nombre d’hôtes sain. Le nombre de serveurs principaux déterminés sains par la sonde d’intégrité. Vous pouvez filtrer sur une base de pool principal pour afficher le nombre d’hôtes sains dans un pool principal spécifique.

  • Nombre d’hôtes défectueux. Nombre de principaux déterminés défectueux par la sonde d’intégrité. Vous pouvez filtrer sur une base de pool principal pour afficher le nombre d’hôtes non sains dans un pool principal spécifique.

API d’intégrité du back-end

Consultez Passerelles applicatives – Intégrité du back-end pour obtenir des informations sur l’appel d’API pour récupérer l’intégrité du back-end d’une passerelle applicative.

Exemple de demande :

POST
https://management.azure.com/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/
applicationGateways/appgw/backendhealth?api-version=2021-08-01

Après l’envoi de cette requête POST, vous devriez voir une réponse HTTP 202 accepté. Dans les en-têtes de réponse, recherchez l’en-tête Emplacement et envoyez une nouvelle requête GET en utilisant cette URL.

GET
https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/region-name/operationResults/GUID?api-version=2021-08-01

Mesures de proxy TLS/TCP

Application Gateway prend en charge la surveillance du proxy TLS/TCP. Avec la fonctionnalité proxy de couche 4 désormais disponible avec Application Gateway, certaines métriques courantes s’appliquent à la fois à la couche 7 et à la couche 4. Il existe des métriques spécifiques à la couche 4. La liste suivante récapitule les métriques applicables à l’utilisation de la couche 4.

  • Connexions courantes
  • Nouvelles connexions par seconde
  • Débit
  • Nombre d’hôtes intègres
  • Nombre d’hôtes défectueux
  • RTT client
  • Temps de connexion au back-end
  • Temps de réponse du premier octet du back-end. BackendHttpSetting la dimension inclut les paramètres principaux de couche 7 et de couche 4.

Pour plus d’informations, consultez les descriptions précédentes et la table des métriques.

Ces métriques s’appliquent uniquement à la couche 4.

  • Durée de session back-end. Durée totale de la connexion back-end. Durée moyenne entre le début d’une nouvelle connexion et son arrêt. BackendHttpSetting la dimension inclut les paramètres principaux de couche 7 et de couche 4.
  • Durée de vie de la connexion. Durée totale de la connexion d’un client à une passerelle applicative. Durée moyenne entre le début d’une nouvelle connexion et son arrêt en millisecondes.

Intégrité du back-end de proxy TLS/TCP

Le proxy de couche 4 d’Application Gateway offre la possibilité de surveiller l’intégrité des membres individuels des pools principaux via le portail et l’API REST.

Capture d’écran montrant l’intégrité des membres individuels des pools principaux.

Dimensions de métrique

Pour plus d’informations sur les dimensions de métrique, consultez Métriques multidimensionnelles.

Ce service a les dimensions suivantes associées à ses métriques.

  • Action
  • BackendHttpSetting
  • BackendPool
  • BackendServer
  • BackendSettingsPool
  • Catégorie
  • CountryCode
  • CustomRuleID
  • HttpStatusGroup
  • Port d'écoute
  • Method
  • Mode
  • PolicyName
  • PolicyScope
  • RuleGroup
  • RuleGroupID
  • ID de la règle
  • RuleSetName
  • TlsProtocol

Remarque

Si Application Gateway comprend plus d’un écouteur, filtrez toujours par la dimension Écouteur tout en comparant différentes mesures de latence pour obtenir une inférence plus significative.

Journaux d’activité de ressources

Cette section répertorie les types de journaux d’activité de ressources que vous pouvez collecter pour ce service. La section extrait la liste de tous les types de catégorie de journaux d’activité de ressources pris en charge dans Azure Monitor.

Catégories de journaux de ressources prises en charge pour Microsoft.Network/applicationGateways

Category Nom complet de la catégorie Table de journal Prend en charge le plan de journal de base Prend en charge la transformation de la durée d’ingestion Exemples de requêtes Coûts d’exportation
ApplicationGatewayAccessLog Journal d’accès à Application Gateway AGWAccessLogs

Contient tous les journaux pour afficher les modèles d’accès Application Gateway et analyser les informations importantes. Ceci comprend l’adresse IP de l’appelant, l’URL demandée, la latence de réponse, le code de retour et les octets d’entrée et de sortie.

Oui No Non
ApplicationGatewayFirewallLog Journal de pare-feu Application Gateway AGWFirewallLogs

Contient tous les journaux d’activité pour afficher les demandes enregistrées via le mode de détection ou de prévention d’une passerelle d’application configurée avec le pare-feu d’applications web.

Oui No Non
ApplicationGatewayPerformanceLog Journal de performance de la passerelle d’application AGWPerformanceLogs

Contient tous les journaux d’activité pour voir comment les instances Application Gateway s’exécutent. Ce journal capture les informations de performances pour chaque instance, y compris le nombre total de requêtes traitées, le débit en octets, le nombre total de demandes traitées, le nombre de demandes ayant échoué et le nombre d’instances principales saines et non saines. Le journal des performances est disponible uniquement pour la référence SKU v1.

Oui No Non
  • Journal d’accès. Vous pouvez utiliser le journal Access pour afficher les modèles d’accès Application Gateway et analyser des informations importantes. Ces informations incluent l’adresse IP de l’appelant, l’URL demandée, la latence de réponse, le code de retour et les octets entrants et sortants. Un journal d’accès est collecté toutes les 60 secondes. Ce journal contient un enregistrement par instance Application Gateway. La instanceId propriété identifie l’instance Application Gateway.

  • Journal du pare-feu. Vous pouvez utiliser le journal du pare-feu pour afficher les demandes enregistrées via la détection ou le mode de prévention d’une passerelle d’application configurée avec le pare-feu d’applications web. Les journaux du pare-feu sont collectés toutes les 60 secondes.

  • Journal des performances. Vous pouvez utiliser le journal des performances pour voir comment les instances d’Application Gateway s’exécutent. Ce journal capture des informations sur les performances de chaque instance, notamment le nombre total de requêtes traitées, le débit en octets, le nombre total de requêtes présentées, le nombre de requêtes ayant échoué, le nombre d’instances du serveur principal intègres et défectueuses. Le journal des performances est collecté toutes les 60 secondes.

    Remarque

    Le journal des performances est uniquement disponible pour la référence SKU v1. S’il s’agit de la référence SKU v2, utilisez les Métriques pour les données de performances.

Catégorie de journal d’accès

Le journal d’accès est généré uniquement si vous l’activez sur chaque instance Application Gateway, comme indiqué dans Activer la journalisation. Les données sont stockées dans le compte de stockage spécifié lors de l’activation de la journalisation. Chaque accès d’Application Gateway est enregistré au format JSON, comme indiqué.

Remarque

Pour obtenir des informations sur le proxy TLS/TCP, consultez référence de données.

Pour la référence SKU Application Gateway et WAF v2 :

Valeur Description
instanceId Instance Application Gateway ayant traité la requête.
clientIP IP du client immédiat d’Application Gateway. Si un autre proxy fronte votre passerelle d’application, cette valeur affiche l’adresse IP de ce proxy de fronting.
httpMethod Méthode HTTP utilisée par la requête.
requestUri URI de la requête reçue.
UserAgent Agent utilisateur de l’en-tête de requête HTTP.
httpStatus Code d’état HTTP renvoyé au client à partir de d’Application Gateway.
httpVersion Version HTTP de la requête.
receivedBytes Taille du paquet reçu, en octets.
sentBytes Taille du paquet envoyé, en octets.
clientResponseTime Différence de temps (en secondes) entre le premier octet et le dernier octet envoyés par Application Gateway au client. Utile pour évaluer le temps de traitement d’Application Gateway pour les réponses ou les clients lents.
timeTaken Durée (en secondes) nécessaire au traitement du premier octet d’une demande cliente et à l’envoi du dernier octet dans la réponse au client. Il est important de noter que le champ Time-Taken inclut généralement l’heure à laquelle la requête et les paquets de réponse circulent sur le réseau.
WAFEvaluationTime Durée (en secondes) nécessaire au traitement de la demande par le WAF.
WAFMode La valeur peut être détection ou prévention.
transactionId Identificateur unique pour mettre en corrélation la demande reçue du client.
sslEnabled Détermine si la communication avec les pools de back-ends a utilisé TLS. Les valeurs valides sont On (Activé) et Off (Désactivé).
sslCipher Suite de chiffrement utilisée pour la communication TLS (si TLS est activé).
sslProtocol Protocole SSL/TLS utilisé (si TLS est activé).
sslClientVerify Affiche le résultat de la vérification du certificat client comme SUCCESS ou FAILED. L’état Failed inclut des informations sur l’erreur.
sslClientCertificateFingerprint Empreinte SHA1 du certificat client pour une connexion TLS établie.
sslClientCertificateIssuerName Chaîne du nom de domaine (DN) de l’émetteur du certificat client pour une connexion TLS établie.
serverRouted Serveur back-end vers lequel la passerelle d’application route les demandes.
serverStatus Code d’état HTTP du serveur back-end.
serverResponseLatency Latence de la réponse (en secondes) du serveur back-end.
host Adresse figurant dans l’en-tête d’hôte de la demande. Si vous réécritez à l’aide de la réécriture d’en-tête, ce champ contient le nom d’hôte mis à jour.
originalRequestUriWithArgs Ce champ contient l’URL de requête d’origine.
requestUri Ce champ contient l’URL après l’opération de réécriture sur Application Gateway.
upstreamSourcePort Port source utilisé par Application Gateway lors du lancement d’une connexion à la cible back-end.
originalHost Ce champ contient le nom d’hôte de requête d’origine.
error_info Raison des erreurs 4xx et 5xx. Affiche un code d’erreur pour une requête ayant échoué. Pour plus d’informations, consultez les tableaux de code d’erreur de cet article.
contentType Type de contenu ou de données en cours de traitement ou de remise par la passerelle d’application.
{
    "timeStamp": "2021-10-14T22:17:11+00:00",
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "listenerName": "HTTP-Listener",
    "ruleName": "Storage-Static-Rule",
    "backendPoolName": "StaticStorageAccount",
    "backendSettingName": "StorageStatic-HTTPS-Setting",
    "operationName": "ApplicationGatewayAccess",
    "category": "ApplicationGatewayAccessLog",
    "properties": {
        "instanceId": "appgw_2",
        "clientIP": "185.42.129.24",
        "clientPort": 45057,
        "httpMethod": "GET",
        "originalRequestUriWithArgs": "\/",
        "requestUri": "\/",
        "requestQuery": "",
        "userAgent": "Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/52.0.2743.116 Safari\/537.36",
        "httpStatus": 200,
        "httpVersion": "HTTP\/1.1",
        "receivedBytes": 184,
        "sentBytes": 466,
        "clientResponseTime": 0,
        "timeTaken": 0.034,
        "WAFEvaluationTime": "0.000",
        "WAFMode": "Detection",
        "transactionId": "592d1649f75a8d480a3c4dc6a975309d",
        "sslEnabled": "on",
        "sslCipher": "ECDHE-RSA-AES256-GCM-SHA384",
        "sslProtocol": "TLSv1.2",
        "sslClientVerify": "NONE",
        "sslClientCertificateFingerprint": "",
        "sslClientCertificateIssuerName": "",
        "serverRouted": "52.239.221.65:443",
        "serverStatus": "200",
        "serverResponseLatency": "0.028",
        "upstreamSourcePort": "21564",
        "originalHost": "20.110.30.194",
        "host": "20.110.30.194",
        "error_info":"ERRORINFO_NO_ERROR",
        "contentType":"application/json"
    }
}

Remarque

Les journaux d’accès avec la valeur clientIP 127.0.0.1 proviennent d’un processus de sécurité interne s’exécutant sur les instances de passerelle d’application. Vous pouvez ignorer ces entrées de journal de manière sécurisée.

Pour la référence SKU Application Gateway Standard et WAF (v1) :

Valeur Description
instanceId Instance Application Gateway ayant traité la requête.
clientIP Adresse IP d’origine de la requête.
clientPort Port d’origine de la requête.
httpMethod Méthode HTTP utilisée par la requête.
requestUri URI de la requête reçue.
RequestQuery Server-Routed : instance de pool de back-ends à laquelle la demande a été envoyée.
X-AzureApplicationGateway-LOG-ID : ID de corrélation utilisé pour la demande. Peut être utilisée pour résoudre les problèmes de trafic sur les back-ends.
ÉTAT DU SERVEUR : code de réponse HTTP reçu par Application Gateway à partir du serveur principal.
UserAgent Agent utilisateur de l’en-tête de requête HTTP.
httpStatus Code d’état HTTP renvoyé au client à partir de d’Application Gateway.
httpVersion Version HTTP de la requête.
receivedBytes Taille du paquet reçu, en octets.
sentBytes Taille du paquet envoyé, en octets.
timeTaken Durée (en millisecondes) nécessaire pour le traitement d’une requête et l’envoi de la réponse. Cette valeur est calculée en tant qu’intervalle entre le moment où Application Gateway reçoit le premier octet d’une requête HTTP au moment où l’opération d’envoi de la réponse se termine. Il est important de noter que le champ Time-Taken inclut généralement l’heure à laquelle la requête et les paquets de réponse circulent sur le réseau.
sslEnabled Détermine si la communication avec les pools de back-ends a utilisé TLS/SSL. Les valeurs valides sont On (Activé) et Off (Désactivé).
host Nom de l’hôte pour lequel la requête a été envoyée au serveur back-end. Si le nom d’hôte du back-end est remplacé, ce nom reflète cette situation.
originalHost Nom de l’hôte pour lequel la requête provenant du client a été reçue par Application Gateway.
{
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/PEERINGTEST/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayAccess",
    "time": "2017-04-26T19:27:38Z",
    "category": "ApplicationGatewayAccessLog",
    "properties": {
        "instanceId": "ApplicationGatewayRole_IN_0",
        "clientIP": "203.0.113.97",
        "clientPort": 46886,
        "httpMethod": "GET",
        "requestUri": "/phpmyadmin/scripts/setup.php",
        "requestQuery": "X-AzureApplicationGateway-CACHE-HIT=0&SERVER-ROUTED=10.4.0.4&X-AzureApplicationGateway-LOG-ID=aaaa0000-bb11-2222-33cc-444444dddddd&SERVER-STATUS=404",
        "userAgent": "-",
        "httpStatus": 404,
        "httpVersion": "HTTP/1.0",
        "receivedBytes": 65,
        "sentBytes": 553,
        "timeTaken": 205,
        "sslEnabled": "off",
        "host": "www.contoso.com",
        "originalHost": "www.contoso.com"
    }
}

Si la passerelle applicative ne peut pas terminer la requête, elle stocke l’un des codes de raison suivants dans le champ error_info du journal d’accès.

Erreurs 4XX Les codes d’erreur 4xx indiquent qu’il y a eu un problème avec la demande du client et que la passerelle Application Gateway ne peut pas la remplir.
ERRORINFO_INVALID_METHOD Le client a envoyé une demande qui n’est pas conforme À RFC. Raisons possibles : le client utilise une méthode HTTP non prise en charge par le serveur, la méthode est mal orthographiée, la version du protocole HTTP est incompatible, etc.
ERRORINFO_INVALID_REQUEST Le serveur ne peut pas traiter la requête en raison d’une syntaxe incorrecte.
ERRORINFO_INVALID_VERSION La passerelle applicative a reçu une requête ayant une version de protocole HTTP non valide ou non prise en charge.
ERRORINFO_INVALID_09_METHOD Le client a envoyé une requête ayant le protocole HTTP version 0.9.
ERRORINFO_INVALID_HOST La valeur fournie dans l’en-tête « Host » est manquante, mal mise en forme ou ne correspond pas à la valeur d’hôte attendue. Par exemple, lorsqu’il n’y a pas d’écouteur Essentiel et qu’aucun des noms d’hôte des écouteurs multisite ne correspond à l’hôte.
ERRORINFO_INVALID_CONTENT_LENGTH La longueur du contenu spécifié par le client dans l’en-tête content-Length ne correspond pas à la longueur réelle du contenu dans la requête.
ERRORINFO_INVALID_METHOD_TRACE Le client a envoyé la méthode TRACE HTTP, que la passerelle d’application ne prend pas en charge.
ERRORINFO_CLIENT_CLOSED_REQUEST Le client a fermé la connexion avec la passerelle applicative avant l’expiration pour délai d’inactivité. Vérifiez si la période d’expiration du client est supérieure à la période d’expiration pour délai d’inactivité de la passerelle applicative.
ERRORINFO_REQUEST_URI_INVALID Indique un problème avec l’URI (Uniform Resource Identifier) fourni dans la requête du client.
ERRORINFO_HTTP_NO_HOST_HEADER Le client a envoyé une requête sans en-tête d’hôte (Host).
ERRORINFO_HTTP_TO_HTTPS_PORT Le client a envoyé une requête HTTP simple à un port HTTPS.
ERRORINFO_HTTPS_NO_CERT Indique que le client n’envoie pas de certificat TLS valide et correctement configuré lors de l’authentification TLS mutuelle.
Erreurs 5XX Description
ERRORINFO_UPSTREAM_NO_LIVE La passerelle d’application ne peut pas trouver de serveurs principaux actifs ou accessibles pour gérer les requêtes entrantes.
ERRORINFO_UPSTREAM_CLOSED_CONNECTION Le serveur back-end a fermé la connexion de manière inattendue ou avant que la requête ait été entièrement traitée. Cette condition peut se produire en raison d’un serveur principal atteignant ses limites, de se bloquer, etc.
ERRORINFO_UPSTREAM_TIMED_OUT La connexion TCP établie avec le serveur a été fermée, car la connexion a pris plus de temps que le délai d’attente configuré.

Catégorie du journal du pare-feu

Le journal du pare-feu est généré uniquement si vous l’activez pour chaque passerelle d’application, comme indiqué dans Activer la journalisation. Ce fichier journal nécessite également que ce pare-feu d’applications web soit configuré sur une passerelle Application Gateway. Les données sont stockées dans le compte de stockage spécifié lors de l’activation de la journalisation. Les données suivantes sont enregistrées :

Valeur Description
instanceId Instance Application Gateway pour laquelle les données du pare-feu sont générées. Pour une passerelle applicative à plusieurs instances, il y a une ligne par instance.
clientIp Adresse IP d’origine de la requête.
clientPort Port d’origine de la requête.
requestUri URL de la requête reçue.
ruleSetType Type d’ensemble de règles. La valeur disponible est OWASP.
ruleSetVersion Version d’ensemble de règles utilisée. Les valeurs disponibles sont 2.2.9 et 3.0.
ruleId ID de règle de l’événement de déclenchement.
message Message convivial pour l’événement de déclenchement. La section Détails vous fournit plus d’informations.
action Action effectuée sur la requête. Les valeurs disponibles sont bloquées et autorisées (pour les règles personnalisées), mises en correspondance (lorsqu’une règle correspond à une partie de la requête) et détectées et bloquées (ces valeurs sont à la fois pour les règles obligatoires, selon que le WAF est en mode de détection ou de prévention).
site Site pour lequel le journal a été généré. Actuellement, seul Global est répertorié car les règles sont globales.
details Détails de l’événement de déclenchement.
details.message Description de la règle.
details.data Données spécifiques trouvées dans la requête correspondant à la règle.
details.file Fichier de configuration qui contenait la règle.
details.line Numéro de ligne dans le fichier de configuration ayant déclenché l’événement.
hostname Nom d’hôte ou adresse IP de la passerelle Application Gateway.
transactionId ID unique pour une transaction donnée, qui permet de regrouper plusieurs violations de règle qui se sont produites dans la même requête.
{
    "timeStamp": "2021-10-14T22:17:11+00:00",
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayFirewall",
    "category": "ApplicationGatewayFirewallLog",
    "properties": {
        "instanceId": "appgw_2",
        "clientIp": "185.42.129.24",
        "clientPort": "",
        "requestUri": "\/",
        "ruleSetType": "OWASP_CRS",
        "ruleSetVersion": "3.0.0",
        "ruleId": "920350",
        "message": "Host header is a numeric IP address",
        "action": "Matched",
        "site": "Global",
        "details": {
            "message": "Warning. Pattern match \\\"^[\\\\d.:]+$\\\" at REQUEST_HEADERS:Host .... ",
            "data": "20.110.30.194:80",
            "file": "rules\/REQUEST-920-PROTOCOL-ENFORCEMENT.conf",
            "line": "791"
        },
        "hostname": "20.110.30.194:80",
        "transactionId": "592d1649f75a8d480a3c4dc6a975309d",
        "policyId": "default",
        "policyScope": "Global",
        "policyScopeName": "Global"
    }
}

Catégorie du journal des performances

Le journal des performances est généré uniquement si vous l’activez sur chaque instance Application Gateway, comme détaillé dans Activer la journalisation. Les données sont stockées dans le compte de stockage spécifié lors de l’activation de la journalisation. Les données du journal des performances sont générées par intervalles d’1 minute. Disponible uniquement pour la référence SKU v1. S’il s’agit de la référence SKU v2, utilisez les Métriques pour les données de performances. Les données suivantes sont enregistrées :

Valeur Description
instanceId Instance Application Gateway pour laquelle les données des performances sont générées. Pour une passerelle applicative à plusieurs instances, il y a une ligne par instance.
healthyHostCount Nombre d’hôtes intègres dans le pool de back-ends.
unHealthyHostCount Nombre d’hôtes défaillants dans le pool de back-ends.
requestCount Nombre de requêtes traitées.
latency Latence moyenne (en millisecondes) des requêtes à partir de l’instance vers le serveur principal qui traite les requêtes.
failedRequestCount Nombre d’échecs de requêtes.
throughput Débit moyen depuis le dernier journal, mesuré en octets par seconde.
{
    "resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{applicationGatewayName}",
    "operationName": "ApplicationGatewayPerformance",
    "time": "2016-04-09T00:00:00Z",
    "category": "ApplicationGatewayPerformanceLog",
    "properties":
    {
        "instanceId":"ApplicationGatewayRole_IN_1",
        "healthyHostCount":"4",
        "unHealthyHostCount":"0",
        "requestCount":"185",
        "latency":"0",
        "failedRequestCount":"0",
        "throughput":"119427"
    }
}

Notes

La latence est calculée à partir de l’heure de la réception du premier octet de la requête HTTP jusqu’à l’heure de l'envoi du dernier octet de la réponse HTTP. Il s’agit de la somme du temps de traitement d’Application Gateway et du coût du réseau pour le serveur principal, ainsi que le temps pris par le serveur principal pour traiter la requête.

Journaux Azure Monitor et tables Log Analytics

Azure Application Gateway utilise la table Diagnostics Azure pour stocker les informations des journaux de ressources. Les colonnes suivantes sont pertinentes.

Propriété Description
requestUri_s URI de la requête du client.
Message Messages d’information tels que « Attaque par injection de code SQL »
userAgent_s Détails de l’agent utilisateur de la requête du client
ruleName_s Règle d’acheminement des requêtes utilisée pour traiter cette requête
httpMethod_s Méthode HTTP de la requête du client
instanceId_s Instance Appgw vers laquelle la requête du client est routée pour évaluation
httpVersion_s Version HTTP de la requête du client
clientIP_s Adresse IP à partir de laquelle la requête est effectuée
host_s En-tête de l’hôte de la requête du client
requestQuery_s Chaîne de requête dans le cadre de la requête du client
sslEnabled_s Si le protocole SSL est activé ou non pour la requête du client

Tables Azure Monitor Logs

Cette section répertorie les tables de journaux Azure Monitor pertinentes pour ce service, disponibles pour une requête par l’analytique des journaux d’activité à l’aide de requêtes Kusto. Les tables contiennent les données du journal des ressources et éventuellement d’autres données en fonction de ce qui est collecté et acheminé vers elles.

Application Gateway Microsoft.Network/applicationGateways

Journaux de proxy TLS/TCP

Le proxy de couche 4 d’Application Gateway fournit des données de journal par le biais des journaux d’accès. Ces journaux sont générés et publiés uniquement s’ils sont configurés dans les paramètres de diagnostic de votre passerelle. Voir également : Catégories prises en charge pour les journaux de ressources Azure Monitor.

Remarque

Les colonnes pour les détails d’authentification mutuelle d’un écouteur TLS sont actuellement disponibles uniquement via la table AzureDiagnostics.

Catégorie Catégorie de journal de ressources
ResourceGroup Groupe de ressources auquel appartient la ressource de passerelle applicative.
SubscriptionId ID d’abonnement de la ressource de passerelle applicative.
ResourceProvider Cette valeur est MICROSOFT. NETWORK pour la passerelle d’application.
Ressource Nom de la ressource de passerelle applicative.
ResourceType Cette valeur est APPLICATIONGATEWAYS.
ruleName Nom de la règle d’acheminement ayant servi la requête de connexion.
instanceId Instance Application Gateway ayant traité la requête.
clientIP Adresse IP d’origine de la requête.
receivedBytes Données reçues d’un client vers une passerelle, en octets.
sentBytes Données envoyée d’une passerelle vers un client, en octets.
listenerName Nom de l’écouteur ayant établi une connexion front-end avec un client.
backendSettingName Nom du paramètre de back-end utilisé pour la connexion back-end.
backendPoolName Nom du pool back-end à partir duquel un serveur cible a été sélectionné pour établir la connecter back-end.
protocol TCP (Qu’il soit TCP ou TLS, la valeur du protocole est toujours TCP).
sessionTime Durée de session, en secondes (cette valeur concerne la session client-appgw>).
upstreamSentBytes Données envoyées au serveur principal, en octets.
upstreamReceivedBytes Données reçues du serveur principal, en octets.
upstreamSessionTime Durée de session, en secondes (cette valeur concerne la session appgw-backend>).
sslCipher Suite de chiffrement utilisée pour la communication TLS (pour des écouteurs de protocole TLS).
sslProtocol Protocole SSL/TLS utilisé (pour les écouteurs de protocole TLS).
serverRouted IP de serveur principal et numéro de port vers lequel le trafic est routé.
serverStatus 200 – Session correctement terminée. 400 - Impossible d’analyser les données clientes. 500 – Erreur interne du serveur. 502 – Passerelle incorrecte. Par exemple, lorsqu’un serveur en amont n’a pas pu être atteint. 503 – Service indisponible. Par exemple, si l’accès est limité par le nombre de connexions.
ResourceId URI de ressource Application Gateway.

Journal d’activité

La table liée répertorie les opérations qui peuvent être enregistrées dans le journal d’activité de ce service. Ces opérations constituent un sous-ensemble de toutes les opérations possibles du fournisseur de ressources dans le journal d’activité.

Pour plus d’informations sur le schéma des entrées du journal d’activité, consultez Schéma du journal d’activité.

vous pouvez utiliser les journaux d’activité Azure pour voir toutes les opérations soumises à votre abonnement Azure, ainsi que leur état. Les entrées du journal d’activité sont collectées par défaut. Vous pouvez les afficher dans le portail Azure. Les journaux d’activité Azure étaient anciennement appelés journaux d’activité opérationnels et journaux d’audit.

Azure génère les journaux d’activité par défaut. Les journaux d’activité sont conservés pendant 90 jours dans la banque de journaux d’événements d’Azure. Pour en savoir plus sur ces journaux d’activité, lisez l’article Affichage des événements et du journal d’activité.