Atualmente os browsers já fornecem diversos recursos ao desenvolvedor para permitir investigar algum comportamento do aplicativo, por exemplo, erro de javascript, página não encontrada, tempo que cada recurso levou para carregar, conteúdo das requisições ajax, cache, etc.

Em certos cenários de troubleshooting precisamos de ainda mais informação, por exemplo, informações de trace e log registrados no lado do servidor, comandos SQLs executados, informações estas que podem ser expostas diretamente no browser através do Glimpse. Ou seja, em tempo real é possível acompanhar o funcionamento do aplicativo no lado do servidor pelo próprio browser.

Glimpse em ação

Glimpse

Site oficial: http://getglimpse.com/

O Glimpse é uma plataforma open-source (Apache 2.0) e gratuita.

Assim que incorporado ao seu aplicativo ASP.NET ele passa a inspecionar as requisições web que ocorrem, fornecendo informações ao painel de monitoramento no próprio browser sobre o que está acontecendo durante o uso do aplicativo web.

Cenários de uso

O Glimpse é útil em uma variedade de cenários de diagnóstico e análise sobre o comportamento de um aplicativo, como por exemplo:

  • Identificar os comandos SQLs que estão executando no banco de dados ao acessar determinada página web;
  • Identificar informações de Log e Trace do lado do servidor diretamente no browser;
  • Acompanhar o tempo de execução de cada rotina interna no processamento de uma página web como forma de investigação para melhorar a performace;
  • Entre muitos outros.

Passo a Passo

O processo de inclusão do Glimpse em um projeto ASP.NET é bastante simples, resumindo-se a instalar um pacote Nuget no projeto.

1) Instalar Glimpse para ASP.NET MVC

No Package Manager Console (menu Tools > NuGet Package Manager > Package Manager Console) informe “Install-Package Glimpse.MVC4″ no caso de um projeto ASP.NET MVC 4.

Instalando Glimpse

2) Instalar Glimpse para Entity Framework

Como alternativa também é possível instalar o complemento do Glimpse para EntityFramework, podendo assim verificar os SQLs que estão sendo executados. Para isso digite: Install-Package Glimpse.EF5

Instalar Glimpse para EntityFramework

3) Ativar o Glimpse

O Glimpse fica disponível para ativar ou desativar a instrumentação através do “/Glimpse.axd” na Url.

Ativar o Glimpse

Nesta tela basta acionar o botão “Turn Glimpse On” para ativá-lo e “Off” para desativá-lo.

4) Verificar o resultado

Depois de ativado o Glimpse basta navegar pelo aplicativo web que no rodapé será mostrado diversas informações sobre a execução da página.

Glimpse em ação

Para ter acesso a mais informações basta passar o mouse sobre os itens no rodapé.

Glimpse - mais detalhes

Além dessas informações no rodapé é possível acessar dados ainda mais detalhados, como por exemplo, o tempo que cada método da classe levou para executar no servidor.

Glimpse - tempo de execução

Da mesma forma, acessar informações de Trace registradas no aplicativo, por exemplo, na Action Index da HomeController registrei uma mensagem que pude consultar diretamente no browser.

Registrando uma mensagem de Trace

Glimpse - mostrando Trace

Ou mesmo, quais comandos SQLs executaram e quanto tempo cada um levou.

Glimpse - mostrando SQLs

Muito show, certo?

Até o próximo!