Brief on updating Azure WorkerRoles from the July to November SDK version

I’m updating our Windows Azure projects to the new version (November 2009 PDC) of the SDK. These are the highlights on the process:

  • New namespaces: from Microsoft.ServiceRuntime to Microsoft.WindowsAzure.ServiceRuntime plus the new .StorageClient and .Diagnostics (see below, on logging). Also note that you have to update the References.
  • The RoleManager class changed to RoleEnviroment so:
    • RoleManager.GetLocalResource is now RoleEnvironment.GetLocalResource
    • RoleManager.GetConfigurationSetting is now¬†RoleEnvironment.GetConfigurationSettingValue
    • RoleManager.WriteToLog disappeared, check the new Diagnostics API
  • RoleEntryPoint.GetHealthStatus() is gone
  • RoleEntryPoint changed its execution model from Start->Stop (with the main loop on the Start) to a OnStart()->Run->OnStop() event-like model. Previously I used the class constructor to make the initialization which now goes on the OnStart()

The biggest change for me is the new .Diagnostics namespace. Check this video from the PDC09 to check the new diagnostics and monitoring capabilities.

As for the new .StorageClient, I will not migrate all of our code for now since both C# and Ruby versions runs pretty well. Maybe later.