When you deploy your Windows Azure SDK 1.2 or 1.3 based application you might experience your application status is still stuck in "Starting" or cycling between "busy and starting".

 

If you have decided to use Windows Azure SDK 1.3 then you can confiugre and use RDP Connection to access your Windows Azure VM through "Publish" dialog box on VS2010. Once you are into your Windows Azure VM you can investigate the root cause of your problem. If you look at application section of event log, it is possible that you may see the following exception:


Log Name:      Application
Source:        ASP.NET 2.0.50727.0
Date:          12/31/2010 9:09:43 PM
Event ID:      1334
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      RD00155D327C90
Description:
An unhandled exception occurred and the process was terminated.

Application ID: /LM/W3SVC/1/ROOT

Process ID: 2928

Exception: System.FormatException

Message: No valid combination of account information found.

StackTrace:    at Microsoft.WindowsAzure.CloudStorageAccount.<Parse>b__0(String err)
   at Microsoft.WindowsAzure.CloudStorageAccount.TryParse(String s, CloudStorageAccount& accountInformation, Action`1 error)
   at Microsoft.WindowsAzure.CloudStorageAccount.Parse(String value)
   at Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitor.Start(String diagnosticsStorageAccountConfigurationSettingName, DiagnosticMonitorConfiguration initialConfiguration)
   at Srs.DmsAzure.Service.WebRole.OnStart() in C:\srs_source\SRS DMS\DmsAzure\Main\Source\DmsAzure.Service\WebRole.cs:line 20
   at Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.InitializeRoleInternal(RoleType roleTypeEnum)
   at Microsoft.WindowsAzure.ServiceRuntime.Implementation.Loader.RoleRuntimeBridge.<InitializeRole>b__0()
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()


It is possible that your are getting this error because of DevelopmentStorage=true in your service definition file and you have some code in your application which is trying to access Windows Azure Storage.

When you run your application on Windows Azure, you must not use DevelopmentStorage=true however it will not cause major problem only if your code is not accessing Windows Azure Storage. If your code will access Windows Azure Storage and the string is set as "DevelopmentStorage=true" then your application will cause problem. So the problem will occur depend if you will access Windows Azure storage or not. That's why you will see a warning when uploading the application package.


To solve such problem you do two things:

1.    Set DevelopmentStorage=false to be safe if not your code is not accessing Windows Azure Storage
2.    Replace "DevelopmentStorage=true" with ”Conneciton_String_which_includes_your_storage_credentials_etc” if you are actively using Windows Azure Storage otherwise it will cause error.

If you study above call stack you will see that the code actually trying to access the Cloud Storage account so you will need to pass the correct Connection string so you could use Windows Azure Storage. After replacing the "DevelopmentStorgage=true" with the correct Connection String this particular problem should be resolved.