Je vais présenter aujourd’hui Glimpse, un outil qui va vous permettre de debugger votre application ASP.NET (MVC ou WebForms) plus facilement.
Installation
Glimpse s’installe facilement via NuGet. Pour cela, faire clic droit sur votre projet ASP.NET et cliquer sur Gérer les packages NuGet … . Sélectionner En Ligne et rechercher Glimpse. Il existe une version de Glimpse pour chaque version de MVC et pour WebForms.
Installez la version en fonction de votre application web.
Utilisation
Lors de l’ajout de Glimpse via NuGet, Glimpse rajoute automatiquement une section permettant de configurer Glimpse dans votre web.config.
Par défaut, glimpse est activé coté serveur seulement en local via la ligne suivante rajoutée dans le web.config :
<glimpse defaultRuntimePolicy="On" endpointBaseUri="~/Glimpse.axd">
Vous pouvez désactiver complétement Glimpse en passant defaultRuntimePolicy à Off. Il est également possible de configurer plus finement Glimpse. Pour cela, je vous renvoie vers la documentation concernant la configuration.
Par défaut, Glimpse n’est pas activé coté client. Lancer votre application web et aller à l’adresse racine de votre application et ajouter Glimpse.axd (http://localhost:portname/Glimpse.axd).
Cette page permet de configurer Glimpse et de l’activer. L’activation se fait via les boutons Turn Glimpse On et Turn Glimpse Off (ces boutons sont des bookmarklets qui vous pouvez glisser / déposer dans votre barre d’adresse pour une activation/désactivation rapide). Cette page permet également de gérer les onglets qui seront affichés dans Glimpse.
(en vert dans la barre d’addresse, les bookmarklets permettant l’activation/désactivation rapide).
Vous pouvez maintenant retourner sur votre application. Une fois activée, vous verrez en bas à droite de votre écran la barre Glimpse.Cette barre affiche les informations relative à la page courante :
- HTTP : temps de réponse, …
- Host : Information Serveur (Controller/Action, Vue, …)
- Ajax : le nombre de requêtes AJAX.
Au survol d’une zone, on affiche un volet afin plus d’information :
Au clic sur le g (en bas à droite), on passe en mode avancé avec un système d’onglet comme on peut l’avoir avec une barre d’outils comme Firebug.
Voici quelques onglets présent dans cette vue avancée :
L’onglet Configuration permet de consulter la configuration (web.config) de l’application :
L’onglet Timeline présente l’exécution de la requête dans le temps
L’onglet Request présente les informations de la requête :
L’onglet Route présente la résolution de la route :
L’onglet Trace permet d’afficher les messages écrit via System.Diagnostics.Trace et Debug
public ActionResult Index() { System.Diagnostics.Trace.Write("Je suis une trace"); System.Diagnostics.Debug.Write("Je suis un debug"); return View(); }
Plugins
Glimpse supporte des extensions, à installer via NuGet, qui permettent de rajouter un onglet contenant les informations relatives à l’extension. Il existe notamment :
- une extension pour Entity Framework (comme pour ASP.NET veillez à installer le package lié à la version d’EF que vous utilisez), qui permet d’afficher les requêtes effectuées ainsi que leur temps d’exécution.
- une extension pour Log4Net qui permet de voir les entrées de Log4Net
Liens
- L’aide concernant la configuration de Glimpse
- La page du wiki concernant les onglets par défaut de Glimpse