0

Azure CentOS 7.2 VM from OpenLogic deployed with the Classic Model.

Azure Linux Agent Version: WALinuxAgent-2.0.18

The VM is working fine, but I don't know the source of this error I'm getting in waagent log and what does it mean.

On starting waagent the /var/log/waagent.log reports:

2016/04/24 08:29:42 Finished processing ExtensionsConfig.xml
2016/04/24 08:29:42 ERROR:Error parsing ExtensionsConfig.  Unable to send status reports
2016/04/24 08:29:42 ERROR:Failed to report handler status

Then every 25 seconds the log gets:

2016/04/24 07:44:24 ERROR:Error parsing ExtensionsConfig.  Unable to send status reports
2016/04/24 07:44:24 ERROR:Failed to report handler status

In the waagent code this errors come from:

# Process our extensions.
if goalState.ExtensionsConfig == None and goalState.ExtensionsConfigXml != None :
    reportHandlerStatusCount = 0 #Reset count when new goal state comes
    goalState.ExtensionsConfig = ExtensionsConfig().Parse(goalState.ExtensionsConfigXml)

# report the status/heartbeat results of extension processing
if goalState.ExtensionsConfig != None :
    ret = goalState.ExtensionsConfig.ReportHandlerStatus()
    if ret != 0:
        Error("Failed to report handler status")
    elif reportHandlerStatusCount % 1000 == 0:
        #Agent report handler status every 25 seconds. Reduce the log entries by adding a count
        Log("Successfully reported handler status")

Then in the method ReportHAndlerStatus the error comes from:

    #agent state
    if provisioned == False:
        if provisionError == None :
            agent_state='Provisioning'
            agent_msg='Guest Agent is starting.'
        else:
            agent_state='Provisioning Error.'
            agent_msg=provisionError
    else:
        agent_state='Ready'
        agent_msg='GuestAgent is running and accepting new configurations.'

    status='{"version":"1.0","timestampUTC":"'+tstamp+'","aggregateStatus":{"guestAgentStatus":{"version":"'+GuestAgentVersion+'","status":"'+agent_state+'","formattedMessage":{"lang":"en-US","message":"'+agent_msg+'"}},"handlerAggregateStatus":['+statuses+']}}'
    try:
        uri=GetNodeTextData(self.Extensions[0].getElementsByTagName("StatusUploadBlob")[0]).replace('&','&')
    except:
        Error('Error parsing ExtensionsConfig.  Unable to send status reports')
        return -1

1 Answer 1

1

Did you install the provisioning agent in this VM? If you simply install the walinuxagent package without enabling the provisioning agent (via portal or CLI) then the walinuxagent's configuration will not include the location for uploading status blobs. Reference the 'installation' remarks here. In short (via powershell):

$vm = Get-AzureVM -ServiceName 'MyServiceName' -Name 'MyVMName'
$vm.GetInstance().ProvisionGuestAgent = $true
$vm | Update-AzureVM
1
  • Thanks, in the end I switched to Ubuntu VM and all my problems with the agent did finish. Jun 1, 2016 at 20:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .