I have a working WCF service and worker role that I have been debugging locally on the Azure Development Fabric. All is well, but now that I’m trying to deploy it to the cloud in a staging environment, I’m seeing some weird issues.
- My worker role, which is infinitely more complex than the service, works fine. It goes from Initializing -> Busy -> Ready.
- My service role, however, goes from Initializing -> Busy and then the status never changes again.
I have read a few articles about Initialize -> Busy -> Stopping loops, but this is not the behavior I’m seeing. In fact, when I try to use IntelliTrace, I can’t access any logs for the service because it never enters the Unresponsive status. I am able to access logs for the successfully-loaded worker role.
How am I supposed to resolve this issue if I can’t see any logs or attach a debugger to figure out what’s going on? Again, this service works absolutely fine on my local environment.
And before anyone suggests it, I have already done the following:
- Check the
DiagnosticsConnectionStringand make sure it is connected to my storage account - Enable IntelliTrace on the deployment.
- Check all referenced assemblies to make sure non-.NET assemblies are “copy to local = true”
It sure would be great if Azure exposed some kind of console so that I could see what’s going on.
Later this year, you’ll be able to use Remote Desktop to connect in and see what’s going on.
For now, you can contact support, and they should be able to help.
Typically, “Busy” is the state you’re in while you’re still executing code in OnStart(). Is there any chance your OnStart() implementation isn’t returning? (Or perhaps some constructor?)