Child pages
  • How to profile a webservice with dotTrace 4.0

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

There are two possibilities:

  • Profile webservice at development server in Visual Studio
  • Profile webservice which is deployed to IIS

Profile webservice at development server in Visual Studio

This one is pretty straitforward.

1. Make sure your webservice project is a StartUP one.

2. Proceed with dotTrace -> Profile

3. The configuration will be filled automatically in the most cases

4. Press OK. dotTrace will start the development server.
5. Open web browser and exercise your webservice

6. Other possibility is to load the website which will exercise the web service.

Possible issues:

1. Website doesn't open. The reason is that dotTrace doesn't start the browser, it starts only webserver. To start website in browser make right mouse click on the web browser icon in tray and select "Open in Web Browser".
2. "The port is busy".The reason is that Visual Studio doesn't stop Development server at once after application is stopped. The WORKAROUND is to close the remaining Development server by right click on its icon in tray and select "Stop".

Profile webservice which is deployed to IIS

1. We have our webservice deployed to IIS:

2. Start dotTrace and select the option to profile IIS

3. Start exercising your web service from the web browser (the same as in the example with Visual Studio)

Practical matters

If your webservice is exercised by unit tests then try the steps below:

1. Open app.config in the tests project. Find the "endpoint address".
2. Select dotTrace -> Profile StartUp project.
3. Uncheck autodetect port option.
4. Change port to the value from "endpoint address".
5. Start profiling. Development server will start under profiler.
6. Goto your unit tests. Run them.
7. When all tests are finished, press "Get Snapshot" and close Performance Controller.

If your webservice is consumed by some "client" application:

1. Start webservice from dotTrace. You may need to set specific port.
2. Run your client application.


Please leave your feedback in this thread