Similar to https://social.technet.microsoft.com/Forums/systemcenter/en-US/487234f4-9748-4f49-ab7b-ce523da4c500/publish-cloud-service-fails-from-visual-studio-2013-update-4-published-asset-entry-for-image but since the given answer provides no solution and I found more details, I felt that opening this new question providing more details was necessary.
I have an existing Azure service with two web roles (service and worker) published first in May 2012. Recently I tried to update from SDK2.2 to SDK2.5 and Visual Studio 2013 Update 2 to Update 4. The main reason behind this was to move from log4net to WAD and in doing so, of course directly move to the new diagnostics version. So before publishing I enabled WAD diagnostics logging in the properties of both roles.
Trying to publish from Visual Studio to the exisiting Azure Service fails, VS output shows the following lines:
11:45:24 - Checking for Remote Desktop certificate...
11:45:25 - Applying Diagnostics extension.
11:45:45 - Published Asset Entry for Image Microsoft.Azure.Diagnostics_PaaSDiagnostics_europeall_manifest.xml not found.
What's working 1: For testing purposes, I have created a new Azure service in the Azure portal.
Publishing the same solution from the same development environment to this new service is possible without problems - the service with WAD diagnostics logging is working fine. Unfortunately this is no solution to my production service, with
DNS alias and SSL certificates bound to the existing Azure service.
What's working 2: Publishing the solution to the existing Azure service WITHOUT diagnositics enabled works.
Problem with that: Trying to activate WAD diagnostics logging after publishing using the Azure cmdlets also fails WiTH a similar error message. Following http://blogs.msdn.com/b/kwill/archive/2014/12/02/windows-azure-diagnostics-upgrading-from-azure-sdk-2-4-to-azure-sdk-2-5.aspx I tried:
PS C:\> Set-AzureServiceDiagnosticsExtension -StorageContext $storageContext -DiagnosticsConfigurationPath $public_config -ServiceName $service_name -Slot 'Staging' -Role $role_name
VERBOSE: Setting PaaSDiagnostics configuration for MyWebRole.
Set-AzureServiceDiagnosticsExtension : BadRequest : Published Asset Entry for Image
Microsoft.Azure.Diagnostics_PaaSDiagnostics_europeall_manifest.xml not found.
At line:1 char:1
+ Set-AzureServiceDiagnosticsExtension -StorageContext $storageContext -Diagnostic ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Set-AzureServiceDiagnosticsExtension], CloudException
+ FullyQualifiedErrorId : Microsoft.WindowsAzure.CloudException,Microsoft.WindowsAzure.Commands.ServiceManagement.
Extensions.SetAzureServiceDiagnosticsExtensionCommand
The problem seems to be related to those service configuration parts in the cloud which are not replaced by a new deployment, so I compared both services using Azure cmdlet Get-AzureService.
I found that the new service has properties which the old one is missing:
ExtendedProperties : {[ResourceGroup, myazureservice], [ResourceLocation, North Europe]}
Is this a hint? Reinstalling or repairing Visual Studio is not the answer to this problem!!!
What's the meaning of "Published Asset Entry for Image Microsoft.Azure.Diagnostics_PaaSDiagnostics_europeall_manifest.xml"?
[Perhaps MS will publish a newer version of its Azure cmdlets, but that's not today's story]
So what are possible reasons or fixes for this behaviour? Going back to log4net is not my favorite. Even worse, while there are alternative logging solution, I currently have no performance counter monitoring in the Azure portal (Remote desktop and perfmon is NO solution). Is there any alternative to going back to SDK2.4?
Best regards,
Andreas
- Edited by Andreas Knöpfel Thursday, January 22, 2015 4:41 PM