quarta-feira, 26 de junho de 2013

Depurando Serviços WCF com Fiddler

Existem projetos em WCF, que por sua natureza complexa, fica difícil depurar certos erros.

Por exemplo, imagine uma estrutura de projeto que comece com a execução de uma aplicação ASP.NET. Esta aplicação, por sua vez, possui em suas páginas chamadas Silverlight. Dentro desta camada Silverlight, existe uma outra chamada WCF, que executa a tecnologia EntityFramework para busca de informações em um banco de dados qualquer. Estrutura um pouco complicada não?!

Pode ter certeza que em algum momento, ocorrendo um erro lá na última camada do projeto (EntityFramework), o erro que irá aparecer para o desenvolvedor com certeza não será tão detalhado na primeira camada (ASP.NET).

Felizmente existe uma ferramenta muito boa para depurarmos melhor todo este processo, que se chama Fiddler.

A instalação e utilização desta ferramenta de [captura de chamadas WCF] para analisar em muito mais detalhes o erro ocorrido em sua aplicação é simples, como descrito abaixo:

1 - Efetue o download da ferramenta, acessando o site da Fiddler
2 - Instale a ferramenta (fiddler4setup.exe);
3 - Efetue o download e instale o extensor (BinaryMessageFiddlerExtension_0.2.zip) para chamadas WCF - WCF Binary-encoded Message Inspector for Fiddler
4 - Descompacte o arquivo [BinaryMessageFiddlerExtension_0.2.zip] e copie a dll [BinaryMessageFiddlerExtension.dll] para o diretório de instalação do Fiddler (\Program Files\Fiddler2\Inspectors)
5 - E por fim inicie o Fiddler



Com o fiddler iniciado, vá até a opção de Menu [Tools \ Fiddler Options] e configure qual a PORTA que deseja que o fiddler fique "escutando" solicitações HTTP.



Pronto. Quando você iniciar sua aplicação, verá que o fiddler (na aba INSPECTOR) mostrará os resultados das solicitações para você. Desta forma, poderá ver (na aba Inspectors \ TextView) a mensagem de erro em detalhes que precisa depurar.


Ref: Debugging WCF Service Calls


Abraços!