.NET - SQL Server Profiler para edições Express do SQL Server


Você sabe o que é o SQL Server Profiler ?

O SQL Server Profiler é uma ferramenta que permite que você monitore e capture informações em tempo real de uma sessão de dados que atua entre a aplicação e o servidor de dados SQL Server.

Essa ferramenta permite obter informações importantes como consultas usadas, logins, bases de dados consultadas, tabelas que foram atualizadas, tempo de execução de instruções , etc.

Só tem um problema ela esta presente apenas na versão paga do SQL Server.

Então se você usa uma versão Express do SQL Server não contará com esse recurso.

Mas não desanime, sempre existe alguém para nos salvar, e neste caso esse alguém é o AnjLab SQLProfiler.

O AnjLab SQLProfiler é um projeto de código aberto compatível com as versões Express do SQL Server que permite realizar as mesmas tarefas que o SQL Profiler com algumas limitações.

Para usá-lo basta instalar e indicar o servidor de dados do qual queremos monitorar as transações e eventos.

Após a instalação ao abrir a ferramenta você verá a seguinte tela , onde no menu File estamos selecionando a opção New Trace para iniciar uma nova monitoração:

Na janela Trace Properties, guia General, definimos o servidor de dados que desejamos monitorar, o tipo de autenticação e testamos a conexão:

Na guia Events podemos escolher os eventos que desejamos monitorar e no exemplo foi escolhido apenas o evento SQLStmtStarting - TextData, que permite monitorar/capturar o texto da instrução SQL.

Na guia Filters ainda podemos refinar o monitoramento/captura definindo filtros para diversos parâmetros:

Na figura a seguir vemos o trace gerado pela abertura do SQL Server 2008 Express Edition :

Além disso você pode colocar usar os recursos de pause, stop e play podendo assim visualizar apenas os eventos que lhe interessam.

Para limpar as informações da grade de visualização basta clicar no ícone de reciclagem.

A ferramenta é bem simples mas cumpre o seu objetivo e agora você não pode mais alegar que não tem como monitorar as conexões do seu SQL Server Express.

Uma outra aplicação, esta muito mais completa e por conseguinte, mais  complexa, é o xSQLProfiler, da empresa xSQL Software. A versão gratuita tem o limite de apenas monitorizar 2 instâncias de dados. Algumas das funcionalidades mais interessantes são : permitir criar tarefas agendadas, filtros, fazer exportação das sessões para Excel, e gravar a monitorização numa base de dados. É compatível com as versões 2000, 2005 e 2008 do SQL Server.

"Porque o salário do pecado é a morte, mas o dom gratuito de Deus é a vida eterna, por Cristo Jesus Nosso Senhor." Romanos 6-23

Referências:


José Carlos Macoratti