Monday, 5 July 2010

Failure to launch

Scientio spends a lot of time creating solutions for other companies. More often than not these are implemented as websites or portals into a demonstration environment.

We use to use a rack of servers for this purpose, but we're now down to one big one and Windows Azure.
We've been using Windows Azure since the CTP started, and we've been happy apart from one thing.
Sometimes applications just won't fire up.

You never know if it's you - normally this means you left out some vital dll - or Microsoft.

I've seen instances fail to start that did then start after being suspended and restarted - so presumably Microsoft's fault.

Most of the time it's your fault though...

The problem is that without some way of knowing what screwed up you are forced to experiment, change things try again etc. Since each new upload and restart can take 10 minutes, this is a slow process.

Diagnostic logging doesn't help, this only kicks in once the system starts.

So I was very happy to find out how to use intelliTrace with VS2010- which seems to be the only way to find out what went wrong. Microsoft hasn't publicized this very well, so here is a quick guide:
Start by selecting the IntelliTrace option when you publish to Azure:












Note that if you use RIA Services you have to switch off IntelliTrace for some dlls, see http://blogs.msdn.com/b/kylemc/archive/2010/06/09/ria-azure-and-intellitrace.aspx

Now, if your Azure instance doesn't start a log is created with the instance which you can download by looking at the Compute instances in Server Explorer:






Now wait a few minutes and a log listing the events that caused the 'failure to launch' will be displayed.
It makes life a lot easier.....
More details at: