Dostupná řešení
GCP Application Load Balancer by HTTP
Overview
This template is designed to monitor GCP Application Load Balancing using Zabbix.
Requirements
Zabbix version: 8.0 and higher.
Tested versions
This template has been tested on:
- GCP Application Load Balancing
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
This template will be automatically connected to discovered entities with all their required parameters pre-defined.
Macros used
| Name | Description | Default |
|---|---|---|
| {$GCP.PROJECT.ID} | GCP project ID. |
|
| {$GCP.DATA.TIMEOUT} | Response timeout for API. |
15s |
| {$GCP.TIME.WINDOW} | Time interval for data requests. Supported usage types: - Default update interval for most items. - Minimal time window for data requested in Monitoring Query Language REST API request. |
1h |
| {$GCP.PROXY} | HTTP proxy. If this macro is empty, then no proxy is used. |
|
| {$GCP.APP.LB.TYPE.PREFIX} | Metric prefix for load balancer type. Possible values: - - - |
|
| {$GCP.APP.LB.P95.LATENCY.MAX} | Sets the maximum latency threshold for alerts. |
1000 |
| {$GCP.APP.LB.NODATA.TIME} | Time threshold for no data trigger. |
30m |
| {$GCP.APP.LB.SUCCESS.RATE.WARN} | Warning severity threshold for request success rate (%). |
95 |
| {$GCP.APP.LB.SUCCESS.RATE.AVERAGE} | Average severity threshold for request success rate (%). |
90 |
| {$GCP.APP.LB.SUCCESS.RATE.HIGH} | High severity threshold for request success rate (%). |
75 |
| {$GCP.APP.LB.RESPONSE.CODE.MATCHES} | Filter to include HTTP response codes for discovery. |
.* |
| {$GCP.APP.LB.RESPONSE.CODE.NOT_MATCHES} | Filter to exclude HTTP response codes for discovery. |
CHANGE_IF_NEEDED |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Request bytes count | Request bytes count for the application load balancer. |
HTTP agent | gcp.app.lb.request.bytes Preprocessing
|
| Response bytes count | Response bytes count for the application load balancer. |
HTTP agent | gcp.app.lb.response.bytes Preprocessing
|
| Average latency | Average latencies for the application load balancer. |
HTTP agent | gcp.app.lb.average.latency Preprocessing
|
| P95 latency | P95 latencies for the application load balancer. |
HTTP agent | gcp.app.lb.p95.latency Preprocessing
|
| Request success rate | Request success rate calculated based on the ratio of successful requests (HTTP response codes 2xx and 3xx) to total requests. |
HTTP agent | gcp.app.lb.success.rate Preprocessing
|
| Total average request rate | Total average request rate for the application load balancer. |
HTTP agent | gcp.app.lb.request.rate Preprocessing
|
| Request rates by response code | Request rates by response code for the application load balancer. |
HTTP agent | gcp.app.lb.requests.count Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| GCP Application Load Balancer: High P95 latency | The 95th percentile latency is above {$GCP.APP.LB.P95.LATENCY.MAX}ms (avg over 5 minutes). |
avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.p95.latency,5m) > {$GCP.APP.LB.P95.LATENCY.MAX} |
Average | Manual close: Yes |
| GCP Application Load Balancer: Request success rate is below warning threshold | Request success rate has dropped below {$GCP.APP.LB.SUCCESS.RATE.WARN}%. |
avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.success.rate,5m)<{$GCP.APP.LB.SUCCESS.RATE.WARN} and avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.request.rate,5m)>0 |
Warning | Manual close: Yes |
| GCP Application Load Balancer: Request success rate is critically low | Request success rate has dropped below {$GCP.APP.LB.SUCCESS.RATE.AVERAGE}%. |
avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.success.rate,5m)<{$GCP.APP.LB.SUCCESS.RATE.AVERAGE} and avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.request.rate,5m)>1 |
Average | Manual close: Yes |
| GCP Application Load Balancer: Request success rate indicates major outage | Request success rate has dropped below {$GCP.APP.LB.SUCCESS.RATE.HIGH}%. |
avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.success.rate,5m)<{$GCP.APP.LB.SUCCESS.RATE.HIGH} and avg(/GCP Application Load Balancer by HTTP/gcp.app.lb.request.rate,5m)>5 |
High | Manual close: Yes |
| GCP Application Load Balancer: No request rate data | No request rate data received for |
nodata(/GCP Application Load Balancer by HTTP/gcp.app.lb.requests.count,{$GCP.APP.LB.NODATA.TIME})=1 |
Warning | Manual close: Yes |
LLD rule Response code discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Response code discovery | Discovery of HTTP response codes for the application load balancer. |
Dependent item | gcp.app.lb.request.count.discovery Preprocessing
|
Item prototypes for Response code discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Requests rate: HTTP {#RESPONSE_CODE} | Request rate for HTTP |
Dependent item | gcp.app.lb.request.count[{#RESPONSE_CODE}] Preprocessing
|