views:

67

answers:

3
+1  Q: 

WebService logging

Hi,

I would like to log every request that arrive to my webservice, end to log every response. I mean, the incoming and outgoing text stream. So far I've been able to log the SOAP requests and responses, but the ones which sends a browser, I coundn't. I tried to implement the IHttpModule interface, and handle the HttpApplication.BeginRequest event, but it didn't fired :(

Thanks for any help, Eva.

A: 

Hi Eva,

You should take a look at Gibraltar. It includes easy and flexible support for tracking method calls including parameters and return values. You can see a couple example graphs here and here. And you can see a video example here.

http://www.GibraltarSoftware.com

Jay Cincotta
Any other answers than "Buy a 3rd party component"? I'm also interested in the question.
JustLoren
+2  A: 

The server software hosting your webservice should be able to log most of this. Since this is .NET I'm guessing its hosted on IIS, so check superuser.com for info on how to view and get detailed logs from IIS.

Freiheit
A: 

Using the logs from IIS won't give you the full payload but you can use a SOAP extension. I've used one before to get the full text of a SOAP packet. The advantage of a SOAP extension is that you should still get the full xml even if you use SSL for encrypting the stream. Here's another example of a trace extension.

Richard Nienaber
Hi,many thanks for the answers. I've used this SOAP extension, that's how I've been able to log the SOAP requests. But this doesn't work in case of http get, http post requests.In the IIS logfiles I can see only the following rows:08:19:39 127.0.0.1 GET /iktatasws/iktatas.asmx 20008:19:46 127.0.0.1 POST /iktatasws/iktatas.asmx 40108:19:47 127.0.0.1 POST /iktatasws/iktatas.asmx 200Thanks,Eva.
Eva Balint
The point of the extension is to have it output to a different file. The IIS logs will remain the same. Also, as far as I'm aware, SOAP is implemented purely through POST requests.
Richard Nienaber