Monitoring Azure App-Services
The Azure App-Services sensor is automatically deployed and installed after you install the Instana agent.
Restriction: Azure App-Services support only Windows workload.
Note: Learn about the other supported Azure services with our Azure documentation.
Configuration
Azure App Service sensor can be disabled and it can be filtered by tags and resource groups. It is possible to configure Azure App Service sensor via agent configuration in <agentinstall_dir>/etc/instana/configuration.yaml
by:
com.instana.plugin.azure.appservice:
# 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 App Service sensor can be disabled. To disable monitoring of the Azure App Services use the following configuration:
com.instana.plugin.azure.appservice:
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 following configuration:
com.instana.plugin.azure.appservice:
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 following configuration:
com.instana.plugin.azure.appservice:
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 following configuration:
com.instana.plugin.azure.appservice:
include_resource_groups: # Comma separated list of resource groups (e.g. rg_prod,rg_staging)
To exclude services by resource groups from discovery use following configuration:
com.instana.plugin.azure.appservice:
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 App Service, global filters will be overridden. For more details about global Azure service discovery filtering visit Azure Configuration.
Metrics collection
To view the metrics, select Infrastructure in the sidebar of the Instana User interface, click a specific monitored host, and then you can see a host dashboard with all the collected metrics and monitored processes.
Metrics for App-Services are pulled every minute, which is the resolution Azure provides for monitoring of these services.
Configuration data
App-Service Details | Description |
---|---|
Name | The name of the app-service. |
Resource Group | The resource-group the app-service belongs to |
Location | The region where the app-service is located |
Subscription Id | The subscription ID of the app-service |
State | The current state of the app-service |
Performance metrics
App-Service Metric | Description |
---|---|
Response-Times and Requests | |
Response Time | The response-time for requests to your app-service |
Total Requests | Total number of requests within a minute |
Queued Requests | Number of requests that have been queued in a minute |
Http Status-Codes | |
Http 2xx Responses | Number of http-responses with an http-status between 200 and 299 |
Http 4xx Responses | Number of http-responses with an http-status between 400 and 499 |
Http 5xx Responses | Number of http-responses with an http-status between 500 and 599 |
Network traffic Metrics | |
Bytes sent | Number of bytes sent |
Bytes received | Number of bytes received by the app-service |
Garbage Collection Metrics | |
Generation 0 | Number of GC-runs on Generation 0 within a minute |
Generation 1 | Number of GC-runs on Generation 1 within a minute |
Generation 2 | Number of GC-runs on Generation 2 within a minute |
Instrumentation
Currently, only instrumentation of AppService for .Net Framework 4.5.1+ workloads is supported. To make the instrumentation work, an Instana agent needs to be running where you want to monitor AppServices. For more information about how to configure Instana agent to monitor Azure, see Monitoring and Instrumenting Microsoft Azure.
Go to Azure Portal, and locate the AppService that you want to instrument. After you open the AppService in Azure Portal, click the Extensions link from the navigation menu.
In the Extensions page, you can add a new extension, check the extensions that are installed, and update or remove an extension. You must add the Instana Tracing AppService extension.
After the Instana Tracing AppService extension is installed, open the extension, and then you can see the details of the extension:
Click Browse. It leads you to a page where you can configure the instrumentation:
After you enter all the information there, click Update Config. Then, the information is saved within the context of the AppService.
Now, the only thing that needs to be done is to restart the AppService. You can do that from the Dashboard of the AppService. When you run your application, an Instana rewriter is attached to the application, and you need to start collecting traces.
To see the traces, go back to Instana UI. You can open the dashboard of your AppService entity, and from there click Upstream / Downstream. Then, you can see traces that are collected for this entity.
Troubleshooting
Bitness of the application
When you configure the Instana instrumentation by using the installed extension in Azure, you can see an Enable 64 bit checkbox. This might be confusing at first, but, depending on the the number of bit of your application, you need to attach the appropriate rewriter. The thing is, you don't know at that point what is the number of bit of your application. By default, when you deploy the application through Visual Studio to Azure AppService, the application is installed in 32-bit mode. This can be changed in the configuration of the AppService by going to Configuration > General Settings:
If you are using a 64-bit mode, select 64 Bit in the Instana Tracing AppService Extension configuration. Otherwise, you will fail to attach and collect traces.
Tracing doesn't work
Before you contact with Instana support team, complete the following steps:
-
Check that the previously mentioned number of bit is correctly configured both in the AppService configuration and in the Instana Tracing AppService extension configuration.
-
Make sure that the Agent Key and Endpoint URL in the Instana Tracing AppService extension is set correctly. You can get the information by using the Instana UI or by checking the documentation.
-
Check for errors in Event logs by opening Diagnose and solve problems > Application Event Logs.
-
Open the Kudu Process Explorer by clicking Advanced Tools from the navigation menu, and then check whether the
w3wp
process is attached with the Instana.Profiler_x64.dll module.