Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/gcp?at=release/7.0
GCP by HTTP
Overview
This template is designed to monitor Google Cloud Platform (hereinafter - GCP) by Zabbix. It works without any external scripts and uses the script item. The template currently supports the discovery of Compute Engine/Cloud SQL instances and Compute Engine project quota metrics.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- Google Cloud Platform
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
- Enable the
Stackdriver Monitoring API
for the GCP project you wish to monitor.
Refer to the vendor documentation.
- Create a service account in Google Cloud console for the project you have to monitor.
Refer to the vendor documentation.
- Create and download the service account key in JSON format.
Refer to the vendor documentation.
- If you want to monitor Cloud SQL services - don't forget to activate the Cloud SQL Admin API.
Refer to the vendor documentation for the details.
- Copy the
project_id
,private_key_id
,private_key
,client_email
from the JSON key file and add them to their corresponding macros{$GCP.PROJECT.ID}
,{$GCP.PRIVATE.KEY.ID}
,{$GCP.PRIVATE.KEY}
,{$GCP.CLIENT.EMAIL}
on the template/host.
Additional information:
Make sure that you're creating the service account using the credentials with the `Project Owner/Project IAM Admin/service account Admin` role.
The service account JSON key file can only be downloaded once: regenerate it if the previous key has been lost.
The service account should have `Project Viewer` permissions or granular permissions for the GCP Compute Engine API/GCP Cloud SQL.
You can copy and paste private_key string data from the Service Account JSON key file as is or replace the new line metasymbol (\n) with an actual new line.
Please, refer to the vendor documentation about the service accounts management.
IMPORTANT!!!
Secret authorization token is defined as a plain text in host prototype settings by default due to Zabbix templates export/import limits: therefore, it is highly recommended to change the user macro `{$GCP.AUTH.TOKEN}` value type to `SECRET` for all host prototypes after the template `GCP by HTTP` import.
All the instances/quotas/metrics discovered are related to a particular GCP project.
To monitor several GCP projects - create their corresponding service accounts/Zabbix hosts.
GCP Access Token is available for 1 hour (3600 seconds) after the generation request.
To avoid a GCP token inconsistency between Zabbix database and Zabbix server configuration cache, don't set Zabbix server configuration parameter CacheUpdateFrequency to a value over 45 minutes and don't set the update interval for the GCP Authorization item to more than 1 hour (maximum CacheUpdateFrequency value).
Additional information about metrics and used API methods:
Macros used
Name | Description | Default |
---|---|---|
{$GCP.PROJECT.ID} | GCP project ID. |
|
{$GCP.CLIENT.EMAIL} | Service account client e-mail. |
|
{$GCP.PRIVATE.KEY.ID} | Service account private key id. |
|
{$GCP.PRIVATE.KEY} | Service account private key data. |
|
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
|
{$GCP.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.AUTH.FREQUENCY} | The update interval for the GCP Authorization item, which also equals to the access token regeneration request frequency. Check the template documentation notes carefully for more details. |
45m |
{$GCP.GCE.INST.NAME.MATCHES} | The filter to include GCP Compute Engine instances by namespace. |
.* |
{$GCP.GCE.INST.NAME.NOT_MATCHES} | The filter to exclude GCP Compute Engine instances by namespace. |
CHANGE_IF_NEEDED |
{$GCP.GCE.ZONE.MATCHES} | The filter to include GCP Compute Engine instances by zone. |
.* |
{$GCP.GCE.ZONE.NOT_MATCHES} | The filter to exclude GCP Compute Engine instances by zone. |
CHANGE_IF_NEEDED |
{$GCP.MYSQL.INST.NAME.MATCHES} | The filter to include GCP Cloud SQL MySQL instances by namespace. |
.* |
{$GCP.MYSQL.INST.NAME.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MySQL instances by namespace. |
CHANGE_IF_NEEDED |
{$GCP.MYSQL.ZONE.MATCHES} | The filter to include GCP Cloud SQL MySQL instances by zone. |
.* |
{$GCP.MYSQL.ZONE.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MySQL instances by zone. |
CHANGE_IF_NEEDED |
{$GCP.MYSQL.INST.TYPE.MATCHES} | The filter to include GCP Cloud SQL MySQL instances by type (standalone/replica). |
.* |
{$GCP.MYSQL.INST.TYPE.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MySQL instances by type (standalone/replica). Set a macro value 'CLOUD_SQL_INSTANCE' to exclude standalone Instances or 'READ_REPLICA_INSTANCE' to exclude read-only Replicas. |
CHANGE_IF_NEEDED |
{$GCP.PGSQL.INST.NAME.MATCHES} | The filter to include GCP Cloud SQL PostgreSQL instances by namespace. |
.* |
{$GCP.PGSQL.INST.NAME.NOT_MATCHES} | The filter to exclude GCP Cloud SQL PostgreSQL instances by namespace. |
CHANGE_IF_NEEDED |
{$GCP.PGSQL.ZONE.MATCHES} | The filter to include GCP Cloud SQL PostgreSQL instances by zone. |
.* |
{$GCP.PGSQL.ZONE.NOT_MATCHES} | The filter to exclude GCP Cloud SQL PostgreSQL instances by zone. |
CHANGE_IF_NEEDED |
{$GCP.PGSQL.INST.TYPE.MATCHES} | The filter to include GCP Cloud SQL PostgreSQL instances by type (standalone/replica). |
.* |
{$GCP.PGSQL.INST.TYPE.NOT_MATCHES} | The filter to exclude GCP Cloud SQL PostgreSQL instances by type (standalone/replica). Set a macro value 'CLOUD_SQL_INSTANCE' to exclude standalone Instances or 'READ_REPLICA_INSTANCE' to exclude read-only Replicas. |
CHANGE_IF_NEEDED |
{$GCP.MSSQL.INST.NAME.MATCHES} | The filter to include GCP Cloud SQL MSSQL instances by namespace. |
.* |
{$GCP.MSSQL.INST.NAME.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MSSQL instances by namespace. |
CHANGE_IF_NEEDED |
{$GCP.MSSQL.ZONE.MATCHES} | The filter to include GCP Cloud SQL MSSQL instances by zone. |
.* |
{$GCP.MSSQL.ZONE.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MSSQL instances by zone. |
CHANGE_IF_NEEDED |
{$GCP.MSSQL.INST.TYPE.MATCHES} | The filter to include GCP Cloud SQL MSSQL instances by type (standalone/replica). |
.* |
{$GCP.MSSQL.INST.TYPE.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MSSQL instances by type (standalone/replica). Set a macro value 'CLOUD_SQL_INSTANCE' to exclude standalone Instances or 'READ_REPLICA_INSTANCE' to exclude read-only Replicas. |
CHANGE_IF_NEEDED |
{$GCP.GCE.QUOTA.MATCHES} | The filter to include GCP Compute Engine project quotas by namespace. |
.* |
{$GCP.GCE.QUOTA.NOT_MATCHES} | The filter to exclude GCP Compute Engine project quotas by namespace. |
CHANGE_IF_NEEDED |
{$GCP.GCE.QUOTA.PUSED.MIN.WARN} | GCP Compute Engine project quota warning utilization threshold. |
80 |
{$GCP.GCE.QUOTA.PUSED.MIN.CRIT} | GCP Compute Engine project quota critical quota utilization threshold. |
95 |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Authorization | Google Cloud Platform REST authorization with service account authentication parameters and temporary-generated RSA-based JWT-token usage. The necessary scopes are pre-defined. Returns a signed authorization token with 1 hour lifetime; it is required only once, and is used for all the dependent script items. Check the template documentation for the details. |
Script | gcp.authorization |
Instances get | Get GCP Compute Engine instances. |
Dependent item | gcp.gce.instances.get Preprocessing
|
Authorization errors check | A list of errors from API requests. |
Dependent item | gcp.auth.err.check Preprocessing
|
Instances get | GCP Cloud SQL: Instances get. |
Dependent item | gcp.cloudsql.instances.get Preprocessing
|
Cloud SQL instances total | GCP Cloud SQL instances total count. |
Dependent item | gcp.cloudsql.instances.total Preprocessing
|
MSSQL instances count | GCP Cloud SQL MSSQL instances count. |
Dependent item | gcp.cloudsql.instances.mssql_count Preprocessing
|
MySQL instances count | GCP Cloud SQL MySQL instances count. |
Dependent item | gcp.cloudsql.instances.mysql_count Preprocessing
|
PostgreSQL instances count | GCP Cloud SQL PostgreSQL instances count. |
Dependent item | gcp.cloudsql.instances.pgsql_count Preprocessing
|
GCE instances total | GCP Compute Engine instances total count. |
Dependent item | gcp.gce.instances.total Preprocessing
|
Regular GCE instances count | GCP Compute Engine: Regular instances count. |
Dependent item | gcp.gce.instances.regular_count Preprocessing
|
Container-optimized GCE instances count | GCP Compute Engine: count of instances with Container-Optimized OS used. |
Dependent item | gcp.gce.instances.cos_count Preprocessing
|
Project quotas get | GCP Compute Engine resource quotas available for the particular project. |
Dependent item | gcp.gce.quotas.get Preprocessing
|
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Authorization has failed | GCP: Authorization has failed. |
length(last(/GCP by HTTP/gcp.auth.err.check)) > 0 |
Average |
LLD rule GCP Compute Engine: Instances discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Compute Engine: Instances discovery | GCP Compute Engine: Instances discovery. |
Dependent item | gcp.gce.inst.discovery Preprocessing
|
LLD rule GCP Cloud SQL: PostgreSQL instances discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Cloud SQL: PostgreSQL instances discovery | GCP Cloud SQL: PostgreSQL instances discovery. |
Dependent item | gcp.cloudsql.pgsql.inst.discovery Preprocessing
|
LLD rule GCP Cloud SQL: MSSQL instances discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Cloud SQL: MSSQL instances discovery | GCP Cloud SQL: MSSQL instances discovery. |
Dependent item | gcp.cloudsql.mssql.inst.discovery Preprocessing
|
LLD rule GCP Cloud SQL: MySQL instances discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Cloud SQL: MySQL instances discovery | GCP Cloud SQL: MySQL instances discovery. |
Dependent item | gcp.cloudsql.mysql.inst.discovery Preprocessing
|
LLD rule GCP Compute Engine: Project quotas discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Compute Engine: Project quotas discovery | GCP Compute Engine: Quotas discovery. |
Dependent item | gcp.gce.quotas.discovery Preprocessing
|
Item prototypes for GCP Compute Engine: Project quotas discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Quota [{#GCE.QUOTA.NAME}]: Raw data | GCP Compute Engine: Get metrics for [{#GCE.QUOTA.NAME}] quota. |
Dependent item | gcp.gce.quota.single.raw[{#GCE.QUOTA.NAME}] Preprocessing
|
Quota [{#GCE.QUOTA.NAME}]: Usage | GCP Compute Engine: The current usage value for [{#GCE.QUOTA.NAME}] quota. |
Dependent item | gcp.gce.quota.usage[{#GCE.QUOTA.NAME}] Preprocessing
|
Quota [{#GCE.QUOTA.NAME}]: Limit | GCP Compute Engine: The current limit value for [{#GCE.QUOTA.NAME}] quota. |
Dependent item | gcp.gce.quota.limit[{#GCE.QUOTA.NAME}] Preprocessing
|
Quota [{#GCE.QUOTA.NAME}]: Percentage used | GCP Compute Engine: Percentage usage for [{#GCE.QUOTA.NAME}] quota. |
Dependent item | gcp.gce.quota.pused[{#GCE.QUOTA.NAME}] Preprocessing
|
Trigger prototypes for GCP Compute Engine: Project quotas discovery
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Quota [{#GCE.QUOTA.NAME}] limit has been changed | GCP Compute Engine: The limit for the |
change(/GCP by HTTP/gcp.gce.quota.limit[{#GCE.QUOTA.NAME}]) <> 0 |
Info | Manual close: Yes |
Quota [{#GCE.QUOTA.NAME}] usage is close to reaching the limit | GCP Compute Engine: The usage percentage for the |
last(/GCP by HTTP/gcp.gce.quota.pused[{#GCE.QUOTA.NAME}]) >= {$GCP.GCE.QUOTA.PUSED.MIN.WARN:"{#GCE.QUOTA.NAME}"} |
Warning | Manual close: Yes Depends on:
|
Quota [{#GCE.QUOTA.NAME}] usage is critically close to reaching the limit | GCP Compute Engine: The usage percentage for the |
last(/GCP by HTTP/gcp.gce.quota.pused[{#GCE.QUOTA.NAME}]) >= {$GCP.GCE.QUOTA.PUSED.MIN.CRIT:"{#GCE.QUOTA.NAME}"} |
Average | Manual close: Yes |
GCP Compute Engine Instance by HTTP
Overview
This template is designed to monitor Google Cloud Platform Compute Engine instances by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Compute Engine
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
|
{$GCE.DISK.NAME.MATCHES} | The filter to include GCP Compute Engine disks by namespace. |
.* |
{$GCE.DISK.NAME.NOT_MATCHES} | The filter to exclude GCP Compute Engine disks by namespace. |
CHANGE_IF_NEEDED |
{$GCE.DISK.DEV_TYPE.MATCHES} | The filter to include GCP Compute Engine disks by device type. |
.* |
{$GCE.DISK.DEV_TYPE.NOT_MATCHES} | The filter to exclude GCP Compute Engine disks by device type. |
CHANGE_IF_NEEDED |
{$GCE.DISK.STOR_TYPE.MATCHES} | The filter to include GCP Compute Engine disks by storage type. |
.* |
{$GCE.DISK.STOR_TYPE.NOT_MATCHES} | The filter to exclude GCP Compute Engine disks by storage type. |
CHANGE_IF_NEEDED |
{$GCE.CPU.UTIL.MAX} | GCP Compute Engine instance CPU utilization threshold. |
95 |
{$GCE.RAM.UTIL.MAX} | GCP Compute Engine instance RAM utilization threshold. |
90 |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Metrics get | GCP Compute Engine metrics get in raw format. |
Script | gcp.gce.metrics.get Preprocessing
|
Firewall: Dropped packets | Count of incoming packets dropped by the firewall. |
Dependent item | gcp.gce.firewall.dropped_packets_count Preprocessing
|
Firewall: Dropped bytes | Count of incoming bytes dropped by the firewall. |
Dependent item | gcp.gce.firewall.dropped_bytes_count Preprocessing
|
Guest visible vCPUs | Number of vCPUs visible inside the guest. For many GCE machine types, the number of vCPUs visible inside the guest is equal to the For shared-core machine types, the number of guest-visible vCPUs differs from the number of reserved cores. For example, e2-small instances have two vCPUs visible inside the guest and 0.5 fractional vCPUs reserved. Therefore, for an e2-small instance, |
Dependent item | gcp.gce.cpu.guest_visible_vcpus Preprocessing
|
Reserved vCPUs | Number of vCPUs reserved on the host of the instance. |
Dependent item | gcp.gce.cpu.reserved_cores Preprocessing
|
Scheduler wait time | Wait time is the time a vCPU is ready to run, but unexpectedly not scheduled to run. The wait time returned here is the accumulated value for all vCPUs. The time interval for which the value was measured is returned by Monitoring in whole seconds as start_time and end_time. This metric is only available for VMs that belong to the e2 family or to overcommitted VMs on sole-tenant nodes. |
Dependent item | gcp.gce.cpu.scheduler_wait_time Preprocessing
|
CPU usage time | Delta vCPU usage for all vCPUs, in vCPU-seconds. To compute the per-vCPU utilization fraction, divide this value by (end-start)*N, where end and start define this value's time interval and N is This value is reported by the hypervisor for the VM and can differ from |
Dependent item | gcp.gce.cpu.usage_time Preprocessing
|
CPU utilization | Fractional utilization of allocated CPU on this instance. This metric is reported by the hypervisor for the VM and can differ from |
Dependent item | gcp.gce.cpu.utilization Preprocessing
|
Memory size | Total VM memory size. This metric is only available for VMs that belong to the e2 family; returns empty value for different instance types. |
Dependent item | gcp.gce.memory.ram_size Preprocessing
|
Memory used | Memory currently used in the VM. This metric is only available for VMs that belong to the e2 family; returns empty value for different instance types. |
Dependent item | gcp.gce.memory.ram_used Preprocessing
|
Memory usage percentage | Memory usage Percentage. This metric is only available for VMs that belong to the e2 family; returns empty value for different instance types. |
Dependent item | gcp.gce.memory.ram_pused Preprocessing
|
VM swap in | The amount of memory read into the guest from its own swap space. This metric is only available for VMs that belong to the e2 family; returns empty value for different instance types. |
Dependent item | gcp.gce.memory.swap_in_bytes_count Preprocessing
|
VM swap out | The amount of memory written from the guest to its own swap space. This metric is only available for VMs that belong to the e2 family; returns empty value for different instance types. |
Dependent item | gcp.gce.memory.swap_out_bytes_count Preprocessing
|
Network: Received bytes | Count of bytes received from the network without load-balancing. |
Dependent item | gcp.gce.network.lb.received_bytes_count.false Preprocessing
|
Network: Received bytes: Load-balanced | Whether traffic was received by an L3 loadbalanced IP address assigned to the VM. Traffic that is externally routed to the VM's standard internal or external IP address, such as L7 loadbalanced traffic, is not considered to be loadbalanced in this metric. The value is empty when load-balancing is not used. |
Dependent item | gcp.gce.network.lb.received_bytes_count.true Preprocessing
|
Network: Received packets | Count of packets received from the network without load-balancing. |
Dependent item | gcp.gce.network.lb.received_packets_count.false Preprocessing
|
Network: Received packets: Load-balanced | Whether traffic was received by an L3 loadbalanced IP address assigned to the VM. Traffic that is externally routed to the VM's standard internal or external IP address, such as L7 loadbalanced traffic, is not considered to be loadbalanced in this metric. The value is empty when load-balancing is not used. |
Dependent item | gcp.gce.network.lb.received_packets_count.true Preprocessing
|
Network: Sent bytes | Count of bytes sent over the network without load-balancing. |
Dependent item | gcp.gce.network.lb.sent_bytes_count.false Preprocessing
|
Network: Sent bytes: Load-balanced | Whether traffic was received by an L3 loadbalanced IP address assigned to the VM. Traffic that is externally routed to the VM's standard internal or external IP address, such as L7 loadbalanced traffic, is not considered to be loadbalanced in this metric. The value is empty when load-balancing is not used. |
Dependent item | gcp.gce.network.lb.sent_bytes_count.true Preprocessing
|
Network: Sent packets | Count of packets sent over the network without load-balancing. |
Dependent item | gcp.gce.network.lb.sent_packets_count.false Preprocessing
|
Network: Sent packets: Load-balanced | Whether traffic was received by an L3 loadbalanced IP address assigned to the VM. Traffic that is externally routed to the VM's standard internal or external IP address, such as L7 loadbalanced traffic, is not considered to be loadbalanced in this metric. The value is empty when load-balancing is not used. |
Dependent item | gcp.gce.network.lb.sent_packets_count.true Preprocessing
|
Network: Mirrored bytes | The count of mirrored bytes. |
Dependent item | gcp.gce.network.mirrored_bytes_count Preprocessing
|
Network: Mirrored packets | The count of mirrored packets. |
Dependent item | gcp.gce.network.mirrored_packets_count Preprocessing
|
Network: Mirrored packets dropped: Out of quota | The count of mirrored packets dropped. Reason - out of quota. |
Dependent item | gcp.gce.network.mirr_dropped_packets.out_of_quota Preprocessing
|
Network: Mirrored packets dropped: Unknown | The count of mirrored packets dropped. Reason - unknown. |
Dependent item | gcp.gce.network.mirr_dropped_packets.unknown Preprocessing
|
Network: Mirrored packets dropped: Invalid | The count of mirrored packets dropped. Reason - invalid. |
Dependent item | gcp.gce.network.mirr_dropped_packets.invalid Preprocessing
|
Integrity: Early boot validation status | The validation status of early boot integrity policy. Empty value if integrity monitoring isn't enabled. |
Dependent item | gcp.gce.integrity.early_boot_validation_status Preprocessing
|
Integrity: Late boot validation status | The validation status of late boot integrity policy. Empty value if integrity monitoring isn't enabled. |
Dependent item | gcp.gce.integrity.late_boot_validation_status Preprocessing
|
Instance uptime | Elapsed time since the VM was started, in seconds. |
Dependent item | gcp.gce.instance.uptime Preprocessing
|
Instance state | GCP Compute Engine instance state. |
HTTP agent | gcp.gce.instance.state Preprocessing
|
Disks get | Disk entities and metrics related to a particular instance. |
Script | gcp.gce.disks.get Preprocessing
|
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/GCP Compute Engine Instance by HTTP/gcp.gce.cpu.utilization,15m) >= {$GCE.CPU.UTIL.MAX} |
Average | Manual close: Yes |
High memory utilization | RAM utilization is too high. The system might be slow to respond. |
min(/GCP Compute Engine Instance by HTTP/gcp.gce.memory.ram_pused,15m) >= {$GCE.RAM.UTIL.MAX} |
Average | |
Instance is in suspended state | The VM is in a suspended state. You can resume the VM or delete it. |
last(/GCP Compute Engine Instance by HTTP/gcp.gce.instance.state) = 7 |
Info | Manual close: Yes |
The instance is in repairing state | The VM is being repaired. |
last(/GCP Compute Engine Instance by HTTP/gcp.gce.instance.state) = 4 |
Warning | Manual close: Yes |
The instance is in terminated state | The VM is stopped. You stopped the VM, or the VM encountered a failure. |
last(/GCP Compute Engine Instance by HTTP/gcp.gce.instance.state) = 5 |
Average | Manual close: Yes |
Failed to get the instance state | Failed to get the instance state. |
last(/GCP Compute Engine Instance by HTTP/gcp.gce.instance.state) = 10 |
Average | Manual close: Yes |
LLD rule GCP Compute Engine: Physical disks discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Compute Engine: Physical disks discovery | GCP Compute Engine: Physical disks discovery. |
Dependent item | gcp.gce.phys.disks.discovery Preprocessing
|
Item prototypes for GCP Compute Engine: Physical disks discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Disk [{#GCE.DISK.NAME}]: Raw data | Data in raw format for the disk with the name [{#GCE.DISK.NAME}]. |
Dependent item | gcp.gce.quota.single.raw[{#GCE.DISK.NAME}] Preprocessing
|
Disk [{#GCE.DISK.NAME}]: Read bytes | Count of bytes read from [{#GCE.DISK.NAME}] disk. |
Dependent item | gcp.gce.disk.read_bytes_count[{#GCE.DISK.NAME}] Preprocessing
|
Disk [{#GCE.DISK.NAME}]: Read operations | Count of read IO operations from [{#GCE.DISK.NAME}] disk. |
Dependent item | gcp.gce.disk.read_ops_count[{#GCE.DISK.NAME}] Preprocessing
|
Disk [{#GCE.DISK.NAME}]: Write bytes | Count of bytes written to {#GCE.DISK.NAME}] disk. |
Dependent item | gcp.gce.disk.write_bytes_count[{#GCE.DISK.NAME}] Preprocessing
|
Disk [{#GCE.DISK.NAME}]: Write operations | Count of write IO operations to [{#GCE.DISK.NAME}] disk. |
Dependent item | gcp.gce.disk.write_ops_count[{#GCE.DISK.NAME}] Preprocessing
|
GCP Cloud SQL MySQL by HTTP
Overview
This template is designed to monitor Google Cloud Platform Cloud SQL MySQL instances by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Cloud SQL MySQL versions: 8.0, 5.7
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
|
{$CLOUD_SQL.MYSQL.DISK.UTIL.WARN} | GCP Cloud SQL MySQL instance warning disk usage threshold. |
80 |
{$CLOUD_SQL.MYSQL.DISK.UTIL.CRIT} | GCP Cloud SQL MySQL instance critical disk usage threshold. |
90 |
{$CLOUD_SQL.MYSQL.CPU.UTIL.MAX} | GCP Cloud SQL MySQL instance CPU usage threshold. |
95 |
{$CLOUD_SQL.MYSQL.RAM.UTIL.MAX} | GCP Cloud SQL MySQL instance RAM usage threshold. |
90 |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Metrics get | MySQL metrics in raw format. |
Script | gcp.cloudsql.mysql.metrics.get Preprocessing
|
Reserved CPU cores | Number of cores reserved for the database. |
Dependent item | gcp.cloudsql.mysql.cpu.reserved_cores Preprocessing
|
CPU usage time | Cumulative CPU usage time in seconds. |
Dependent item | gcp.cloudsql.mysql.cpu.usage_time Preprocessing
|
CPU utilization | Current CPU utilization represented as a percentage of the reserved CPU that is currently in use. |
Dependent item | gcp.cloudsql.mysql.cpu.utilization Preprocessing
|
Disk size | Maximum data disk size in bytes. |
Dependent item | gcp.cloudsql.mysql.disk.quota Preprocessing
|
Disk bytes used | Data utilization in bytes. |
Dependent item | gcp.cloudsql.mysql.disk.bytes_used Preprocessing
|
Disk read I/O | Delta count of data disk read I/O operations. |
Dependent item | gcp.cloudsql.mysql.disk.read_ops_count Preprocessing
|
Disk write I/O | Delta count of data disk write I/O operations. |
Dependent item | gcp.cloudsql.mysql.disk.write_ops_count Preprocessing
|
Disk utilization | The fraction of the disk quota that is currently in use. Shown as percentage. |
Dependent item | gcp.cloudsql.mysql.disk.utilization Preprocessing
|
Memory size | Maximum RAM size in bytes. |
Dependent item | gcp.cloudsql.mysql.memory.quota Preprocessing
|
Memory used by DB engine | Total RAM usage in bytes. This metric reports the RAM usage of the database process, including the buffer/cache. |
Dependent item | gcp.cloudsql.mysql.memory.total_usage Preprocessing
|
Memory usage | The RAM usage in bytes. This metric reports the RAM usage of the server, excluding the buffer/cache. |
Dependent item | gcp.cloudsql.mysql.memory.usage Preprocessing
|
Memory utilization | The fraction of the memory quota that is currently in use. Shown as percentage. |
Dependent item | gcp.cloudsql.mysql.memory.utilization Preprocessing
|
Network: Received bytes | Delta count of bytes received through the network. |
Dependent item | gcp.cloudsql.mysql.network.received_bytes_count Preprocessing
|
Network: Sent bytes | Delta count of bytes sent through the network. |
Dependent item | gcp.cloudsql.mysql.network.sent_bytes_count Preprocessing
|
Connections | Number of connections to the databases on the Cloud SQL instance. |
Dependent item | gcp.cloudsql.mysql.network.connections Preprocessing
|
Instance state | GCP Cloud SQL MySQL Current instance state. |
HTTP agent | gcp.cloudsql.mysql.inst.state Preprocessing
|
DB engine state | GCP Cloud SQL MySQL DB Engine State. |
HTTP agent | gcp.cloudsql.mysql.db.state Preprocessing
|
InnoDB dirty pages | Number of unflushed pages in the InnoDB buffer pool. |
Dependent item | gcp.cloudsql.mysql.innodb_buffer_pool_pages_dirty Preprocessing
|
InnoDB free pages | Number of unused pages in the InnoDB buffer pool. |
Dependent item | gcp.cloudsql.mysql.innodb_buffer_pool_pages_free Preprocessing
|
InnoDB total pages | Total number of pages in the InnoDB buffer pool. |
Dependent item | gcp.cloudsql.mysql.innodb_buffer_pool_pages_total Preprocessing
|
InnoDB fsync calls | Delta count of InnoDB fsync() calls. |
Dependent item | gcp.cloudsql.mysql.innodb_data_fsyncs Preprocessing
|
InnoDB log fsync calls | Delta count of InnoDB fsync() calls to the log file. |
Dependent item | gcp.cloudsql.mysql.innodb_os_log_fsyncs Preprocessing
|
InnoDB pages read | Delta count of InnoDB pages read. |
Dependent item | gcp.cloudsql.mysql.innodb_pages_read Preprocessing
|
InnoDB pages written | Delta count of InnoDB pages written. |
Dependent item | gcp.cloudsql.mysql.innodb_pages_written Preprocessing
|
Open tables | The number of tables that are currently open. |
Dependent item | gcp.cloudsql.mysql.open_tables Preprocessing
|
Open table definitions | The number of table definitions that are currently cached. |
Dependent item | gcp.cloudsql.mysql.open_table_definitions Preprocessing
|
Queries | Delta of statements executed by the server. |
Dependent item | gcp.cloudsql.queries Preprocessing
|
Questions | Delta of statements executed by the server sent by the client. |
Dependent item | gcp.cloudsql.questions Preprocessing
|
Network: Bytes received by MySQL | Delta count of bytes received by MySQL process. |
Dependent item | gcp.cloudsql.mysql_received_bytes_count Preprocessing
|
Network: Bytes sent by MySQL | Delta count of bytes sent by MySQL process. |
Dependent item | gcp.cloudsql.mysql_sent_bytes_count Preprocessing
|
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.cpu.utilization,5m) >= {$CLOUD_SQL.MYSQL.CPU.UTIL.MAX} |
Average | |
Disk space is low | High utilization of the storage space. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.disk.utilization) >= {$CLOUD_SQL.MYSQL.DISK.UTIL.WARN} |
Warning | Depends on:
|
Disk space is critically low | Critical utilization of the disk space. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.disk.utilization) >= {$CLOUD_SQL.MYSQL.DISK.UTIL.CRIT} |
Average | |
High memory utilization | RAM utilization is too high. The system might be slow to respond. |
min(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.memory.utilization,5m) >= {$CLOUD_SQL.MYSQL.RAM.UTIL.MAX} |
High | |
Instance is in suspended state | The instance is in suspended state. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.inst.state) = 1 |
Warning | |
Instance is stopped by the owner | The instance has been stopped by the owner. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.inst.state) = 2 |
Info | |
Instance is in maintenance | The instance is down for maintenance. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.inst.state) = 4 |
Info | |
Instance is in failed state | The instance creation failed, or an operation left the instance in an own bad state. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.inst.state) = 5 |
Average | |
Instance is in unknown state | The state of the instance is unknown. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.inst.state) = 6 |
Average | |
Failed to get the instance state | Failed to get the instance state. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.inst.state) = 10 |
Average | |
Database engine is down | Database engine is down. |
last(/GCP Cloud SQL MySQL by HTTP/gcp.cloudsql.mysql.db.state)=0 |
Average | Depends on:
|
GCP Cloud SQL MySQL Replica by HTTP
Overview
This template is designed to monitor Google Cloud Platform Cloud SQL metrics for the MySQL read-only replica instances by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Cloud SQL MySQL read replica versions: 8.0, 5.7
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Replica metrics get | MySQL replication metrics data in raw format. |
Script | gcp.cloudsql.mysql.repl.metrics.get Preprocessing
|
Last I/O thread error number | The error number of the most recent error that caused the I/O thread to stop. |
Dependent item | gcp.cloudsql.mysql.repl.last_io_errno Preprocessing
|
Last SQL thread error number | The error number of the most recent error that caused the SQL thread to stop. |
Dependent item | gcp.cloudsql.mysql.repl.last_sql_errno Preprocessing
|
Replication lag | Number of seconds the read replica is behind its primary (approximation). |
Dependent item | gcp.cloudsql.mysql.repl.replica_lag Preprocessing
|
Network lag | Indicates time taken from primary binary log to IO thread on replica. |
Dependent item | gcp.cloudsql.mysql.repl.network_lag Preprocessing
|
Replication state | The current serving state of replication. This metric is only available for the MySQL/PostgreSQL instances. |
Dependent item | gcp.cloudsql.mysql.repl.state Preprocessing
|
Slave I/O thread running | Indicates whether the I/O thread for reading the primary's binary log is running. Possible values are Yes, No and Connecting. |
Dependent item | gcp.cloudsql.mysql.repl.slave_io_running Preprocessing
|
Slave SQL thread running | Indicates whether the SQL thread for executing events in the relay log is running. |
Dependent item | gcp.cloudsql.mysql.repl.slave_sql_running Preprocessing
|
GCP Cloud SQL PostgreSQL by HTTP
Overview
This template is designed to monitor Google Cloud Platform Cloud SQL PostgreSQL database metrics by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Cloud SQL PostgreSQL versions: 14, 13, 12
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
|
{$GCP.CLOUD_SQL.DB.NAME.MATCHES} | The filter to include GCP Cloud SQL PostgreSQL databases by namespace. |
.* |
{$GCP.CLOUD_SQL.DB.NAME.NOT_MATCHES} | The filter to exclude GCP Cloud SQL PostgreSQL databases by namespace. |
CHANGE_IF_NEEDED |
{$CLOUD_SQL.PGSQL.DISK.UTIL.WARN} | GCP Cloud SQL PostgreSQL instance warning disk usage threshold. |
80 |
{$CLOUD_SQL.PGSQL.DISK.UTIL.CRIT} | GCP Cloud SQL PostgreSQL instance critical disk usage threshold. |
90 |
{$CLOUD_SQL.PGSQL.CPU.UTIL.MAX} | GCP Cloud SQL PostgreSQL instance CPU usage threshold. |
95 |
{$CLOUD_SQL.PGSQL.RAM.UTIL.MAX} | GCP Cloud SQL PostgreSQL instance RAM usage threshold. |
90 |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Metrics get | PostgreSQL metrics data in raw format. |
Script | gcp.cloudsql.pgsql.metrics.get Preprocessing
|
Reserved CPU cores | Number of cores reserved for the database. |
Dependent item | gcp.cloudsql.pgsql.cpu.reserved_cores Preprocessing
|
CPU usage time | Cumulative CPU usage time in seconds. |
Dependent item | gcp.cloudsql.pgsql.cpu.usage_time Preprocessing
|
CPU utilization | Current CPU utilization represented as a percentage of the reserved CPU that is currently in use. |
Dependent item | gcp.cloudsql.pgsql.cpu.utilization Preprocessing
|
Disk size | Maximum data disk size in bytes. |
Dependent item | gcp.cloudsql.pgsql.disk.quota Preprocessing
|
Disk bytes used | Data utilization in bytes. |
Dependent item | gcp.cloudsql.pgsql.disk.bytes_used Preprocessing
|
Disk read I/O | Delta count of data disk read I/O operations. |
Dependent item | gcp.cloudsql.pgsql.disk.read_ops_count Preprocessing
|
Disk write I/O | Delta count of data disk write I/O operations. |
Dependent item | gcp.cloudsql.pgsql.disk.write_ops_count Preprocessing
|
Disk utilization | The fraction of the disk quota that is currently in use. Shown as percentage. |
Dependent item | gcp.cloudsql.pgsql.disk.utilization Preprocessing
|
Memory size | Maximum RAM size in bytes. |
Dependent item | gcp.cloudsql.pgsql.memory.quota Preprocessing
|
Memory used by DB engine | Total RAM usage in bytes. This metric reports the RAM usage of the database process, including the buffer/cache. |
Dependent item | gcp.cloudsql.pgsql.memory.total_usage Preprocessing
|
Memory usage | The RAM usage in bytes. This metric reports the RAM usage of the server, excluding the buffer/cache. |
Dependent item | gcp.cloudsql.pgsql.memory.usage Preprocessing
|
Memory utilization | The fraction of the memory quota that is currently in use. Shown as percentage. |
Dependent item | gcp.cloudsql.pgsql.memory.utilization Preprocessing
|
Network: Received bytes | Delta count of bytes received through the network. |
Dependent item | gcp.cloudsql.pgsql.network.received_bytes_count Preprocessing
|
Network: Sent bytes | Delta count of bytes sent through the network. |
Dependent item | gcp.cloudsql.pgsql.network.sent_bytes_count Preprocessing
|
Instance state | GCP Cloud SQL PostgreSQL Current instance state. |
HTTP agent | gcp.cloudsql.pgsql.inst.state Preprocessing
|
DB engine state | GCP Cloud SQL PostgreSQL DB Engine State. |
HTTP agent | gcp.cloudsql.pgsql.db.state Preprocessing
|
Transaction ID utilization | Current utilization represented as a percentage of transaction IDs consumed by the Cloud SQL PostgreSQL instance. |
Dependent item | gcp.cloudsql.pgsql.transaction_id_utilization Preprocessing
|
Assigned transactions | Delta count of assigned transaction IDs. |
Dependent item | gcp.cloudsql.pgsql.transaction_id_count_assigned Preprocessing
|
Frozen transactions | Delta count of frozen transaction IDs. |
Dependent item | gcp.cloudsql.pgsql.transaction_id_count_frozen Preprocessing
|
Data written to temporary | Total data size (in bytes) written to temporary files by the queries. |
Dependent item | gcp.cloudsql.pgsql.temp_bytes_written_count Preprocessing
|
Temporary files used for writing data | Total number of temporary files used for writing data while performing algorithms such as join and sort. |
Dependent item | gcp.cloudsql.pgsql.temp_files_written_count Preprocessing
|
Oldest running transaction age | Age of the oldest running transaction yet to be vacuumed in the Cloud SQL PostgreSQL instance, measured in number of transactions that have happened since the oldest transaction. Empty value when there is no such transaction type. |
Dependent item | gcp.cloudsql.pgsql.oldest_transaction.running Preprocessing
|
Oldest prepared transaction age | Age of the oldest prepared transaction yet to be vacuumed in the Cloud SQL PostgreSQL instance, measured in number of transactions that have happened since the oldest transaction. Empty value when there is no such transaction type. |
Dependent item | gcp.cloudsql.pgsql.oldest_transaction.prepared Preprocessing
|
Oldest replication slot transaction age | Age of the oldest replication slot transaction yet to be vacuumed in the Cloud SQL PostgreSQL instance, measured in number of transactions that have happened since the oldest transaction. Empty value when there is no such transaction type. |
Dependent item | gcp.cloudsql.pgsql.oldest_transaction.replication_slot Preprocessing
|
Oldest replica transaction age | Age of the oldest replica transaction yet to be vacuumed in the Cloud SQL PostgreSQL instance, measured in number of transactions that have happened since the oldest transaction. Empty value when there is no such transaction type. |
Dependent item | gcp.cloudsql.pgsql.oldest_transaction.replica Preprocessing
|
Connections | The number of the connections to the Cloud SQL PostgreSQL instance. Includes connections to the system databases, which aren't visible by default. |
Dependent item | gcp.cloudsql.pgsql.num_backends Preprocessing
|
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.cpu.utilization,5m) >= {$CLOUD_SQL.PGSQL.CPU.UTIL.MAX} |
Average | |
Disk space is low | High utilization of the storage space. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.disk.utilization) >= {$CLOUD_SQL.PGSQL.DISK.UTIL.WARN} |
Warning | Depends on:
|
Disk space is critically low | Critical utilization of the disk space. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.disk.utilization) >= {$CLOUD_SQL.PGSQL.DISK.UTIL.CRIT} |
Average | |
High memory utilization | RAM utilization is too high. The system might be slow to respond. |
min(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.memory.utilization,5m) >= {$CLOUD_SQL.PGSQL.RAM.UTIL.MAX} |
High | |
Instance is in suspended state | The instance is in suspended state. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.inst.state) = 1 |
Warning | |
Instance is stopped by the owner | The instance has been stopped by the owner. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.inst.state) = 2 |
Info | |
Instance is in maintenance | The instance is down for maintenance. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.inst.state) = 4 |
Info | |
Instance is in failed state | The instance creation failed, or an operation left the instance in an own bad state. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.inst.state) = 5 |
Average | |
Instance is in unknown state | The state of the instance is unknown. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.inst.state) = 6 |
Average | |
Failed to get the instance state | Failed to get the instance state. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.inst.state) = 10 |
Average | |
Database engine is down | Database engine is down. |
last(/GCP Cloud SQL PostgreSQL by HTTP/gcp.cloudsql.pgsql.db.state)=0 |
Average | Depends on:
|
LLD rule GCP Cloud SQL PostgreSQL: Databases discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
GCP Cloud SQL PostgreSQL: Databases discovery | Databases discovery for the particular PostgreSQL instance. |
HTTP agent | gcp.cloudsql.pgsql.db.discovery Preprocessing
|
Item prototypes for GCP Cloud SQL PostgreSQL: Databases discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Database [{#PGSQL.DB.NAME}]: Metrics raw | PostgreSQL metrics in raw format. |
Script | gcp.cloudsql.pgsql.db.metrics.get[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Deadlocks count | Number of deadlocks detected in the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.deadlock_count[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Tuples returned | Total number of rows scanned while processing the queries of the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.tuples_returned_count[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Tuples fetched | Total number of rows fetched as a result of queries to the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.tuples_fetched_count[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Committed transactions | Delta count of number of committed transactions to the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.transaction_count_commit[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Rolled-back transactions | Delta count of number of rolled-back transactions in the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.transaction_count_rollback[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Buffer cache blocks read. | Number of buffer cache blocks read by the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.blocks_read_count_buffer_cache[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Disk blocks read. | Number of disk blocks read by the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.blocks_read_count_disk[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Inserted rows processed. | Number of tuples(rows) processed for insert operations for the database with the name [{#PGSQL.DB.NAME}]. |
Dependent item | gcp.cloudsql.pgsql.tuples_processed_count_insert[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Deleted rows processed | Number of tuples(rows) processed for delete operations for the database with the name [{#PGSQL.DB.NAME}]. |
Dependent item | gcp.cloudsql.pgsql.tuples_processed_count_delete[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Updated rows processed | Number of tuples(rows) processed for update operations for the database with the name [{#PGSQL.DB.NAME}]. |
Dependent item | gcp.cloudsql.pgsql.tuples_processed_count_update[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Live tuples | Number of live tuples(rows) in the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.tuple_size_live[{#PGSQL.DB.NAME}] Preprocessing
|
Database [{#PGSQL.DB.NAME}]: Dead tuples | Number of live tuples(rows) in the [{#PGSQL.DB.NAME}] database. |
Dependent item | gcp.cloudsql.pgsql.tuple_size_dead[{#PGSQL.DB.NAME}] Preprocessing
|
GCP Cloud SQL PostgreSQL Replica by HTTP
Overview
This template is designed to monitor Google Cloud Platform Cloud SQL PostgreSQL read-only replica instances by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Cloud SQL PostgreSQL read replica versions: 14, 13, 12
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Replica metrics get | PostgreSQL replica metrics data in raw format. |
Script | gcp.cloudsql.pgsql.repl.metrics.get Preprocessing
|
Network lag | Indicates time taken from primary binary log to IO thread on replica. |
Dependent item | gcp.cloudsql.pgsql.repl.network_lag Preprocessing
|
Replication lag | Number of seconds the read replica is behind its primary (approximation). |
Dependent item | gcp.cloudsql.pgsql.repl.replica_lag Preprocessing
|
Replication state | The current serving state of replication. This metric is only available for the MySQL/PostgreSQL instances. |
Dependent item | gcp.cloudsql.pgsql.repl.state Preprocessing
|
Replay location lag | Replay location replication lag in bytes. |
Dependent item | gcp.cloudsql.pgsql.repl.replay_location Preprocessing
|
Write location lag | Write location replication lag in bytes. |
Dependent item | gcp.cloudsql.pgsql.repl.write_location Preprocessing
|
Flush location lag | Flush location replication lag in bytes. |
Dependent item | gcp.cloudsql.pgsql.repl.flush_location Preprocessing
|
Sent location lag | Sent location replication lag in bytes. |
Dependent item | gcp.cloudsql.pgsql.repl.sent_location Preprocessing
|
Number of log archival failures | Number of failed attempts for archiving replication log files. |
Dependent item | gcp.cloudsql.pgsql.repl.log_archive_failure_count Preprocessing
|
Number of log archival successes | Number of failed attempts for archiving replication log files. |
Dependent item | gcp.cloudsql.pgsql.repl.log_archive_success_count Preprocessing
|
GCP Cloud SQL MSSQL by HTTP
Overview
This template is designed to monitor Google Cloud Platform Cloud SQL MSSQL instances by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Cloud SQL MSSQL versions: 2022 Standard/Enterprise, 2019 Standard/Enterprise, 2017 Standard/Enterprise.
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
|
{$CLOUD_SQL.MSSQL.RES.NAME.MATCHES} | The filter to include GCP Cloud SQL MSSQL resources by namespace. |
.* |
{$CLOUD_SQL.MSSQL.RES.NAME.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MSSQL resources by namespace. |
CHANGE_IF_NEEDED |
{$CLOUD_SQL.MSSQL.DB.NAME.MATCHES} | The filter to include GCP Cloud SQL MSSQL databases by namespace. |
.* |
{$CLOUD_SQL.MSSQL.DB.NAME.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MSSQL databases by namespace. |
CHANGE_IF_NEEDED |
{$CLOUD_SQL.MSSQL.SCHEDULER.ID.MATCHES} | The filter to include GCP Cloud SQL MSSQL schedulers by namespace. |
.* |
{$CLOUD_SQL.MSSQL.SCHEDULER.ID.NOT_MATCHES} | The filter to exclude GCP Cloud SQL MSSQL schedulers by namespace. |
CHANGE_IF_NEEDED |
{$CLOUD_SQL.MSSQL.DISK.UTIL.WARN} | GCP Cloud SQL MSSQL instance warning disk usage threshold. |
80 |
{$CLOUD_SQL.MSSQL.DISK.UTIL.CRIT} | GCP Cloud SQL MSSQL instance critical disk usage threshold. |
90 |
{$CLOUD_SQL.MSSQL.CPU.UTIL.MAX} | GCP Cloud SQL MSSQL instance CPU usage threshold. |
95 |
{$CLOUD_SQL.MSSQL.RAM.UTIL.MAX} | GCP Cloud SQL MSSQL instance RAM usage threshold. |
90 |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Metrics get | MSSQL metrics data in raw format. |
Script | gcp.cloudsql.mssql.metrics.get Preprocessing
|
Reserved CPU cores | Number of cores reserved for the database. |
Dependent item | gcp.cloudsql.mssql.cpu.reserved_cores Preprocessing
|
CPU usage time | Cumulative CPU usage time in seconds. |
Dependent item | gcp.cloudsql.mssql.cpu.usage_time Preprocessing
|
CPU utilization | Current CPU utilization represented as a percentage of the reserved CPU that is currently in use. |
Dependent item | gcp.cloudsql.mssql.cpu.utilization Preprocessing
|
Disk size | Maximum data disk size in bytes. |
Dependent item | gcp.cloudsql.mssql.disk.quota Preprocessing
|
Disk bytes used | Data utilization in bytes. |
Dependent item | gcp.cloudsql.mssql.disk.bytes_used Preprocessing
|
Disk read I/O | Delta count of data disk read I/O operations. |
Dependent item | gcp.cloudsql.mssql.disk.read_ops_count Preprocessing
|
Disk write I/O | Delta count of data disk write I/O operations. |
Dependent item | gcp.cloudsql.mssql.disk.write_ops_count Preprocessing
|
Disk utilization | The fraction of the disk quota that is currently in use. Shown as percentage. |
Dependent item | gcp.cloudsql.mssql.disk.utilization Preprocessing
|
Memory size | Maximum RAM size in bytes. |
Dependent item | gcp.cloudsql.mssql.memory.quota Preprocessing
|
Memory used by DB engine | Total RAM usage in bytes. This metric reports the RAM usage of the database process, including the buffer/cache. |
Dependent item | gcp.cloudsql.mssql.memory.total_usage Preprocessing
|
Memory usage | The RAM usage in bytes. This metric reports the RAM usage of the server, excluding the buffer/cache. |
Dependent item | gcp.cloudsql.mssql.memory.usage Preprocessing
|
Memory utilization | The fraction of the memory quota that is currently in use. Shown as percentage. |
Dependent item | gcp.cloudsql.mssql.memory.utilization Preprocessing
|
Network: Received bytes | Delta count of bytes received through the network. |
Dependent item | gcp.cloudsql.mssql.network.received_bytes_count Preprocessing
|
Network: Sent bytes | Delta count of bytes sent through the network. |
Dependent item | gcp.cloudsql.mssql.network.sent_bytes_count Preprocessing
|
Connections | Number of connections to the databases on the Cloud SQL instance. |
Dependent item | gcp.cloudsql.mssql.network.connections Preprocessing
|
Instance state | GCP Cloud SQL MSSQL Current instance state. |
HTTP agent | gcp.cloudsql.mssql.inst.state Preprocessing
|
DB engine state | GCP Cloud SQL MSSQL DB Engine State. |
HTTP agent | gcp.cloudsql.mssql.db.state Preprocessing
|
Connection resets | Total number of login operations started from the connection pool since the last restart of SQL Server service. |
Dependent item | gcp.cloudsql.mssql.conn.connection_reset_count Preprocessing
|
Login attempts | Total number of login attempts since the last restart of SQL Server service. This does not include pooled connections. |
Dependent item | gcp.cloudsql.mssql.conn.login_attempt_count Preprocessing
|
Logouts | Total number of logout operations since the last restart of SQL Server service. |
Dependent item | gcp.cloudsql.mssql.conn.logout_count Preprocessing
|
Processes blocked | Current number of blocked processes. |
Dependent item | gcp.cloudsql.mssql.conn.processes_blocked Preprocessing
|
Buffer cache hit ratio | Current percentage of pages found in the buffer cache without having to read from disk. The ratio is the total number of cache hits divided by the total number of cache lookups. |
Dependent item | gcp.cloudsql.mssql.memory.buffer_cache_hit_ratio Preprocessing
|
Checkpoint pages | Total number of pages flushed to disk by a checkpoint or other operation that requires all dirty pages to be flushed. |
Dependent item | gcp.cloudsql.mssql.memory.checkpoint_page_count Preprocessing
|
Free list stalls | Total number of requests that had to wait for a free page. |
Dependent item | gcp.cloudsql.mssql.memory.free_list_stall_count Preprocessing
|
Lazy writes | Total number of buffers written by the buffer manager's lazy writer. The lazy writer is a system process that flushes out batches of dirty, aged buffers (buffers that contain changes that must be written back to disk before the buffer can be reused for a different page) and makes them available to user processes. |
Dependent item | gcp.cloudsql.mssql.memory.lazy_write_count Preprocessing
|
Memory grants pending | Current number of processes waiting for a workspace memory grant. |
Dependent item | gcp.cloudsql.mssql.memory.memory_grants_pending Preprocessing
|
Page life expectancy | Current number of seconds a page will stay in the buffer pool without references. |
Dependent item | gcp.cloudsql.mssql.memory.page_life_expectancy Preprocessing
|
Batch requests | Total number of Transact-SQL command batches received. |
Dependent item | gcp.cloudsql.mssql.trans.batch_request_count Preprocessing
|
Forwarded records | Total number of records fetched through forwarded record pointers. |
Dependent item | gcp.cloudsql.mssql.trans.forwarded_record_count Preprocessing
|
Full scans | Total number of unrestricted full scans. These can be either base-table or full-index scans. |
Dependent item | gcp.cloudsql.mssql.trans.full_scan_count Preprocessing
|
Page splits | Total number of page splits that occur as the result of overflowing index pages. |
Dependent item | gcp.cloudsql.mssql.trans.page_split_count Preprocessing
|
Probe scans | Total number of probe scans that are used to find at least one single qualified row in an index or base table directly. |
Dependent item | gcp.cloudsql.mssql.trans.probe_scan_count Preprocessing
|
SQL compilations | Total number of SQL compilations. |
Dependent item | gcp.cloudsql.mssql.trans.sql_compilation_count Preprocessing
|
SQL recompilations | Total number of SQL recompilations. |
Dependent item | gcp.cloudsql.mssql.trans.sql_recompilation_count Preprocessing
|
Read page operations | Total number of physical database page reads. This metric counts physical page reads across all databases. |
Dependent item | gcp.cloudsql.mssql.memory.page_ops.read Preprocessing
|
Write age operations | Total number of physical database page writes. This metric counts physical page writes across all databases. |
Dependent item | gcp.cloudsql.mssql.memory.page_ops.write Preprocessing
|
Audits size | Tracks the size in bytes of stored SQLServer audit files on an instance. Empty value if there are no audits enabled. |
Dependent item | gcp.cloudsql.mssql.audits_size Preprocessing
|
Audits successfully uploaded | Tracks the size in bytes of stored SQLServer audit files on an instance. Empty value if there are no audits enabled. |
Dependent item | gcp.cloudsql.mssql.audits_upload_count Preprocessing
|
Resources get | MSSQL resources data in raw format. |
Script | gcp.cloudsql.mssql.resources.get Preprocessing
|
Databases get | MSSQL databases data in raw format. |
Script | gcp.cloudsql.mssql.db.get Preprocessing
|
Schedulers get | MSSQL schedulers data in raw format. |
Script | gcp.cloudsql.mssql.schedulers.get Preprocessing
|
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.cpu.utilization,5m) >= {$CLOUD_SQL.MSSQL.CPU.UTIL.MAX} |
Average | |
Disk space is low | High utilization of the storage space. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.disk.utilization) >= {$CLOUD_SQL.MSSQL.DISK.UTIL.WARN} |
Warning | Depends on:
|
Disk space is critically low | Critical utilization of the disk space. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.disk.utilization) >= {$CLOUD_SQL.MSSQL.DISK.UTIL.CRIT} |
Average | |
High memory utilization | RAM utilization is too high. The system might be slow to respond. |
min(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.memory.utilization,5m) >= {$CLOUD_SQL.MSSQL.RAM.UTIL.MAX} |
High | |
Instance is in suspended state | The instance is in suspended state. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.inst.state) = 1 |
Warning | |
Instance is stopped by the owner | The instance has been stopped by the owner. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.inst.state) = 2 |
Info | |
Instance is in maintenance | The instance is down for maintenance. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.inst.state) = 4 |
Info | |
Instance is in failed state | The instance creation failed, or an operation left the instance in an own bad state. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.inst.state) = 5 |
Average | |
Instance is in unknown state | The state of the instance is unknown. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.inst.state) = 6 |
Average | |
Failed to get the instance state | Failed to get the instance state. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.inst.state) = 10 |
Average | |
Database engine is down | Database engine is down. |
last(/GCP Cloud SQL MSSQL by HTTP/gcp.cloudsql.mssql.db.state)=0 |
Average | Depends on:
|
LLD rule Resources discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Resources discovery | Resources discovery. |
Dependent item | gcp.cloudsql.resources.discovery Preprocessing
|
Item prototypes for Resources discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Resource [{#RESOURCE.NAME}]: Raw data | Data in raw format for the [{#RESOURCE.NAME}] resource. |
Dependent item | gcp.cloudsql.mssql.resource.raw[{#RESOURCE.NAME}] Preprocessing
|
Resource [{#RESOURCE.NAME}]: Deadlocks | Total number of lock requests that resulted in a deadlock for the [{#RESOURCE.NAME}] resource. |
Dependent item | gcp.cloudsql.mssql.resource.deadlock_count[{#RESOURCE.NAME}] Preprocessing
|
Resource [{#RESOURCE.NAME}]: Lock waits | Total number of lock requests that required the caller to wait for the [{#RESOURCE.NAME}] resource. |
Dependent item | gcp.cloudsql.mssql.resource.lock_wait_count[{#RESOURCE.NAME}] Preprocessing
|
Resource [{#RESOURCE.NAME}]: Lock wait time | Total time lock requests were waiting for locks for the [{#RESOURCE.NAME}] resource. |
Dependent item | gcp.cloudsql.mssql.resource.lock_wait_time[{#RESOURCE.NAME}] Preprocessing
|
LLD rule Databases discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Databases discovery | Databases discovery. |
Dependent item | gcp.cloudsql.db.discovery Preprocessing
|
Item prototypes for Databases discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Database [{#DB.NAME}]: Raw data | Data in raw format for the [{#DB.NAME}] database. |
Dependent item | gcp.cloudsql.mssql.db.raw[{#DB.NAME}] Preprocessing
|
Database [{#DB.NAME}]: Log bytes flushed | Total number of log bytes flushed for the [{#DB.NAME}] database. |
Dependent item | gcp.cloudsql.mssql.db.log_bytes_flushed_count[{#DB.NAME}] Preprocessing
|
Database [{#DB.NAME}]: Transactions started | Total number of transactions started for the [{#DB.NAME}] database. |
Dependent item | gcp.cloudsql.mssql.db.transaction_count[{#DB.NAME}] Preprocessing
|
LLD rule Schedulers discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Schedulers discovery | Schedulers discovery. |
Dependent item | gcp.cloudsql.schedulers.discovery Preprocessing
|
Item prototypes for Schedulers discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Scheduler [{#SCHEDULER.ID}]: Raw data | Data in raw format associated with the scheduler that goes by its ID [{#SCHEDULER.ID}]. |
Dependent item | gcp.cloudsql.mssql.scheduler.raw[{#SCHEDULER.ID}] Preprocessing
|
Scheduler [{#SCHEDULER.ID}]: Active workers | Current number of active workers associated with the scheduler that goes by its ID [{#SCHEDULER.ID}]. An active worker is never preemptive, must have an associated task, and is either running, runnable, or suspended. |
Dependent item | gcp.cloudsql.mssql.scheduler.active_workers[{#SCHEDULER.ID}] Preprocessing
|
Scheduler [{#SCHEDULER.ID}]: Current tasks | Current number of present tasks associated with the scheduler that goes by its ID [{#SCHEDULER.ID}]. This count includes tasks that are waiting for a worker to execute them and tasks that are currently waiting or running (in SUSPENDED or RUNNABLE state). |
Dependent item | gcp.cloudsql.mssql.scheduler.current_tasks[{#SCHEDULER.ID}] Preprocessing
|
Scheduler [{#SCHEDULER.ID}]: Current workers | Current number of workers associated with the scheduler that goes by its ID [{#SCHEDULER.ID}]. It includes workers that are not assigned any task. |
Dependent item | gcp.cloudsql.mssql.scheduler.current_workers[{#SCHEDULER.ID}] Preprocessing
|
Scheduler [{#SCHEDULER.ID}]: Pending I/O operations | Current number of pending I/Os waiting to be completed that are associated with the scheduler that goes by its ID [{#SCHEDULER.ID}]. Each scheduler has a list of pending I/Os that are checked to determine whether they have been completed every time there is a context switch. The count is incremented when the request is inserted. This count is decremented when the request is completed. This number does not indicate the state of the I/Os. |
Dependent item | gcp.cloudsql.mssql.scheduler.pending_disk_io[{#SCHEDULER.ID}] Preprocessing
|
Scheduler [{#SCHEDULER.ID}]: Runnable tasks | Current number of workers that are associated with the scheduler that goes by its ID [{#SCHEDULER.ID}] and have assigned tasks waiting to be scheduled on the runnable queue. |
Dependent item | gcp.cloudsql.mssql.scheduler.runnable_tasks[{#SCHEDULER.ID}] Preprocessing
|
Scheduler [{#SCHEDULER.ID}]: Work queue | Current number of tasks in the pending queue associated with the scheduler that goes by its ID [{#SCHEDULER.ID}]. These tasks are waiting for a worker to pick them up. |
Dependent item | gcp.cloudsql.mssql.scheduler.work_queue[{#SCHEDULER.ID}] Preprocessing
|
GCP Cloud SQL MSSQL Replica by HTTP
Overview
This template is designed to monitor Google Cloud Platform Cloud SQL MSSQL read-only replica instances by Zabbix.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- GCP Cloud SQL MSSQL read replicas versions: 2019 Standard/Enterprise, 2017 Standard/Enterprise
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.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$GCP.TIME.WINDOW} | Time interval for the data requests. Supported usage type: 1. The default update interval for most of the items. 2. The minimal time window for the data requested in the Monitoring Query Language REST API request. |
5m |
{$GCP.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Replica metrics get | MSSQL replica metrics data in raw format. |
Script | gcp.cloudsql.mssql.repl.metrics.get Preprocessing
|
Bytes sent to replica | Total number of bytes sent to the remote availability replica. For an async replica, returns the number of bytes before compression. For a sync replica without compression, returns the actual number of bytes. |
Dependent item | gcp.cloudsql.mssql.repl.bytes_sent_to_replica_count Preprocessing
|
Resent messages | Total count of Always On messages to resend. This includes messages that were attempted to be sent but failed and require resending. |
Dependent item | gcp.cloudsql.mssql.repl.resent_message_count Preprocessing
|
Log apply pending queue | Current number of log blocks that are waiting to be applied to replica. |
Dependent item | gcp.cloudsql.mssql.repl.log_apply_pending_queue Preprocessing
|
Log bytes received | Total size of log records received by the replica. |
Dependent item | gcp.cloudsql.mssql.repl.log_bytes_received_count Preprocessing
|
Recovery queue | Current size of log records in bytes in the replica's log files that have not been redone. |
Dependent item | gcp.cloudsql.mssql.repl.recovery_queue Preprocessing
|
Redone bytes | Total size in bytes of redone log records. |
Dependent item | gcp.cloudsql.mssql.repl.redone_bytes_count Preprocessing
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums