Glimpse : Debugger votre application ASP.NET

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.

Glimpse - Installation

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.

Glimpse - Configuration

(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.

Glimpse - Mode Reduit
Au survol d’une zone, on affiche un volet afin plus d’information :

Glimpse - Information Http
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 :

Glimpse - Configuration

L’onglet Timeline présente l’exécution de la requête dans le temps

Glimpse - Onglet TimeLine

L’onglet Request présente les informations de la requête :

Glimpse - Onglet Requete

L’onglet Route présente la résolution de la route :

Glimpse - Onglet 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();
}

Glimpse - Trace

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

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *