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 Azure documentation.
Configuration
You can disable the Azure App Service sensor and filter the Azure App Service sensor by using tags and resource groups. To configure the Azure App Service sensor, edit the agent configuration file <agentinstall_dir>/etc/instana/configuration.yaml
as follows:
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 and separated by a comma. Tags must be provided as a key-value pair, which is separated by :
. You can also define which tags and resource groups you want to include in discovery or
exclude from discovery. If you define tags or resource groups in both lists (include
and exclude
list), the exclude
list has higher priority. If you don't need to use service filtering, do not define
values to enable filtering.
To include services by tags into discovery, use the 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 the 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)
You can enable the discovery filter on the global level for all Azure services. You can also define filters for a specific Azure service, and then these filters will override global filters for this Azure service. For more information about global filters, see 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 can also add the Instana Tracing AppService extension.
After the Instana Tracing AppService extension is installed, you need to configure the extension before it can be used. To do so, go to the Advanced Tools menu, and click Go.
You are presented with the Kudu Tool. Click Site Extensions, and then you can see the Instana Tracing AppService extension box, which contains a play button.
Click the play button. In the Instana Tracing for AppServices page, configure the Instana Tracing AppService extension.
Complete the following configurations:
-
Select whether you want to enable the Instana Tracing feature by using the Enable Tracing toggle.
-
Select whether your AppServices application is 32 bit or 64 bit by using the Enable 64 bit toggle. For more information, see Bitness of the application.
-
In the Agent Key field, enter the license key of your Instana host agent.
-
In the Endpoint URL field, enter the endpoint URL for serverless monitoring.
-
In the Log-Level field, enter the log level that you want to use. Values are
NONE
,DEBUG
,INFO
,WARN
, andERROR
.The log information is generated in the root folder of the AppService application.
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 are set correctly in the Instana Tracing for AppServices page. For more information, see Endpoint URL for serverless monitoring.
-
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. -
Get the Instana debugging logs from the Kudu tool. In the Kudu Tool, go to Debug Console, and then go to the
C:\home\site\wwwroot>
folder. There, you can find two type of log files:
- CLR debug logs:
1.log_YYYY-MM-DD-HH_MM_SS
- Instrumentation logs:
YYYY-MM-DD_HH_MM_SSPID