Scénario 2 : Exemple d’analyseur utilisant le suivi ETW
Pour générer un rapport de trace ETW pour le composant API serveur HTTP, exécutez les étapes décrites dans la section « Génération d’un rapport de trace ETW » du scénario 1 : Exemple de délai d’expiration HTTP à l’aide du suivi ETW et des commandes Netsh, mais reproduisez l’erreur spécifique à ce scénario. Dans cet exemple, accédez à l’application web à partir d’un ordinateur client, ce qui entraîne l’affichage du message « 400 demande incorrecte » sur le client. Ces étapes sont exécutées sur le serveur, car il héberge l’application web.
Affichage de la trace et du diagnostic
Le fichier CSV résultant pour les traces peut être consulté dans Excel ou dans n’importe quel outil prenant en charge le format CSV. Le tableau 2 ci-dessous présente des extraits d’un exemple de fichier de trace (httptrace.csv). Dans le rapport de trace, la colonne « Niveau » affiche une entrée avec la valeur « 2 », qui représente une erreur. Comme indiqué ci-dessus, le composant API serveur HTTP suit les niveaux ETW définis dans l’article LevelType Complex Type Complex Type Complex Type.
Les niveaux ETW sont les suivants : 1 Critique ; 2 Erreur ; 3 Avertissement ; 4 Information; 5 Détaillé.
Avec cette erreur, le type d’événement (colonne Type) indique « ParseRequestFailed ». Dans les colonnes suivantes de l’événement ParseRequestFailed, nous voyons une entrée « InvalidHost ». Cette entrée signifie que l’hôte identifié dans la requête HTTP est incorrect, selon le protocole HTTP. Notez que la colonne avec l’entrée « InvalidHost » n’est pas incluse dans le tableau par souci de concision et pour éviter d’en extraitr des colonnes non incohérentes.
Pour résoudre ce problème d’analyse, le client web doit être corrigé pour être conforme au RFC HTTP.
Nom d'événement | Type | ID de l’événement | Version | Canal | Level |
---|---|---|---|---|---|
EventTrace | En-tête | 0 | 2 | 0 | 0 |
Microsoft-Windows-HttpService | AddUrl | 31 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | ConnConnect | 21 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | ConnIdAssgn | 22 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | RecvReq | 1 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | ParseRequestFailed | 52 | 0 | 16 | 2 |
Microsoft-Windows-HttpService | LogFileWrite | 51 | 0 | 16 | 4 |
Tableau 2 : Extraits d’un exemple de rapport de trace pour un problème d’analyse