Blog de l'équipe support IIS/Azure France -- French IIS/Azure Support Team Blog

Blog for the French IIS/Azure/ASP.net Support Team dealing with various toppics related to IIS, web development and Azure (Web Sites, Web Roles)

Debug Diagnostics & Génération de dumps

Debug Diagnostics & Génération de dumps

  • Comments 5

IIS hébergeant des applications tierces, nous sommes régulièrement amenés à investiguer des problèmes liés à ces dernières. Les problématiques principalement rencontrées sont des :

  • Hang (blocage) de l'application ou du serveur
  • Crash (plantage) de IIS
  • Forte consommation mémoire
  • Forte consommation CPU

Au support, la génération de dumps est le moyen le plus utilisé pour investiguer ce type de problème. Un dump est une photo d'un processus et de tout ce qu'il exécute à un instant T. Nous pouvons par la suite le déboguer en mode "post mortem" et trouver l'origine de l'incident. Mais avant d'en arriver là, il faut être capable de générer ces fameux dumps et c'est ici que Debug Diagnostics ("DebugDiag") entre en piste !

Cet utilitaire est disponible à l'adresse suivante :

Une fois DebugDiag installé et lancé sur le serveur IIS, un assistant "Select Rule Type" apparaît. Cet assistant propose différentes options pour configurer une règle qui va automatiser la génération des dumps :

Si vous avez cliqué sur les quatre liens précédents, vous savez maintenant comment générer des dumps selon le type de problème que vous rencontrez (il existe bien d'autres plans d'actions mais ceux-ci sont les principaux). Mais comment exploiter ces dumps pour en retirer quelques informations ? Au support, pour exploiter un dump, nous utilisons "WinDBG" des "Debugging Tools for Windows". L'inconvénient majeur de cet utilitaire est qu'il n'est absolument pas intuitif. Si vous tenez à l'utiliser et à vous lancer dans cette "grande aventure", je vous conseille de visiter le blog de notre collègue Suédoise Tess Ferrandez qui traite énormément de sujets autours du debugging : http://blogs.msdn.com/tess/

Il existe cependant une manière beaucoup plus simple de récupérer quelques informations sans y passer des heures. En effet, DebugDiag propose un outil d'analyse automatique. Bien entendu, cette analyse ne peut pas révéler toutes les subtilités que contient un dump mais cela peut donner une première piste d'investigation, voir plus.

Pour ce faire, il suffit de sélectionner l'onglet "Advanced Analysis", puis de cliquer sur "Add Data Files" et de sélectionner le dump que vous voulez analyser. Vous pouvez ensuite choisir entre deux types d'analyses :

  • Crash/Hang Analyzers
  • Memory Pressure Analyzers

Et enfin vous pouvez cliquer sur "Start Analysis". D'expérience il est toujours bon de faire les deux analyses, mais de préférence l'une après l'autre et non pas les deux en même temps. C'est purement pour un souci de clarté dans la lecture du rapport.

Selon l'installation effectuée, il est également possible que vous ayez ces choix en réalisant un clic droit directement sur le dump :

Il suffit ensuite de savoir interpréter les résultats.

En espérant que cet article vous sera utile.

@ Bientôt

Sylvain Lecerf et L'équipe de support IIS Microsoft France

Attachment: CrashHang_Report__w3wp.exe__01142009171924879.mht
Leave a Comment
  • Please add 1 and 5 and type the answer here:
  • Post
Page 1 of 1 (5 items)