Azure API Management Service

Learn about the other Azure service support on our Azure docs.

Sensor (Data Collection)

Tracked Configuration

API Management Service Details Description
Name The name of the API Management service
Resource Group The resource group of the API Management service
Location The region where the API Management instance is located
Subscription Id The subscription ID of the API Management service
Publisher Name Publisher name
Provisioning State API Management service provisioning state
Gateway URL Gateway URL of the API Management service
Portal URL Publisher portal endpoint Url of the API Management service
SKU SKU (Pricing tier) of the API Management

Service Metrics

Service Metric Description
Capacity
Capacity Utilization metric for API Management service
Gateway Requests
Total Requests Number of gateway requests
Successful Requests Number of successful gateway requests
Unauthorized Requests Number of unauthorized gateway requests
Failed Requests Number of failures in gateway requests
Other Requests Number of other gateway requests
Duration (Latency) Overall duration of gateway requests in milliseconds
Event Hub Events
Successful Events Number of successful Event Hub events
TotalFailed Events Number of failed Event Hub events
Rejected Events Number of rejected Event Hub events (wrong configuration or unauthorized)
Throttled Events Number of throttled Event Hub events
Timedout Events Number of timed out Event Hub events
Dropped Events Number of events skipped because of queue size limit reached
Total Bytes Sent Total size of Event Hub events in bytes

API and Operation Metric

Metric Description
Bandwidth
Bandwidth Bandwidth consumed
Call Count
Blocked Calls Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorize and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests
Failed Calls Number of calls failed due to proxy or backend errors. This includes calls returning HttpStatusCode.BadRequest(400) and any Code between HttpStatusCode.InternalServerError (500) and 600
Other Calls Number of other calls
Succesful Calls Number of succesful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect
Total Calls Total number of calls
Cache Hits/Misses
Cache Hits Number of times when content was served from cache policy
Cache Misses Number of times content was fetched from backend
API Response Time
Average API Response Time Average time it took to process request
Maximum API Response Time Maximum time it took to process request
Minimum API Response Time Minimum time it took to process request
Service Response Time
Average Service Response Time Average time it took to process request on backend
Maximum Service Response Time Maximum time it took to process request on backend
Minimum Service Response Time Minimum time it took to process request on backend

Health Checks

The Azure API Management sensor will conduct custom health checks and execute them every minute. If the checks fail for at least one minute, an issue will be raised to inform the user.

Health Description
Capacity Azure API Management is using more than 90% of available capacity

Configuration

Azure API Management sensor can be disabled and it can be filtered by tags and resource groups. It is possible to configure Azure API Management sensor via agent configuration in <agentinstall_dir>/etc/instana/configuration.yaml by:

com.instana.plugin.azure.apimanagement:
    # Valid values: true, false
    enabled: false # enabled (true) by default
    # Comma separated list of tags in key:value format
    include_tags: 
    # Comma separated list of tags in key:value format
    exclude_tags: 
    # Comma separated list of resource groups
    include_resource_groups: 
    # Comma separated list of resource groups
    exclude_resource_groups: 

Azure API Management sensor can be disabled. To disable monitoring of the Azure API Management services use the folowing configuration:

com.instana.plugin.azure.apimanagement:
    enabled: false

Multiple tags and resource groups can be defined, separated by a comma. Tags should be provided as a key-value pair separated by :. In order to make configuration easier, it is possible to define which tags and resource groups you want to include in discovery or exclude from discovery. In case of defining tag or resource group in both lists (include and exclude), exclude list has higher priority. If there is no need for services filtering, the configuration should not be defined. It’s not mandatory to define all values in order to enable filtering.

To include services by tags into discovery use folowing configuration:

com.instana.plugin.azure.apimanagement:
    include_tags: # Comma separated list of tags in key:value format (e.g. env:prod,env:staging)

To exclude services by tags from discovery use folowing configuration:

com.instana.plugin.azure.apimanagement:
    exclude_tags: # Comma separated list of tags in key:value format (e.g. env:dev,env:test)

To include services by resource groups into discovery use folowing configuration:

com.instana.plugin.azure.apimanagement:
    include_resource_groups: # Comma separated list of resource groups (e.g. rg_prod,rg_staging)

To exclude services by resource groups from discovery use folowing configuration:

com.instana.plugin.azure.apimanagement:
    exclude_resource_groups: # Comma separated list of resource groups (e.g. rg_dev,rg_test)

Discovery filtering can be configured on the global level for all Azure services. In case of defining filters for Azure API Management service, global filters will be overridden. For more details about global Azure service discovery filtering visit Azure Configuration.

Note

Metrics are pulled every minute, which is the resolution Azure provides for monitoring of these services.