# Microsoft Azure App Service Slot Monitoring - [Microsoft Azure App Service Slot - An Overview](#microsoft-azure-app-service-slot---an-overview) - [Creating a new Azure App Service Slot Monitor](#creating-a-new-azure-app-service-slot-monitor) - [Monitored Parameters](#monitored-parameters) ## Microsoft Azure App Service Slot - An Overview Azure App Service Slot is a deployment feature within Azure App Service that allows teams to deploy applications to a separate slot - a live environment with its own hostname - before swapping to production. Slots support independent configurations, enabling staged deployment workflows, A/B testing, and zero-downtime releases. Applications Manager's [Azure App Service Slot monitoring](https://www.manageengine.com/products/applications_manager/azure-compute-services-monitoring.html#h1) provides visibility into the performance and health of each deployment slot. Track CPU usage, memory consumption, HTTP request traffic, response times, I/O throughput, network bandwidth, garbage collection activity, and configuration details to ensure each slot is operating as expected. ## Creating a new Azure App Service Slot Monitor To learn how to create a new Azure App Service Slot monitor, [click here](https://www.manageengine.com/products/applications_manager/help/microsoft-azure.html#newmonitor). ## Monitored Parameters Navigate to the **Category View** by clicking the **Monitors** tab. Hover over **Child Monitors** under **Microsoft Azure** in the Cloud Apps table, and then select the **App Service Slots** monitor from the displayed tooltip. This action displays the bulk configuration view for Azure App Service Slot in three tabs: - **Availability** tab gives the availability history for the past 24 hours or 30 days. - **Performance** tab gives the health status and events for the past 24 hours or 30 days. - **List view** enables you to perform [bulk admin configurations](https://www.manageengine.com/products/applications_manager/help/bulk-config.html). The Microsoft Azure monitor provides a brief detail of the Azure App Service Slot under the given subscription. The following metrics are monitored in the corresponding tabs: - [Overview](#overview) - [Performance](#performance) - [Requests](#requests) - [OS Statistics](#os-statistics) - [Configuration](#configuration) ### Overview | Parameter | Description | |---|---| | **DEPLOYMENT SLOT STATE** | | | Deployment Slot State | The current state of the Azure App Service Slot. | | **CPU TIME** | | | CPU Time | The total amount of time that the CPU has spent executing code for that app between the poll interval (in s). | | **HEALTH CHECK STATUS** | | | Health Check Status | The average percentage of health check status that indicates the overall health of the app between the poll interval (in %). | | **FUNCTION EXECUTION UNITS** | | | Function Execution Units | The total Function Execution Units between the poll interval (in GB-s). GB-s is a combination of execution time and your memory usage. | | **FUNCTION EXECUTION RATE** | | | Function Execution Rate | The total Function Execution Rate per minute between the poll interval (in executions/min). | | **RESPONSE TIME** | | | Response Time | The average time taken for the app to serve requests between the poll interval (in ms). | | **FILE SYSTEM USAGE** | | | File System Usage | The average amount of storage space that is used by the files that are associated with your app between the poll interval (in MB). | ### Performance | Parameter | Description | |---|---| | **MEMORY WORKING SET** | | | Memory Working Set (Max) | The maximum amount of memory used by the app between the poll interval (in MB). | | Memory Working Set (Avg) | The average amount of memory used by the app between the poll interval (in MB). | | **NETWORK BANDWIDTH USAGE** | | | Incoming Traffic Rate | The total incoming traffic per minute to the Azure App Service Slot between the poll intervals (in MB/min). | | Outgoing Traffic Rate | The total outgoing traffic per minute from the Azure App Service Slot between the poll intervals (in MB/min). | | Incoming Traffic | The average incoming bandwidth consumed by the app between the poll interval (in MB). | | Outgoing Traffic | The average outgoing bandwidth consumed by the app between the poll interval (in MB). | | **IO OPERATIONS** | | | IO Read Operations Rate | The average rate at which the app process is issuing read I/O operations between the poll interval (in MB/s). | | IO Write Operations Rate | The average rate at which the app process is issuing write I/O operations between the poll interval (in MB/s). | | **IO THROUGHPUT** | | | IO Read Throughput | The average rate at which the app process is reading bytes from I/O operations between the poll interval (in MB/s). | | IO Write Throughput | The average rate at which the app process is writing bytes to I/O operations between the poll interval (in MB/s). | ### Requests | Parameter | Description | |---|---| | **REQUESTS** | | | Request Rate | The total number of requests regardless of their resulting HTTP status code received per minute by the app between the poll interval (in requests/min). | | Total Requests | The total number of requests regardless of their resulting HTTP status code received by the app between the poll interval. | | **HTTP STATUS CODES** | | | HTTP 101 - Protocol Switching | The total number of requests resulting in an HTTP 101 status code (Switching protocols) between the poll interval. | | HTTP 2xx - Success | The total number of requests resulting in an HTTP 2xx status code (Successful response) between the poll interval. | | HTTP 3xx - Redirection | The total number of requests resulting in an HTTP 3xx status code (Redirection response) between the poll interval. | | HTTP 4xx - Client Errors | The total number of requests resulting in an HTTP 4xx status code (Client error response) between the poll interval. | | HTTP 5xx - Server Errors | The total number of requests resulting in an HTTP 5xx status code (Server error response) between the poll interval. | | **HTTP 4XX ERRORS** | | | HTTP 401 - Unauthorized | The total number of requests resulting in HTTP 401 (Unauthorized) status code between the poll interval. | | HTTP 403 - Forbidden | The total number of requests resulting in HTTP 403 (Forbidden) status code between the poll interval. | | HTTP 404 - Not Found | The total number of requests resulting in HTTP 404 (Not Found) status code between the poll interval. | | HTTP 406 - Not Acceptable | The total number of requests resulting in HTTP 406 (Not Acceptable) status code between the poll interval. | ### OS Statistics | Parameter | Description | |---|---| | **CONNECTIONS** | | | No of Connections (Avg) | The average number of bound sockets existing in the sandbox (w3wp.exe and its child processes) between the poll interval. A bound socket is created by calling bind()/connect() APIs and remains until said socket is closed with CloseHandle()/closesocket(). | | **REQUESTS IN APPLICATION QUEUE** | | | Requests In Application Queue (Avg) | The average number of requests in the application request queue between the poll interval. | | **PRIVATE BYTES** | | | Private Bytes | The average size of memory that the app process has allocated that can't be shared with other processes between the poll interval (in MB). | | **NO OF THREADS (AVG)** | | | No of Threads (Avg) | The average number of threads that were active in the app process between the poll interval. | | **IO OTHER THROUGHPUT** | | | IO Other Throughput | The average rate at which the app process is issuing bytes to I/O operations that don't involve data, such as control operations between the poll interval (in MB/s). | | **IO OTHER OPERATIONS** | | | IO Other Operations Rate | The average rate at which the app process is issuing I/O operations that aren't read or write operations between the poll interval (in MB/s). | | **HANDLES** | | | Handles | The average number of handles that are opened by the app process between the poll interval. | | **CURRENT ASSEMBLIES** | | | Current Assemblies | The average number of assemblies loaded across all AppDomains in this application between the poll interval. | | **GARBAGE COLLECTIONS** | | | Gen 0 GCs | The total number of times the generation 0 objects are garbage collected since the start of the app process between the poll interval. Higher generation GCs include all lower generation GCs. | | Gen 1 GCs | The total number of times the generation 1 objects are garbage collected since the start of the app process between the poll interval. Higher generation GCs include all lower generation GCs. | | Gen 2 GCs | The total number of times the generation 2 objects are garbage collected since the start of the app process between the poll interval. | | **APP DOMAINS** | | | App Domains Loaded (Avg) | The average number of AppDomains loaded in this application between the poll interval. | | App Domains Unloaded (Avg) | The average number of AppDomains unloaded since the start of the application between the poll interval. | ### Configuration | Parameter | Description | |---|---| | **CONFIGURATION** | | | Resource Group Name | The name of the Azure resource group that the App Service Slot belongs to. | | Location | The Azure region where the App Service Slot is deployed. | | App Enabled | Indicates whether the App Service Slot is enabled or disabled. | | Accept Only HTTPs Requests | Indicates whether the App Service Slot is configured to accept only HTTPs requests. | | Default Host Name | The default hostname associated with the App Service Slot. | | Last Modified Time | The date and time when the App Service Slot configuration was last modified. |