Azure Application Gateway is a web traffic load balancer that enables you to manage traffic to your web applications. Traditional load balancers operate at the transport layer (OSI layer 4 - TCP and UDP) and route traffic based on a source IP address and port, to a destination IP address and port.

Application Gateway

With Application Gateway, you can make routing decisions based on more attributes of an HTTP request, such as URI path or host headers. For example, you can route traffic based on the incoming URL.

  • If /images are in the incoming URL, you can route traffic to a specific set of servers (known as a pool) configured for images.
  • If /video is in the URL, that traffic is routed to another pool optimized for videos.
Application Gateway

This type of routing is known as application layer (OSI layer 7) load balancing. Azure Application Gateway can do URL-based routing and more.

Setup

To set up the Azure integration and discover the Application Gateway resources, do the following:

  1. Create an Azure Integration if not available in your installed integrations. For more information on how to install the Azure Integration, refer to Install Azure integration.

  2. Create a discovery profile.

  3. Select Azure Application Gateway under the Filter Criteria on the Edit Discovery Profile page.

  4. Save the discovery profile to make it available in the list of Discovery Profiles.

  5. Scan to discover the resources at any time independent of the predefined schedule.

  6. Once the scan is completed, you can view the Azure Application Gateway resources under Infrastructure > Resources > Microsoft Azure category.

  7. Create a template with collector type Azure and applicable for Application Gateway. See Create a Template for more information on how to create a template.

  8. Refer to Assign a Template on how to assign a template to a resource.

  9. Click the Metrics tab to view the monitoring data of Azure Application Gateway.

Event support

OpsRamp supports Azure events for Azure Application Gateway. Configure Azure Events in OpsRamp Azure integration discovery profile. See Process Azure Events for more information on how to configure Azure events.

Supported metrics

OpsRamp MetricAzure MetricMetric Display NameUnitAggregation TypeDescription
azure_network_applicationgateways_ApplicationGatewayTotalTimeApplicationGatewayTotalTimeApplication Gateway Total TimeMilliSecondsAverageTime that it takes for a request to be processed and its response to be sent. This is the interval from the time when Application Gateway receives the first byte of an HTTP request to the time when the response send operation finishes. It's important to note that this usually includes the Application Gateway processing time, time that the request and response packets are traveling over the network and the time the backend server took to respond
azure_network_applicationgateways_AvgRequestCountPerHealthyHostAvgRequestCountPerHealthyHostRequests per minute per Healthy HostCountAverageAverage request count per minute per healthy backend host in a pool
azure_network_applicationgateways_AzwafBotProtectionAzwafBotProtectionWAF Bot Protection MatchesCountTotalMatched Bot Rules
azure_network_applicationgateways_AzwafCustomRuleAzwafCustomRuleWAF Custom Rule MatchesCountTotalMatched Custom Rules
azure_network_applicationgateways_AzWAFJSChallengeRequestCountAzWAFJSChallengeRequestCountWAF JS Challenge Request CountCountTotalTotal number of JS challenge requests evaluated by WAF
azure_network_applicationgateways_AzwafPenaltyBoxHitsAzwafPenaltyBoxHitsWAF Penalty Box HitsCountAverageDenotes number of times IP was added or updated in the penalty box with time and context
azure_network_applicationgateways_AzwafPenaltyBoxSizeAzwafPenaltyBoxSizeWAF Penalty Box SizeCountAverageDenotes number of IPs in the penalty box at a given time
azure_network_applicationgateways_AzwafSecRuleAzwafSecRuleWAF Managed Rule MatchesCountTotalMatched Managed Rules
azure_network_applicationgateways_AzwafTotalRequestsAzwafTotalRequestsWAF Total RequestsCountTotalTotal number of requests evaluated by WAF
azure_network_applicationgateways_BackendConnectTimeBackendConnectTimeBackend Connect TimeMilliSecondsAverageTime spent establishing a connection with a backend server
azure_network_applicationgateways_BackendFirstByteResponseTimeBackendFirstByteResponseTimeBackend First Byte Response TimeMilliSecondsAverageTime interval between start of establishing a connection to backend server and receiving the first byte of the response header, approximating processing time of backend server
azure_network_applicationgateways_BackendLastByteResponseTimeBackendLastByteResponseTimeBackend Last Byte Response TimeMilliSecondsAverageTime interval between start of establishing a connection to backend server and receiving the last byte of the response body
azure_network_applicationgateways_BackendResponseStatusBackendResponseStatusBackend Response StatusCountTotalThe number of HTTP response codes generated by the backend members. This does not include any response codes generated by the Application Gateway
azure_network_applicationgateways_BlockedCountBlockedCountWeb Application Firewall Blocked Requests Rule DistributionCountTotalWeb Application Firewall blocked requests rule distribution
azure_network_applicationgateways_BytesReceivedBytesReceivedBytes ReceivedBytesTotalThe total number of bytes received by the Application Gateway from the clients
azure_network_applicationgateways_BytesSentBytesSentBytes SentBytesTotalThe total number of bytes sent by the Application Gateway to the clients
azure_network_applicationgateways_CapacityUnitsCapacityUnitsCurrent Capacity UnitsCountAverageCapacity Units consumed
azure_network_applicationgateways_ClientRttClientRttClient RTTMilliSecondsAverageRound trip time between clients and Application Gateway. This metric indicates how long it takes to establish connections and return acknowledgements
azure_network_applicationgateways_ComputeUnitsComputeUnitsCurrent Compute UnitsCountAverageCompute Units consumed
azure_network_applicationgateways_CpuUtilizationCpuUtilizationCPU UtilizationPercentAverageCurrent CPU utilization of the Application Gateway
azure_network_applicationgateways_CurrentConnectionsCurrentConnectionsCurrent ConnectionsCountTotalCount of current connections established with Application Gateway
azure_network_applicationgateways_EstimatedBilledCapacityUnitsEstimatedBilledCapacityUnitsEstimated Billed Capacity UnitsCountAverageEstimated capacity units that will be charged
azure_network_applicationgateways_FailedRequestsFailedRequestsFailed RequestsCountTotalCount of failed requests that Application Gateway has served
azure_network_applicationgateways_FixedBillableCapacityUnitsFixedBillableCapacityUnitsFixed Billable Capacity UnitsCountAverageMinimum capacity units that will be charged
azure_network_applicationgateways_HealthyHostCountHealthyHostCountHealthy Host CountCountAverageNumber of healthy backend hosts
azure_network_applicationgateways_MatchedCountMatchedCountWeb Application Firewall Total Rule DistributionCountTotalWeb Application Firewall Total Rule Distribution for the incoming traffic
azure_network_applicationgateways_NewConnectionsPerSecondNewConnectionsPerSecondNew connections per secondCountPerSecondAverageNew connections per second established with Application Gateway
azure_network_applicationgateways_ResponseStatusResponseStatusResponse StatusCountTotalHttp response status returned by Application Gateway
azure_network_applicationgateways_ThroughputThroughputThroughputBytesPerSecondAverageNumber of bytes per second the Application Gateway has served
azure_network_applicationgateways_TlsProtocolTlsProtocolClient TLS ProtocolCountTotalThe number of TLS and non-TLS requests initiated by the client that established connection with the Application Gateway. To view TLS protocol distribution, filter by the dimension TLS Protocol
azure_network_applicationgateways_TotalRequestsTotalRequestsTotal RequestsCountTotalCount of successful requests that Application Gateway has served
azure_network_applicationgateways_UnhealthyHostCountUnhealthyHostCountUnhealthy Host CountCountAverageNumber of unhealthy backend hosts
azure_network_applicationgateways_WebSocketActiveConnectionsWebSocketActiveConnectionsWebSocket Active ConnectionsCountTotalCount of WebSocket Active Connections established with Application Gateway
azure_network_applicationgateways_WebsocketSpecificCloseStatusCodeWebsocketSpecificCloseStatusCodeWebSocket Specific Close Status CodeCountTotalCount of WebSocket Specific Close Status Code

External reference

Azure Application Gateway