The Azure Monitoring Extension for SAP on Windows – Possible Error Codes and Their Solutions

The Azure Enhanced Monitoring Extension for SAP provides configuration information and performance data of the underlying Azure infrastructure and makes it available to the SAP application. It contains built-in self-diagnostics which enables identification of the health and completeness of the infrastructure data required by SAP services and support.

For details on the setup and for possible health checks of the Azure Monitoring infrastructure,  see SAP NetWeaver on Azure Virtual Machines – Deployment Guide  and check SAP Note 1999351 for known issues. For a list of metrics provided in SAP transaction ST06, see SAP Note 2178632.

Having set up the Azure Enhanced Monitoring Extension for SAP, the Windows service AzureEnhancedMonitoring is installed inside the VM and collects all Azure-related data. Afterwards, this data is consumed by SAP Host Agent and by saposcol.exe for further use in the SAP system transaction ST06.

Picture: SAP Azure Monitoring Architecture

SAP Host Agent (e.g. saposcol.exe) and the SAP system consume data of the Azure Enhanced Monitoring service. The Azure Enhanced Enhanced Monitoring service is based on the Azure Monitoring Extension for SAP. The Azure Enhanced  Monitoring Extension for SAP collects data from different sources:

  • some local Windows performance and configuration data
  • configuration data (config.xml file) stored during setup of the VM
  • Azure storage analytics data (used if you use standard storage account for your SAP deployment)
  • Windows Azure Diagnostics (WAD) data (by accessing the Azure storage account tables)

As both, the Azure Enhanced Monitoring service and the SAP monitoring are based on the underlying Azure Enhanced Monitoring Extension, issues in the setup of the extension directly lead to an unhealthy status of the Azure Monitoring service as well as of the SAP monitoring.

Identify the Health Status of the Azure Enhanced Monitoring

To check the health status of the Azure Enhanced Monitoring service, log on to the VM and proceed as follows:

  1. Open the Windows services and select the service ‘AzureEnhancedMonitoring’.
  2. Right-click on the service name and choose ‘Properties’. In the upcoming window, check for the field ‘Path to executable’ (this field points to the installation folder of the Azure Monitoring Extension). This path is similar to
    ‘C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.AzureCATExtensionHandler\<version>\drop’ , where version indicates the current version of the extension.
  3. Open a command prompt and switch to the installation folder indicated above.
    In this folder, you can find the command line tool azperflib.exe which enables testing of the monitoring information provided by the Azure extension and its health status.
  4. Execute ‘azperflib.exe’.Note: Azperflib.exe runs in a loop and updates the collected counters every 60 seconds. In order to finish the loop, you need to close the command window.
  5. Pay attention to the summary metrics ‘Health status’ and ‘Diagnostics’, which are shown at the end of each loop of azperflib.exe:Health status: OK
    Diagnostics: OK

    The Health status is either OK or Failed:
    – If the Health status is ‘OK’, there is nothing more to do.
    – If the Health status is ‘Failed’, the field ‘Diagnostics’ contains further details on the root causes of the health issues.

    Note: These root causes might be related to accessibility issues to WAD or to the storage accounts used, to misconfigurations or changes in configuration of the VM after execution of the setup script.

    Use the Error IDs indicated in the ‘Diagnostics’ metric and follow up with their solutions provided in the table below.

  6. Repeat steps 4 and 5 until azperflib.exe reports the ‘Health status’ ‘OK’.
  7. As the health status of the SAP Monitoring is directly influenced by the health status of the Azure extension, a healthy status of the Azure Enhanced Monitoring is always reflected in a healthy status of the SAP monitoring.

Error Codes of the Azure Extension and Their Interpretation
 
 

Error ID

Error description

Solution

cfg/018

App configuration is missing.

run setup script

cfg/019

No deployment ID in app config.

 contact support

cfg/020

No RoleInstanceId in app config.

contact support

cfg/022

No RoleInstanceId in app config.

contact support

cfg/031

Cannot read Azure configuration.

contact support

cfg/021

App configuration file is missing.

run setup script

cfg/015

No VM size in app config.

run setup script

cfg/016

GlobalMemoryStatusEx counter failed.

contact support

cfg/023

MaxHwFrequency counter failed.

contact support

cfg/024

NIC counters failed.

contact support

cfg/025

Disk mapping counter failed.

contact support

cfg/026

Processor name counter failed.

contact support

cfg/027

Disk mapping counter failed.

contact support

cfg/038

The metric ‘Disk type’ is missing in the extension configuration file config.xml. ‘Disk type’ along with some other counters was introduced in v2.2.0.68 12/16/2015. If you deployed the extension prior to 12/16/2015, it uses the old configuration file. The Azure extension framework automatically upgrades the extension to a newer version, but the config.xml remains unchanged. To update the configuration, download and execute the latest PowerShell setup script.

run setup script

cfg/039

No disk caching.

run setup script

cfg/036

No disk SLA throughput.

run setup script

cfg/037

No disk SLA IOPS.

run setup script

cfg/028

Disk mapping counter failed.

contact support

cfg/029

Last hardware change counter failed.

contact support

cfg/030

NIC counters failed

contact support

cfg/017

Due to sysprep of the VM your Windows SID has changed.

 

You need to redeploy the  Azure monitoring extension for SAP as described in the section 3 Redeploy after sysprep .

redeploy after sysprep

str/007

Access to the storage analytics failed.

As population of storage analytics data on a newly created VM may need up to half an hour,  the error might disappear after some time. If the error still appears, re-run the setup script.

run setup script

str/010

No Storage Analytics counters.

run setup script

str/009

Storage Analytics failed.

run setup script

wad/004

Bad WAD configuration.

run setup script

wad/002

Unexpected WAD format.

contact support

wad/001

No WAD counters found.

run setup script

wad/040

Stale WAD counters found.

contact support

wad/003

Cannot read WAD table. There is no connection to WAD table. There can be several causes of this: 1) outdated configuration 2) no network connection to Azure 3) issues with WAD setup

run setup script

fix internet connection

contact support

prf/011

Perfmon NIC metrics failed.

contact support

prf/012

Perfmon disk metrics failed.

contact support

prf/013

Some prefmon metrics failed.

contact support

prf/014

Perfmon failed to create a counter.

contact support

cfg/035

No metric providers configured.

contact support

str/006

Bad Storage Analytics config.

run setup script

str/032

Storage Analytics metrics failed.

run setup script

cfg/033

One of the metric providers failed.

run setup script

str/034

Provider thread failed.

contact support

Detailed Guidelines on Solutions Provided

1. Run the setup script

Download the latest  version of the SAP specific PowerShell cmdlets.

For more information, read the SAP NetWeaver on Azure Virtual Machines – Deployment Guide

Please (re-)run the setup script.

Note that some counters might need up to 30 minutes for provisioning.

If the errors do not disappear,contact support.

2. Contact support

Unexpected error or there is no a general known solution. Collect the AzureEnhancedMonitoring_service.log   file located in the folder C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.AzureCATExtensionHandler\<version>\drop  and contact support for further assistance.

3. Redeploy after sysprep

 

If you plan to build a generalized sysprep’ed OS image (which can include SAP software), it is recommended that this image does not include the Azure monitoring extension for SAP. You should install the Azure monitoring extension for SAP after the new instance of the generalized OS image has been deployed.

However, if your generalized sysprep’ed OS image already contains the Azure monitoring extension for SAP, you can apply the following workaround to reconfigure the Azure monitoring extension for SAP, on the newly deployed VM instance:

a) On the newly deployed VM instance delete the content of the following folders:

C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.AzureCATExtensionHandler\<Version>\RuntimeSettings
C:\Packages\Plugins\Microsoft.AzureCAT.AzureEnhancedMonitoring.AzureCATExtensionHandler\<Version>\Status

b) Run the SAP specific PowerShell script against the newly deployed VM instance.

4. Fix internet connection

The  Microsoft Azure Virtual Machine running the SAP Monitoring requires access to the Internet. If this Azure VM is part of an Azure Virtual Network or of an on-premises domain, make sure that the relevant proxy settings are set. These settings must also be valid for the LocalSystem account to access the Internet. For more details, check the SAP NetWeaver on Azure Virtual Machines – Deployment Guide.

In addition, if you need to set a fix static IP address for your Azure VM, do not set it manually inside the Azure VM, but set it using Azure PowerShell or Azure portal https://azure.microsoft.com/en-us/blog/static-internal-ip-address-for-virtual-machines/. The fix IP is propagated via the Azure DHCP service.

Manually setting a static IP address inside the Azure VM is not supported, and it might lead to problems with the SAP monitoring extension.