This template is designed to monitor Microsoft Azure by HTTP. It works without any external scripts and uses the script item. Currently the template supports discovery of virtual machines (VMs), MySQL and PostgreSQL servers.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, and {$AZURE.SUBSCRIPTION_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
15s |
{$AZURE.MSSQL.DB.LOCATION.MATCHES} | This macro is used in Microsoft SQL databases discovery rule. |
.* |
{$AZURE.MSSQL.DB.LOCATION.NOT_MATCHES} | This macro is used in Microsoft SQL databases discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.MSSQL.DB.NAME.MATCHES} | This macro is used in Microsoft SQL databases discovery rule. |
.* |
{$AZURE.MSSQL.DB.NAME.NOT_MATCHES} | This macro is used in Microsoft SQL databases discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.MSSQL.DB.SIZE.NOT_MATCHES} | This macro is used in Microsoft SQL databases discovery rule. |
^System$ |
{$AZURE.MYSQL.DB.LOCATION.MATCHES} | This macro is used in MySQL servers discovery rule. |
.* |
{$AZURE.MYSQL.DB.LOCATION.NOT_MATCHES} | This macro is used in MySQL servers discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.MYSQL.DB.NAME.MATCHES} | This macro is used in MySQL servers discovery rule. |
.* |
{$AZURE.MYSQL.DB.NAME.NOT_MATCHES} | This macro is used in MySQL servers discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.PGSQL.DB.LOCATION.MATCHES} | This macro is used in PostgreSQL servers discovery rule. |
.* |
{$AZURE.PGSQL.DB.LOCATION.NOT_MATCHES} | This macro is used in PostgreSQL servers discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.PGSQL.DB.NAME.MATCHES} | This macro is used in PostgreSQL servers discovery rule. |
.* |
{$AZURE.PGSQL.DB.NAME.NOT_MATCHES} | This macro is used in PostgreSQL servers discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.RESOURCE_GROUP.MATCHES} | This macro is used in discovery rules. |
.* |
{$AZURE.RESOURCEGROUP.NOTMATCHES} | This macro is used in discovery rules. |
CHANGE_IF_NEEDED |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
{$AZURE.VM.LOCATION.MATCHES} | This macro is used in virtual machines discovery rule. |
.* |
{$AZURE.VM.LOCATION.NOT_MATCHES} | This macro is used in virtual machines discovery rule. |
CHANGE_IF_NEEDED |
{$AZURE.VM.NAME.MATCHES} | This macro is used in virtual machines discovery rule. |
.* |
{$AZURE.VM.NAME.NOT_MATCHES} | This macro is used in virtual machines discovery rule. |
CHANGE_IF_NEEDED |
There are no template links in this template.
Name | Description | Type | Key and additional info |
---|---|---|---|
Microsoft SQL databases discovery | The list of the Microsoft SQL databases is provided by the subscription. |
DEPENDENT | azure.mssql.databases.discovery Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#TYPE} MATCHESREGEX - {#NAME} MATCHESREGEX - {#NAME} NOTMATCHESREGEX - {#LOCATION} MATCHESREGEX - {#LOCATION} NOTMATCHESREGEX - {#GROUP} MATCHESREGEX - {#GROUP} NOTMATCHESREGEX - {#SIZE} NOTMATCHESREGEX Overrides: Serverless |
MySQL servers discovery | The list of the MySQL servers is provided by the subscription. |
DEPENDENT | azure.mysql.servers.discovery Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#TYPE} MATCHESREGEX - {#NAME} MATCHESREGEX - {#NAME} NOTMATCHESREGEX - {#LOCATION} MATCHESREGEX - {#LOCATION} NOTMATCHESREGEX - {#GROUP} MATCHESREGEX - {#GROUP} NOTMATCHESREGEX Overrides: Flexible server |
PostgreSQL servers discovery | The list of the PostgreSQL servers is provided by the subscription. |
DEPENDENT | azure.pgsql.servers.discovery Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#TYPE} MATCHESREGEX - {#NAME} MATCHESREGEX - {#NAME} NOTMATCHESREGEX - {#LOCATION} MATCHESREGEX - {#LOCATION} NOTMATCHESREGEX - {#GROUP} MATCHESREGEX - {#GROUP} NOTMATCHESREGEX Overrides: Flexible server |
Virtual machines discovery | The list of the virtual machines is provided by the subscription. |
DEPENDENT | azure.vm.discovery Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#TYPE} MATCHESREGEX - {#NAME} MATCHESREGEX - {#NAME} NOTMATCHESREGEX - {#LOCATION} MATCHESREGEX - {#LOCATION} NOTMATCHESREGEX - {#GROUP} MATCHESREGEX - {#GROUP} NOTMATCHESREGEX |
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure: Get resources | The result of API requests is expressed in the JSON. |
SCRIPT | azure.get.resources Expression: The text is too long. Please see the template. |
Azure | Azure: Get errors | A list of errors from API requests. |
DEPENDENT | azure.get.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure by HTTP/azure.get.errors))>0 |
AVERAGE |
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.
This template is designed to monitor Microsoft Azure virtual machines by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure virtual machine ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
{$AZURE.VM.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.vm.data.get Expression: The text is too long. Please see the template. |
Azure | Azure: Get errors | A list of errors from API requests. |
DEPENDENT | azure.vm.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure: Availability state | The availability status of the resource. |
DEPENDENT | azure.vm.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.vm.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure: Percentage CPU | The percentage of allocated compute units that are currently in use by the Virtual Machine(s). |
DEPENDENT | azure.vm.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure: Disk read rate | Bytes read from the disk during the monitoring period (1 minute). |
DEPENDENT | azure.vm.disk.read.bytes Preprocessing: - JSONPATH: - MULTIPLIER: |
Azure | Azure: Disk write rate | Bytes written to the disk during the monitoring period (1 minute). |
DEPENDENT | azure.vm.disk.write.bytes Preprocessing: - JSONPATH: - MULTIPLIER: |
Azure | Azure: Disk read Operations/Sec | The count of read operations from the disk per second. |
DEPENDENT | azure.vm.disk.read.ops Preprocessing: - JSONPATH: |
Azure | Azure: Disk write Operations/Sec | The count of write operations to the disk per second. |
DEPENDENT | azure.vm.disk.write.ops Preprocessing: - JSONPATH: |
Azure | Azure: CPU credits remaining | The total number of credits available to burst. Only available on B-series burstable VMs. |
DEPENDENT | azure.vm.cpu.credits.remaining Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: CPU credits consumed | The total number of credits consumed by the Virtual Machine. Only available on B-series burstable VMs. |
DEPENDENT | azure.vm.cpu.credits.consumed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk read rate | Bytes/Sec read from a single disk during the monitoring period. |
DEPENDENT | azure.vm.data.disk.read.bps Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk write rate | Bytes/Sec written to a single disk during the monitoring period. |
DEPENDENT | azure.vm.data.disk.write.bps Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk read operations/sec | The read IOPS from a single disk during the monitoring period. |
DEPENDENT | azure.vm.data.disk.read.ops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk write operations/sec | The write IOPS from a single disk during the monitoring period. |
DEPENDENT | azure.vm.data.disk.write.ops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk queue depth | The queue depth (or queue length) of the Data Disk. |
DEPENDENT | azure.vm.data.disk.queue.depth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk bandwidth consumed percentage | The percentage of the Data Disk bandwidth consumed per minute. |
DEPENDENT | azure.vm.data.disk.bandwidth.consumed.percentage Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk IOPS consumed percentage | The percentage of the Data Disk I/Os consumed per minute. |
DEPENDENT | azure.vm.data.disk.iops.consumed.percentage Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk target bandwidth | Baseline bytes per second throughput Data Disk can achieve without bursting. |
DEPENDENT | azure.vm.data.disk.target.bandwidth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk target IOPS | Baseline IOPS Data Disk can achieve without bursting. |
DEPENDENT | azure.vm.data.disk.target.iops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk max burst bandwidth | Maximum bytes per second throughput Data Disk can achieve with bursting. |
DEPENDENT | azure.vm.data.disk.max.bandwidth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk max burst IOPS | Maximum IOPS Data Disk can achieve with bursting. |
DEPENDENT | azure.vm.data.disk.max.iops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk used burst BPS credits percentage | The percentage of the Data Disk burst bandwidth credits used so far. |
DEPENDENT | azure.vm.data.disk.used.burst.bandwidth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Data disk used burst IO credits percentage | The percentage of the Data Disk burst I/O credits used so far. |
DEPENDENT | azure.vm.data.disk.used.burst.iops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk read rate | Bytes/Sec read from a single disk during the monitoring period for OS disk. |
DEPENDENT | azure.vm.os.disk.read.bps Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk write rate | Bytes/Sec written to a single disk during the monitoring period for OS disk. |
DEPENDENT | azure.vm.os.disk.write.bps Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk read operations/sec | The read IOPS from a single disk during the monitoring period for OS disk. |
DEPENDENT | azure.vm.os.disk.read.ops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk write operations/sec | The write IOPS from a single disk during the monitoring period for OS disk. |
DEPENDENT | azure.vm.os.disk.write.ops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk queue depth | The OS disk queue depth (or queue length). |
DEPENDENT | azure.vm.os.disk.queue.depth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk bandwidth consumed percentage | The percentage of the operating system disk bandwidth consumed per minute. |
DEPENDENT | azure.vm.os.disk.bandwidth.consumed.percentage Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk IOPS consumed percentage | The percentage of the operating system disk I/Os consumed per minute. |
DEPENDENT | azure.vm.os.disk.iops.consumed.percentage Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk target bandwidth | Baseline bytes per second throughput OS Disk can achieve without bursting. |
DEPENDENT | azure.vm.os.disk.target.bandwidth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk target IOPS | Baseline IOPS OS Disk can achieve without bursting. |
DEPENDENT | azure.vm.os.disk.target.iops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk max burst bandwidth | Maximum bytes per second throughput OS Disk can achieve with bursting. |
DEPENDENT | azure.vm.os.disk.max.bandwidth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk max burst IOPS | Maximum IOPS OS Disk can achieve with bursting. |
DEPENDENT | azure.vm.os.disk.max.iops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk used burst BPS credits percentage | The percentage of the OS Disk burst bandwidth credits used so far. |
DEPENDENT | azure.vm.os.disk.used.burst.bandwidth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: OS disk used burst IO credits percentage | Percentage of OS Disk burst I/O credits used so far. |
DEPENDENT | azure.vm.os.disk.used.burst.iops Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Inbound flows | Inbound Flows are number of the current flows in the inbound direction (traffic going into the VM). |
DEPENDENT | azure.vm.flows.inbound Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Outbound flows | Outbound Flows are number of the current flows in the outbound direction (traffic going out of the VM). |
DEPENDENT | azure.vm.flows.outbound Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Inbound flows max creation rate | The maximum creation rate of the inbound flows (traffic going into the VM). |
DEPENDENT | azure.vm.flows.inbound.max Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Outbound flows max creation rate | The maximum creation rate of the outbound flows (traffic going out of the VM). |
DEPENDENT | azure.vm.flows.outbound.max Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Premium data disk cache read hit | Premium Data Disk cache read hit. |
DEPENDENT | azure.vm.premium.data.disk.cache.read.hit Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Premium data disk cache read miss | Premium Data Disk cache read miss. |
DEPENDENT | azure.vm.premium.data.disk.cache.read.miss Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Premium OS disk cache read hit | Premium OS disk cache read hit. |
DEPENDENT | azure.vm.premium.os.disk.cache.read.hit Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: Premium OS disk cache read miss | Premium OS disk cache read miss. |
DEPENDENT | azure.vm.premium.os.disk.cache.read.miss Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure: VM cached bandwidth consumed percentage | Percentage of cached disk bandwidth consumed by the VM. |
DEPENDENT | azure.vm.cached.bandwidth.consumed.percentage Preprocessing: - JSONPATH: |
Azure | Azure: VM cached IOPS consumed percentage | Percentage of cached disk IOPS consumed by the VM. |
DEPENDENT | azure.vm.cached.iops.consumed.percentage Preprocessing: - JSONPATH: |
Azure | Azure: VM uncached bandwidth consumed percentage | The percentage of the uncached disk bandwidth consumed by the VM. |
DEPENDENT | azure.vm.uncached.bandwidth.consumed.percentage Preprocessing: - JSONPATH: |
Azure | Azure: VM uncached IOPS consumed percentage | The percentage of the uncached disk IOPS consumed by the VM. |
DEPENDENT | azure.vm.uncached.iops.consumed.percentage Preprocessing: - JSONPATH: |
Azure | Azure: Network in total | The number of bytes received on all network interfaces by the Virtual Machine(s) (Incoming Traffic). |
DEPENDENT | azure.vm.network.in.total Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure: Network out total | The number of bytes out on all network interfaces by the Virtual Machine(s) (Outgoing Traffic). |
DEPENDENT | azure.vm.network.out.total Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure: Available memory | The amount of physical memory, in bytes, immediately available for allocation to a process or for system use in the Virtual Machine. |
DEPENDENT | azure.vm.memory.available Preprocessing: - JSONPATH: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure virtual machine by HTTP/azure.vm.data.errors))>0 |
AVERAGE | |
Azure: Virtual machine is unavailable | The resource state is unavailable. |
last(/Azure virtual machine by HTTP/azure.vm.availability.state)=2 |
HIGH | |
Azure: Virtual machine is degraded | The resource is in degraded state. |
last(/Azure virtual machine by HTTP/azure.vm.availability.state)=1 |
AVERAGE | |
Azure: Virtual machine is in unknown state | The resource state is unknown. |
last(/Azure virtual machine by HTTP/azure.vm.availability.state)=3 |
WARNING | |
Azure: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure virtual machine by HTTP/azure.vm.cpu.percentage,5m)>{$AZURE.VM.CPU.UTIL.CRIT} |
HIGH |
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.
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.DB.ABORTED_CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for trigger expression. |
25 |
{$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization expressed in %. |
80 |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure MySQL server ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure MySQL: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.db.mysql.data.get Expression: The text is too long. Please see the template. |
Azure | Azure MySQL: Get errors | A list of errors from API requests. |
DEPENDENT | azure.db.mysql.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure MySQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.mysql.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure MySQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.mysql.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure MySQL: Percentage CPU | The CPU percent of a host. |
DEPENDENT | azure.db.mysql.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Memory utilization | The memory percent of a host. |
DEPENDENT | azure.db.mysql.memory.percentage Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Network out | Network egress of a host in bytes. |
DEPENDENT | azure.db.mysql.network.egress Preprocessing: - JSONPATH: - MULTIPLIER: |
Azure | Azure MySQL: Network in | Network ingress of a host in bytes. |
DEPENDENT | azure.db.mysql.network.ingress Preprocessing: - JSONPATH: - MULTIPLIER: |
Azure | Azure MySQL: Connections active | The count of active connections. |
DEPENDENT | azure.db.mysql.connections.active Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Connections total | The count of total connections. |
DEPENDENT | azure.db.mysql.connections.total Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Connections aborted | The count of aborted connections. |
DEPENDENT | azure.db.mysql.connections.aborted Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Queries | The count of queries. |
DEPENDENT | azure.db.mysql.queries Preprocessing: - JSONPATH: |
Azure | Azure MySQL: IO consumption percent | The IO percent. |
DEPENDENT | azure.db.mysql.io.consumption.percent Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Storage percent | The storage utilization expressed in %. |
DEPENDENT | azure.db.mysql.storage.percent Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Storage used | Used storage space expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.used Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Storage limit | The storage limit expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.limit Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Backup storage used | Used backup storage expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.backup.used Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Replication lag | The replication lag expressed in seconds. |
DEPENDENT | azure.db.mysql.replication.lag Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure MySQL: CPU credits remaining | Remaining CPU credits. |
DEPENDENT | azure.db.mysql.cpu.credits.remaining Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure MySQL: CPU credits consumed | Consumed CPU credits. |
DEPENDENT | azure.db.mysql.cpu.credits.consumed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure MySQL: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure MySQL flexible server by HTTP/azure.db.mysql.data.errors))>0 |
AVERAGE | |
Azure MySQL: MySQL server is unavailable | The resource state is unavailable. |
last(/Azure MySQL flexible server by HTTP/azure.db.mysql.availability.state)=2 |
HIGH | |
Azure MySQL: MySQL server is degraded | The resource is in degraded state. |
last(/Azure MySQL flexible server by HTTP/azure.db.mysql.availability.state)=1 |
AVERAGE | |
Azure MySQL: MySQL server is in unknown state | The resource state is unknown. |
last(/Azure MySQL flexible server by HTTP/azure.db.mysql.availability.state)=3 |
WARNING | |
Azure MySQL: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure MySQL flexible server by HTTP/azure.db.mysql.cpu.percentage,5m)>{$AZURE.DB.CPU.UTIL.CRIT} |
HIGH | |
Azure MySQL: Server has aborted connections | The number of failed attempts to connect to the MySQL server is more than {$AZURE.DB.ABORTED_CONN.MAX.WARN}. |
min(/Azure MySQL flexible server by HTTP/azure.db.mysql.connections.aborted,5m)>{$AZURE.DB.ABORTED_CONN.MAX.WARN} |
AVERAGE | |
Azure MySQL: Storage space is critically low | Critical utilization of the storage space. |
last(/Azure MySQL flexible server by HTTP/azure.db.mysql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.CRIT} |
AVERAGE | |
Azure MySQL: Storage space is low | High utilization of the storage space. |
last(/Azure MySQL flexible server by HTTP/azure.db.mysql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.WARN} |
WARNING |
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.
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$AZURE.DB.FAILED_CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for trigger expression. |
25 |
{$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of the memory utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization expressed in %. |
80 |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure MySQL server ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure MySQL: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.db.mysql.data.get Expression: The text is too long. Please see the template. |
Azure | Azure MySQL: Get errors | A list of errors from API requests. |
DEPENDENT | azure.db.mysql.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure MySQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.mysql.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure MySQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.mysql.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure MySQL: Percentage CPU | The CPU percent of a host. |
DEPENDENT | azure.db.mysql.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Memory utilization | The memory percent of a host. |
DEPENDENT | azure.db.mysql.memory.percentage Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Network out | Network outbound traffic across the active connections. |
DEPENDENT | azure.db.mysql.network.egress Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure MySQL: Network in | Network inbound traffic across the active connections. |
DEPENDENT | azure.db.mysql.network.ingress Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure MySQL: Connections active | The count of active connections. |
DEPENDENT | azure.db.mysql.connections.active Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Connections failed | The count of failed connections. |
DEPENDENT | azure.db.mysql.connections.failed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure MySQL: IO consumption percent | The IO percent. |
DEPENDENT | azure.db.mysql.io.consumption.percent Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Storage percent | The storage utilization expressed in %. |
DEPENDENT | azure.db.mysql.storage.percent Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Storage used | Used storage space expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.used Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Storage limit | The storage limit expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.limit Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Backup storage used | Used backup storage expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.backup.used Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Replication lag | The replication lag expressed in seconds. |
DEPENDENT | azure.db.mysql.replication.lag Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure MySQL: Server log storage percent | The storage utilization by a server log expressed in %. |
DEPENDENT | azure.db.mysql.storage.server.log.percent Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Server log storage used | The storage space used by a server log expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.server.log.used Preprocessing: - JSONPATH: |
Azure | Azure MySQL: Server log storage limit | The storage limit of a server log expressed in bytes. |
DEPENDENT | azure.db.mysql.storage.server.log.limit Preprocessing: - JSONPATH: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure MySQL: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure MySQL single server by HTTP/azure.db.mysql.data.errors))>0 |
AVERAGE | |
Azure MySQL: MySQL server is unavailable | The resource state is unavailable. |
last(/Azure MySQL single server by HTTP/azure.db.mysql.availability.state)=2 |
HIGH | |
Azure MySQL: MySQL server is degraded | The resource is in degraded state. |
last(/Azure MySQL single server by HTTP/azure.db.mysql.availability.state)=1 |
AVERAGE | |
Azure MySQL: MySQL server is in unknown state | The resource state is unknown. |
last(/Azure MySQL single server by HTTP/azure.db.mysql.availability.state)=3 |
WARNING | |
Azure MySQL: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure MySQL single server by HTTP/azure.db.mysql.cpu.percentage,5m)>{$AZURE.DB.CPU.UTIL.CRIT} |
HIGH | |
Azure MySQL: High memory utilization | The system is running out of free memory. |
min(/Azure MySQL single server by HTTP/azure.db.mysql.memory.percentage,5m)>{$AZURE.DB.MEMORY.UTIL.CRIT} |
AVERAGE | |
Azure MySQL: Server has failed connections | The number of failed attempts to connect to the MySQL server is more than {$AZURE.DB.FAILED_CONN.MAX.WARN}. |
min(/Azure MySQL single server by HTTP/azure.db.mysql.connections.failed,5m)>{$AZURE.DB.FAILED_CONN.MAX.WARN} |
AVERAGE | |
Azure MySQL: Storage space is critically low | Critical utilization of the storage space. |
last(/Azure MySQL single server by HTTP/azure.db.mysql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.CRIT} |
AVERAGE | |
Azure MySQL: Storage space is low | High utilization of the storage space. |
last(/Azure MySQL single server by HTTP/azure.db.mysql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.WARN} |
WARNING |
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.
This template is designed to monitor Microsoft Azure PostgreSQL flexible servers by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of the memory utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization expressed in %. |
80 |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure PostgreSQL server ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure PostgreSQL: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.db.pgsql.data.get Expression: The text is too long. Please see the template. |
Azure | Azure PostgreSQL: Get errors | A list of errors from API requests. |
DEPENDENT | azure.db.pgsql.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure PostgreSQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.pgsql.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure PostgreSQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.pgsql.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure PostgreSQL: Percentage CPU | The CPU percent of a host. |
DEPENDENT | azure.db.pgsql.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Memory utilization | The memory percent of a host. |
DEPENDENT | azure.db.pgsql.memory.percentage Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Network out | Network outbound traffic across the active connections. |
DEPENDENT | azure.db.pgsql.network.egress Preprocessing: - JSONPATH: - MULTIPLIER: |
Azure | Azure PostgreSQL: Network in | Network inbound traffic across the active connections. |
DEPENDENT | azure.db.pgsql.network.ingress Preprocessing: - JSONPATH: - MULTIPLIER: |
Azure | Azure PostgreSQL: Connections active | The count of active connections. |
DEPENDENT | azure.db.pgsql.connections.active Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Connections succeeded | The count of succeeded connections. |
DEPENDENT | azure.db.pgsql.connections.succeeded Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Connections failed | The count of failed connections. |
DEPENDENT | azure.db.pgsql.connections.failed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Storage percent | The storage utilization expressed in %. |
DEPENDENT | azure.db.pgsql.storage.percent Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Storage used | Used storage space expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.used Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Storage free | Free storage space expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.free Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Backup storage used | Used backup storage expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.backup.used Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: CPU credits remaining | The total number of credits available to burst. |
DEPENDENT | azure.db.pgsql.cpu.credits.remaining Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: CPU credits consumed | The total number of credits consumed by the database server. |
DEPENDENT | azure.db.pgsql.cpu.credits.consumed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Data disk queue depth | The number of outstanding I/O operations to the data disk. |
DEPENDENT | azure.db.pgsql.disk.queue.depth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Data disk IOPS | I/O Operations per second. |
DEPENDENT | azure.db.pgsql.iops Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Data disk read IOPS | The number of the data disk I/O read operations per second. |
DEPENDENT | azure.db.pgsql.iops.read Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Data disk write IOPS | The number of the data disk I/O write operations per second. |
DEPENDENT | azure.db.pgsql.iops.write Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Data disk read Bps | Bytes read per second from the data disk during the monitoring period. |
DEPENDENT | azure.db.pgsql.disk.bps.read Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Data disk write Bps | Bytes written per second to the data disk during the monitoring period. |
DEPENDENT | azure.db.pgsql.disk.bps.write Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Transaction log storage used | The storage space used by a transaction log expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.txlogs.used Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Maximum used transaction IDs | The maximum number of used transaction IDs. |
DEPENDENT | azure.db.pgsql.txid.used.max Preprocessing: - JSONPATH: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure PostgreSQL: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.data.errors))>0 |
AVERAGE | |
Azure PostgreSQL: PostgreSQL server is unavailable | The resource state is unavailable. |
last(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.availability.state)=2 |
HIGH | |
Azure PostgreSQL: PostgreSQL server is degraded | The resource is in degraded state. |
last(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.availability.state)=1 |
AVERAGE | |
Azure PostgreSQL: PostgreSQL server is in unknown state | The resource state is unknown. |
last(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.availability.state)=3 |
WARNING | |
Azure PostgreSQL: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.cpu.percentage,5m)>{$AZURE.DB.CPU.UTIL.CRIT} |
HIGH | |
Azure PostgreSQL: High memory utilization | The system is running out of free memory. |
min(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.memory.percentage,5m)>{$AZURE.DB.MEMORY.UTIL.CRIT} |
AVERAGE | |
Azure PostgreSQL: Storage space is critically low | Critical utilization of the storage space. |
last(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.CRIT} |
AVERAGE | |
Azure PostgreSQL: Storage space is low | High utilization of the storage space. |
last(/Azure PostgreSQL flexible server by HTTP/azure.db.pgsql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.WARN} |
WARNING |
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.
This template is designed to monitor Microsoft Azure PostgreSQL servers by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of the memory utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization expressed in %. |
80 |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure PostgreSQL server ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure PostgreSQL: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.db.pgsql.data.get Expression: The text is too long. Please see the template. |
Azure | Azure PostgreSQL: Get errors | A list of errors from API requests. |
DEPENDENT | azure.db.pgsql.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure PostgreSQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.pgsql.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure PostgreSQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.pgsql.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure PostgreSQL: Percentage CPU | The CPU percent of a host. |
DEPENDENT | azure.db.pgsql.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Memory utilization | The memory percent of a host. |
DEPENDENT | azure.db.pgsql.memory.percentage Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Network out | Network outbound traffic across the active connections. |
DEPENDENT | azure.db.pgsql.network.egress Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure PostgreSQL: Network in | Network inbound traffic across the active connections. |
DEPENDENT | azure.db.pgsql.network.ingress Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure PostgreSQL: Connections active | The count of active connections. |
DEPENDENT | azure.db.pgsql.connections.active Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Connections failed | The count of failed connections. |
DEPENDENT | azure.db.pgsql.connections.failed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: IO consumption percent | The IO Percent. |
DEPENDENT | azure.db.pgsql.io.consumption.percent Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Storage percent | The storage utilization expressed in %. |
DEPENDENT | azure.db.pgsql.storage.percent Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Storage used | Used storage space expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.used Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Storage limit | The storage limit expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.limit Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Backup storage used | Used backup storage expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.backup.used Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Replication lag | The replication lag expressed in seconds. |
DEPENDENT | azure.db.pgsql.replica.log.delay Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Max lag across replicas in bytes | Lag expressed in bytes for the most lagging replica. |
DEPENDENT | azure.db.pgsql.replica.log.delay.bytes Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure PostgreSQL: Server log storage percent | The storage utilization by a server log expressed in %. |
DEPENDENT | azure.db.pgsql.storage.server.log.percent Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Server log storage used | The storage space used by a server log expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.server.log.used Preprocessing: - JSONPATH: |
Azure | Azure PostgreSQL: Server log storage limit | The storage limit of a server log expressed in bytes. |
DEPENDENT | azure.db.pgsql.storage.server.log.limit Preprocessing: - JSONPATH: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure PostgreSQL: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.data.errors))>0 |
AVERAGE | |
Azure PostgreSQL: PostgreSQL server is unavailable | The resource state is unavailable. |
last(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.availability.state)=2 |
HIGH | |
Azure PostgreSQL: PostgreSQL server is degraded | The resource is in degraded state. |
last(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.availability.state)=1 |
AVERAGE | |
Azure PostgreSQL: PostgreSQL server is in unknown state | The resource state is unknown. |
last(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.availability.state)=3 |
WARNING | |
Azure PostgreSQL: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.cpu.percentage,5m)>{$AZURE.DB.CPU.UTIL.CRIT} |
HIGH | |
Azure PostgreSQL: High memory utilization | The system is running out of free memory. |
min(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.memory.percentage,5m)>{$AZURE.DB.MEMORY.UTIL.CRIT} |
AVERAGE | |
Azure PostgreSQL: Storage space is critically low | Critical utilization of the storage space. |
last(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.CRIT} |
AVERAGE | |
Azure PostgreSQL: Storage space is low | High utilization of the storage space. |
last(/Azure PostgreSQL single server by HTTP/azure.db.pgsql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.WARN} |
WARNING |
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.
This template is designed to monitor Microsoft SQL serverless databases by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of the memory utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization expressed in %. |
80 |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure Microsoft SQL database ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure Microsoft SQL: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.db.mssql.data.get Expression: The text is too long. Please see the template. |
Azure | Azure Microsoft SQL: Get errors | A list of errors from API requests. |
DEPENDENT | azure.db.mssql.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure Microsoft SQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.mssql.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure Microsoft SQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.mssql.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure Microsoft SQL: Percentage CPU | The CPU percent of a host. |
DEPENDENT | azure.db.mssql.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Data IO percentage | The physical data read percentage. |
DEPENDENT | azure.db.mssql.data.read.percentage Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Log IO percentage | Log IO percentage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.log.write.percentage Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Data space used | Data space used. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.storage.used Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Connections successful | The count of successful connections. |
DEPENDENT | azure.db.mssql.connections.successful Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Connections failed: System errors | The count of failed connections with system errors. |
DEPENDENT | azure.db.mssql.connections.failed.system Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Connections blocked by firewall | The count of connections blocked by firewall. |
DEPENDENT | azure.db.mssql.firewall.blocked Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Deadlocks | The count of deadlocks. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.deadlocks Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Data space used percent | Data space used percent. Not applicable to data warehouses or hyperscale databases. |
DEPENDENT | azure.db.mssql.storage.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: In-Memory OLTP storage percent | In-Memory OLTP storage percent. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.storage.xtp.percent Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Workers percentage | Workers percentage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.workers.percent Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Sessions percentage | Sessions percentage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.sessions.percent Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: CPU limit | The CPU limit. Applies to vCore-based databases. |
DEPENDENT | azure.db.mssql.cpu.limit Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: CPU used | CPU used. Applies to vCore-based databases. |
DEPENDENT | azure.db.mssql.cpu.used Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: SQL Server process core percent | CPU usage as a percentage of the SQL DB process. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.server.cpu.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: SQL Server process memory percent | Memory usage as a percentage of the SQL DB process. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.server.memory.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Tempdb data file size | Space used in tempdb data files in bytes. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.tempdb.data.size Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure Microsoft SQL: Tempdb log file size | Space used in tempdb transaction log file in bytes. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.tempdb.log.size Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure Microsoft SQL: Tempdb log used percent | Space used percentage in tempdb transaction log file. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.tempdb.log.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: App CPU billed | App CPU billed. Applies to serverless databases. |
DEPENDENT | azure.db.mssql.app.cpu.billed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: App CPU percentage | App CPU percentage. Applies to serverless databases. |
DEPENDENT | azure.db.mssql.app.cpu.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: App memory percentage | App memory percentage. Applies to serverless databases. |
DEPENDENT | azure.db.mssql.app.memory.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Data space allocated | Allocated data storage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.storage.allocated Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure Microsoft SQL: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.data.errors))>0 |
AVERAGE | |
Azure Microsoft SQL: Microsoft SQL database is unavailable | The resource state is unavailable. |
last(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.availability.state)=2 |
HIGH | |
Azure Microsoft SQL: Microsoft SQL database is degraded | The resource is in degraded state. |
last(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.availability.state)=1 |
AVERAGE | |
Azure Microsoft SQL: Microsoft SQL database is in unknown state | The resource state is unknown. |
last(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.availability.state)=3 |
WARNING | |
Azure Microsoft SQL: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.cpu.percentage,5m)>{$AZURE.DB.CPU.UTIL.CRIT} |
HIGH | |
Azure Microsoft SQL: Storage space is critically low | Critical utilization of the storage space. |
last(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.CRIT} |
AVERAGE | |
Azure Microsoft SQL: Storage space is low | High utilization of the storage space. |
last(/Azure Microsoft SQL serverless database by HTTP/azure.db.mssql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.WARN} |
WARNING |
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.
This template is designed to monitor Microsoft SQL databases by HTTP. It works without any external scripts and uses the script item.
For Zabbix version: 6.2 and higher.
See Zabbix template operation for basic instructions.
Create an Azure service principal via the Azure command-line interface (Azure CLI) for your subscription.
az ad sp create-for-rbac --name zabbix --role reader --scope /subscriptions/<subscription_id>
See Azure documentation for more details.
{$AZURE.APP_ID}
, {$AZURE.PASSWORD}
, {$AZURE.TENANT_ID}
, {$AZURE.SUBSCRIPTION_ID}
, and {$AZURE.RESOURCE_ID}
.No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AZURE.APP_ID} | The AppID of Microsoft Azure. |
`` |
{$AZURE.DATA.TIMEOUT} | A response timeout for an API. |
60s |
{$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of the memory utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization expressed in %. |
90 |
{$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization expressed in %. |
80 |
{$AZURE.PASSWORD} | Microsoft Azure password. |
`` |
{$AZURE.RESOURCE_ID} | Microsoft Azure Microsoft SQL database ID. |
`` |
{$AZURE.SUBSCRIPTION_ID} | Microsoft Azure subscription ID. |
`` |
{$AZURE.TENANT_ID} | Microsoft Azure tenant ID. |
`` |
There are no template links in this template.
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
Azure | Azure Microsoft SQL: Get data | The result of API requests is expressed in the JSON. |
SCRIPT | azure.db.mssql.data.get Expression: The text is too long. Please see the template. |
Azure | Azure Microsoft SQL: Get errors | A list of errors from API requests. |
DEPENDENT | azure.db.mssql.data.errors Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure Microsoft SQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.mssql.availability.state Preprocessing: - JSONPATH: ⛔️ONFAIL: - STRREPLACE: - STRREPLACE: - STRREPLACE: - STRREPLACE: - INRANGE: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
Azure | Azure Microsoft SQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.mssql.availability.details Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure Microsoft SQL: Percentage CPU | The CPU percent of a host. |
DEPENDENT | azure.db.mssql.cpu.percentage Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Data IO percentage | The physical data read percentage. |
DEPENDENT | azure.db.mssql.data.read.percentage Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Log IO percentage | Log IO percentage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.log.write.percentage Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Data space used | Data space used. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.storage.used Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Connections successful | The count of successful connections. |
DEPENDENT | azure.db.mssql.connections.successful Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Connections failed: System errors | The count of failed connections with system errors. |
DEPENDENT | azure.db.mssql.connections.failed.system Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Connections blocked by firewall | The count of connections blocked by firewall. |
DEPENDENT | azure.db.mssql.firewall.blocked Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Deadlocks | The count of deadlocks. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.deadlocks Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Data space used percent | Data space used percent. Not applicable to data warehouses or hyperscale databases. |
DEPENDENT | azure.db.mssql.storage.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: In-Memory OLTP storage percent | In-Memory OLTP storage percent. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.storage.xtp.percent Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Workers percentage | Workers percentage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.workers.percent Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Sessions percentage | Sessions percentage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.sessions.percent Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: Sessions count | The number of active sessions. Not applicable to Synapse DW Analytics. |
DEPENDENT | azure.db.mssql.sessions.count Preprocessing: - JSONPATH: |
Azure | Azure Microsoft SQL: CPU limit | The CPU limit. Applies to vCore-based databases. |
DEPENDENT | azure.db.mssql.cpu.limit Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: CPU used | CPU used. Applies to vCore-based databases. |
DEPENDENT | azure.db.mssql.cpu.used Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: SQL Server process core percent | CPU usage as a percentage of the SQL DB process. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.server.cpu.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: SQL Server process memory percent | Memory usage as a percentage of the SQL DB process. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.server.memory.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Tempdb data file size | Space used in tempdb data files in bytes. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.tempdb.data.size Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure Microsoft SQL: Tempdb log file size | Space used in tempdb transaction log file in bytes. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.tempdb.log.size Preprocessing: - JSONPATH: ⛔️ON_FAIL: - MULTIPLIER: |
Azure | Azure Microsoft SQL: Tempdb log used percent | Space used percentage in tempdb transaction log file. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.tempdb.log.percent Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Data space allocated | Allocated data storage. Not applicable to data warehouses. |
DEPENDENT | azure.db.mssql.storage.allocated Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Azure | Azure Microsoft SQL: Full backup storage size | Cumulative full backup storage size. Applies to vCore-based databases. Not applicable to Hyperscale databases. |
DEPENDENT | azure.db.mssql.storage.backup.size Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure Microsoft SQL: Differential backup storage size | Cumulative differential backup storage size. Applies to vCore-based databases. Not applicable to Hyperscale databases. |
DEPENDENT | azure.db.mssql.storage.backup.diff.size Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Azure | Azure Microsoft SQL: Log backup storage size | Cumulative log backup storage size. Applies to vCore-based and Hyperscale databases. |
DEPENDENT | azure.db.mssql.storage.backup.log.size Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Azure Microsoft SQL: There are errors in requests to API | Zabbix has received errors in response to API requests. |
length(last(/Azure Microsoft SQL database by HTTP/azure.db.mssql.data.errors))>0 |
AVERAGE | |
Azure Microsoft SQL: Microsoft SQL database is unavailable | The resource state is unavailable. |
last(/Azure Microsoft SQL database by HTTP/azure.db.mssql.availability.state)=2 |
HIGH | |
Azure Microsoft SQL: Microsoft SQL database is degraded | The resource is in degraded state. |
last(/Azure Microsoft SQL database by HTTP/azure.db.mssql.availability.state)=1 |
AVERAGE | |
Azure Microsoft SQL: Microsoft SQL database is in unknown state | The resource state is unknown. |
last(/Azure Microsoft SQL database by HTTP/azure.db.mssql.availability.state)=3 |
WARNING | |
Azure Microsoft SQL: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Azure Microsoft SQL database by HTTP/azure.db.mssql.cpu.percentage,5m)>{$AZURE.DB.CPU.UTIL.CRIT} |
HIGH | |
Azure Microsoft SQL: Storage space is critically low | Critical utilization of the storage space. |
last(/Azure Microsoft SQL database by HTTP/azure.db.mssql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.CRIT} |
AVERAGE | |
Azure Microsoft SQL: Storage space is low | High utilization of the storage space. |
last(/Azure Microsoft SQL database by HTTP/azure.db.mssql.storage.percent)>{$AZURE.DB.STORAGE.PUSED.WARN} |
WARNING |
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.
For Zabbix version: 6.2 and higher
The template to monitor AWS S3 bucket by HTTP via Zabbix that works without any external scripts.
Most of the metrics are collected in one go, thanks to Zabbix bulk data collection.
NOTE
This template uses the GetMetricData CloudWatch API calls to list and retrieve metrics.
For more information, please refer to the (CloudWatch pricing)[https://aws.amazon.com/cloudwatch/pricing/] page.
Additional information about metrics and used API methods:
See Zabbix template operation for basic instructions.
The template gets AWS S3 metrics and uses the script item to make HTTP requests to the CloudWatch API.
Before using the template, you need to create an IAM policy for the Zabbix role in your AWS account with the necessary permissions.
Add the following required permissions to your Zabbix IAM policy in order to collect Amazon S3 metrics.
{
"Version":"2012-10-17",
"Statement":[
{
"Action":[
"cloudwatch:Describe*",
"cloudwatch:Get*",
"cloudwatch:List*"
],
"Effect":"Allow",
"Resource":"*"
}
]
}
To gather Request metrics, enable Requests metrics on your Amazon S3 buckets from the AWS console.
Set the macros "{$AWS.ACCESS.KEY.ID}", "{$AWS.SECRET.ACCESS.KEY}", "{$AWS.REGION}", "{$AWS.S3.FILTER.ID}", "{$AWS.S3.BUCKET.NAME}"
For more information about manage access keys, see official documentation
Also, see the Macros section for a list of macros used by LLD filters.
Additional information about metrics and used API methods:
No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AWS.ACCESS.KEY.ID} | Access key ID. |
`` |
{$AWS.REGION} | Amazon S3 Region code. |
us-west-1 |
{$AWS.S3.BUCKET.NAME} | S3 bucket name. |
`` |
{$AWS.S3.FILTER.ID} | S3 bucket requests filter identifier. |
`` |
{$AWS.S3.LLD.FILTER.ALARM_NAME.MATCHES} | Filter of discoverable alarms by name. |
.* |
{$AWS.S3.LLD.FILTER.ALARMNAME.NOTMATCHES} | Filter to exclude discovered alarms by name. |
CHANGE_IF_NEEDED |
{$AWS.SECRET.ACCESS.KEY} | Secret access key. |
`` |
{$AWS.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
`` |
There are no template links in this template.
Name | Description | Type | Key and additional info |
---|---|---|---|
Bucket Alarms discovery | Discovery bucket alarms. |
DEPENDENT | aws.s3.alarms.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#ALARMNAME} MATCHESREGEX - {#ALARMNAME} NOTMATCHES_REGEX |
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
AWS S3 | AWS S3: Get metrics check | Data collection check. |
DEPENDENT | aws.s3.metrics.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS S3 | AWS S3: Get alarms check | Data collection check. |
DEPENDENT | aws.s3.alarms.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS S3 | AWS S3: Bucket Size | This a daily metric for the bucket. The amount of data in bytes stored in a bucket in the STANDARD storage class, INTELLIGENTTIERING storage class, Standard-Infrequent Access (STANDARDIA) storage class, OneZone-Infrequent Access (ONEZONE_IA), Reduced Redundancy Storage (RRS) class, S3 Glacier Instant Retrieval storage class, Deep Archive Storage (S3 Glacier Deep Archive) class or, S3 Glacier Flexible Retrieval (GLACIER) storage class. This value is calculated by summing the size of all objects and metadata in the bucket (both current and noncurrent objects), including the size of all parts for all incomplete multipart uploads to the bucket. |
DEPENDENT | aws.s3.bucketsizebytes Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Number of objects | This a daily metric for the bucket. The total number of objects stored in a bucket for all storage classes. This value is calculated by counting all objects in the bucket (both current and noncurrent objects) and the total number of parts for all incomplete multipart uploads to the bucket. |
DEPENDENT | aws.s3.numberofobjects Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Requests: All | The total number of HTTP requests made to an Amazon S3 bucket, regardless of type. If you're using a metrics configuration with a filter, then this metric only returns the HTTP requests that meet the filter's requirements. |
DEPENDENT | aws.s3.allrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Get | The number of HTTP GET requests made for objects in an Amazon S3 bucket. This doesn't include list operations. Paginated list-oriented requests, like List Multipart Uploads, List Parts, Get Bucket Object versions, and others, are not included in this metric. |
DEPENDENT | aws.s3.getrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Put | The number of HTTP PUT requests made for objects in an Amazon S3 bucket. |
DEPENDENT | aws.s3.putrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Delete | The number of HTTP DELETE requests made for objects in an Amazon S3 bucket. This also includes Delete Multiple Objects requests. This metric shows the number of requests, not the number of objects deleted. |
DEPENDENT | aws.s3.deleterequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Head | The number of HTTP HEAD requests made to an Amazon S3 bucket. |
DEPENDENT | aws.s3.headrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Post | The number of HTTP POST requests made to an Amazon S3 bucket. Delete Multiple Objects and SELECT Object Content requests are not included in this metric. |
DEPENDENT | aws.s3.postrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Select | The number of Amazon S3 SELECT Object Content requests made for objects in an Amazon S3 bucket. |
DEPENDENT | aws.s3.selectrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Select, bytes scanned | The number of bytes of data scanned with Amazon S3 SELECT Object Content requests in an Amazon S3 bucket. Statistic: Average (bytes per request). |
DEPENDENT | aws.s3.selectbytesscanned Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Requests: Select, bytes returned | The number of bytes of data returned with Amazon S3 SELECT Object Content requests in an Amazon S3 buckets. Statistic: Average (bytes per request). |
DEPENDENT | aws.s3.selectbytesreturned Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Requests: List | The number of HTTP requests that list the contents of a bucket. |
DEPENDENT | aws.s3.listrequests Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Bytes downloaded | The number of bytes downloaded for requests made to an Amazon S3 bucket, where the response includes a body. Statistic: Average (bytes per request). |
DEPENDENT | aws.s3.bytesdownloaded Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Bytes uploaded | The number of bytes uploaded that contain a request body, made to an Amazon S3 bucket. Statistic: Average (bytes per request). |
DEPENDENT | aws.s3.bytesuploaded Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Errors, 4xx | The number of HTTP 4xx client error status code requests made to an Amazon S3 bucket with a value of either 0 or 1. The average statistic shows the error rate, and the sum statistic shows the count of that type of error, during each period. Statistic: Average (reports per request). |
DEPENDENT | aws.s3.4xxerrors Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Requests: Errors, 5xx | The number of HTTP 5xx server error status code requests made to an Amazon S3 bucket with a value of either 0 or 1. The average statistic shows the error rate, and the sum statistic shows the count of that type of error, during each period. Statistic: Average (reports per request). |
DEPENDENT | aws.s3.5xxerrors Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: First byte latency, avg | The per-request time from the complete request being received by an Amazon S3 bucket to when the response starts to be returned. Statistic: Average. |
DEPENDENT | aws.s3.firstbytelatency.avg Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: First byte latency, p90 | The per-request time from the complete request being received by an Amazon S3 bucket to when the response starts to be returned. Statistic: 90 percentile. |
DEPENDENT | aws.s3.firstbytelatency.p90 Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Total request latency, avg | The elapsed per-request time from the first byte received to the last byte sent to an Amazon S3 bucket. This includes the time taken to receive the request body and send the response body, which is not included in FirstByteLatency. Statistic: Average. |
DEPENDENT | aws.s3.totalrequestlatency.avg Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Total request latency, p90 | The elapsed per-request time from the first byte received to the last byte sent to an Amazon S3 bucket. This includes the time taken to receive the request body and send the response body, which is not included in FirstByteLatency. Statistic: 90 percentile. |
DEPENDENT | aws.s3.totalrequestlatency.p90 Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Replication: Latency | The maximum number of seconds by which the replication destination Region is behind the source Region for a given replication rule. |
DEPENDENT | aws.s3.replicationlatency Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS S3 | AWS S3: Replication: Bytes pending | The total number of bytes of objects pending replication for a given replication rule. |
DEPENDENT | aws.s3.bytespendingreplication Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3: Replication: Operations pending | The number of operations pending replication for a given replication rule. |
DEPENDENT | aws.s3.operationspendingreplication Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS S3 | AWS S3 Alarms: ["{#ALARM_NAME}"]: State reason | An explanation for the alarm state, in text format. Alarm description: {#ALARM_DESCRIPTION} |
DEPENDENT | aws.s3.alarm.statereason["{#ALARMNAME}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS S3 | AWS S3 Alarms: ["{#ALARM_NAME}"]: State | The state value for the alarm. Possible values: 0 (OK), 1 (INSUFFICIENTDATA), 2 (ALARM). Alarm description: {#ALARMDESCRIPTION} |
DEPENDENT | aws.s3.alarm.state["{#ALARMNAME}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:CUSTOM_VALUE -> 3 - JAVASCRIPT: |
Zabbix raw items | AWS S3: Get metrics data | Get bucket metrics. Full metrics list related to S3: https://docs.aws.amazon.com/AmazonS3/latest/userguide/metrics-dimensions.html |
SCRIPT | aws.s3.getmetrics Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS S3: Get alarms data | Get alarms data. DescribeAlarms API method: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarms.html |
SCRIPT | aws.s3.getalarms Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
AWS S3: Failed to get metrics data | - |
length(last(/AWS S3 bucket by HTTP/aws.s3.metrics.check))>0 |
WARNING | |
AWS S3: Failed to get alarms data | - |
length(last(/AWS S3 bucket by HTTP/aws.s3.alarms.check))>0 |
WARNING | |
AWS S3 Alarms: "{#ALARM_NAME}" has 'Alarm' state | Alarm "{#ALARM_NAME}" has 'Alarm' state. Reason: {ITEM.LASTVALUE2} |
last(/AWS S3 bucket by HTTP/aws.s3.alarm.state["{#ALARM_NAME}"])=2 and length(last(/AWS S3 bucket by HTTP/aws.s3.alarm.state_reason["{#ALARM_NAME}"]))>0 |
AVERAGE | |
AWS S3 Alarms: "{#ALARM_NAME}" has 'Insufficient data' state | - |
last(/AWS S3 bucket by HTTP/aws.s3.alarm.state["{#ALARM_NAME}"])=1 |
INFO |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template or ask for help with it at ZABBIX forums.
For Zabbix version: 6.2 and higher
The template to monitor AWS RDS instance by HTTP via Zabbix that works without any external scripts.
Most of the metrics are collected in one go, thanks to Zabbix bulk data collection.
NOTE
This template uses the GetMetricData CloudWatch API calls to list and retrieve metrics.
For more information, please refer to the (CloudWatch pricing)[https://aws.amazon.com/cloudwatch/pricing/] page.
Additional information about metrics and used API methods:
See Zabbix template operation for basic instructions.
The template get AWS RDS instance metrics and uses the script item to make HTTP requests to the CloudWatch API.
Before using the template, you need to create an IAM policy with the necessary permissions for the Zabbix role in your AWS account.
Add the following required permissions to your Zabbix IAM policy in order to collect Amazon RDS metrics.
{
"Version":"2012-10-17",
"Statement":[
{
"Action":[
"cloudwatch:Describe*",
"cloudwatch:Get*",
"cloudwatch:List*",
"rds:Describe*"
],
"Effect":"Allow",
"Resource":"*"
}
]
}
Set macros "{$AWS.ACCESS.KEY.ID}", "{$AWS.SECRET.ACCESS.KEY}", "{$AWS.REGION}", "{$AWS.RDS.INSTANCE.ID}"
For more information about manage access keys, see official documentation
Also, see the Macros section for a list of macros used for LLD filters.
Additional information about metrics and used API methods:
No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AWS.ACCESS.KEY.ID} | Access key ID. |
`` |
{$AWS.EBS.BYTE.CREDIT.BALANCE.MIN.WARN} | Minimum percentage of Byte credits remaining for trigger expression. |
20 |
{$AWS.EBS.IO.CREDIT.BALANCE.MIN.WARN} | Minimum percentage of I/O credits remaining for trigger expression. |
20 |
{$AWS.RDS.BURST.CREDIT.BALANCE.MIN.WARN} | Minimum percentage of Byte credits remaining for trigger expression. |
20 |
{$AWS.RDS.CPU.CREDIT.BALANCE.MIN.WARN} | Minimum number of free earned CPU credits for trigger expression. |
50 |
{$AWS.RDS.CPU.UTIL.WARN.MAX} | The warning threshold of the CPU utilization in %. |
85 |
{$AWS.RDS.INSTANCE.ID} | RDS DB Instance identifier. |
`` |
{$AWS.RDS.LLD.FILTER.ALARM_NAME.MATCHES} | Filter of discoverable alarms by namespace. |
.* |
{$AWS.RDS.LLD.FILTER.ALARMNAME.NOTMATCHES} | Filter to exclude discovered alarms by namespace. |
CHANGE_IF_NEEDED |
{$AWS.RDS.LLD.FILTER.ALARMSERVICENAMESPACE.MATCHES} | Filter of discoverable alarms by namespace. |
.* |
{$AWS.RDS.LLD.FILTER.ALARMSERVICENAMESPACE.NOT_MATCHES} | Filter to exclude discovered alarms by namespace. |
CHANGE_IF_NEEDED |
{$AWS.RDS.LLD.FILTER.EVENT_CATEGORY.MATCHES} | Filter of discoverable events by category. |
.* |
{$AWS.RDS.LLD.FILTER.EVENTCATEGORY.NOTMATCHES} | Filter to exclude discovered events by category. |
CHANGE_IF_NEEDED |
{$AWS.RDS.LLD.FILTER.EVENTSOURCETYPE.MATCHES} | Filter of discoverable events by source type. |
.* |
{$AWS.RDS.LLD.FILTER.EVENTSOURCETYPE.NOT_MATCHES} | Filter to exclude discovered events by source type. |
CHANGE_IF_NEEDED |
{$AWS.REGION} | Amazon RDS Region code. |
us-west-1 |
{$AWS.SECRET.ACCESS.KEY} | Secret access key. |
`` |
{$AWS.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
`` |
There are no template links in this template.
Name | Description | Type | Key and additional info |
---|---|---|---|
Aurora metrics discovery | Discovery Amazon Aurora metrics. https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.Monitoring.Metrics.html#Aurora.AuroraMySQL.Monitoring.Metrics.instances |
DEPENDENT | aws.rds.aurora.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: |
Aurora MySQL metrics discovery | Discovery Aurora MySQL metrics. Storage types: aurora (for MySQL 5.6-compatible Aurora) aurora-mysql (for MySQL 5.7-compatible and MySQL 8.0-compatible Aurora) |
DEPENDENT | aws.rds.postgresql.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: |
Instance Alarms discovery | Discovery instance alarms. |
DEPENDENT | aws.rds.alarms.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#ALARMSERVICENAMESPACE} MATCHESREGEX - {#ALARMSERVICENAMESPACE} NOTMATCHESREGEX - {#ALARMNAME} MATCHESREGEX - {#ALARMNAME} NOTMATCHESREGEX |
Instance Events discovery | Discovery instance events. |
DEPENDENT | aws.rds.events.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#EVENTCATEGORY} MATCHESREGEX - {#EVENTCATEGORY} NOTMATCHESREGEX - {#EVENTSOURCETYPE} MATCHESREGEX - {#EVENTSOURCETYPE} NOTMATCHESREGEX |
PostgreSQL metrics discovery | Discovery PostgreSQL metrics. Storage types: aurora-postgresql postgres |
DEPENDENT | aws.rds.postgresql.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: |
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
AWS RDS | AWS RDS: Get metrics check | Data collection check. |
DEPENDENT | aws.rds.metrics.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS: Get instance info check | Data collection check. |
DEPENDENT | aws.rds.instanceinfo.check Preprocessing: - JSONPATH: ⛔️ON FAIL:CUSTOM_VALUE -> - DISCARDUNCHANGEDHEARTBEAT: |
AWS RDS | AWS RDS: Get alarms check | Data collection check. |
DEPENDENT | aws.rds.alarms.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS: Get events check | Data collection check. |
DEPENDENT | aws.rds.events.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS: Class | Contains the name of the compute and memory capacity class of the DB instance. |
DEPENDENT | aws.rds.class Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
AWS RDS | AWS RDS: Engine | Database engine. |
DEPENDENT | aws.rds.engine Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
AWS RDS | AWS RDS: Engine version | Indicates the database engine version. |
DEPENDENT | aws.rds.engine.version Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
AWS RDS | AWS RDS: Status | Specifies the current state of this database. All possible status values and their description: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/accessing-monitoring.html#Overview.DBInstance.Status |
DEPENDENT | aws.rds.status Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
AWS RDS | AWS RDS: Storage type | Specifies the storage type associated with DB instance. |
DEPENDENT | aws.rds.storagetype Preprocessing: - JSONPATH: - DISCARD UNCHANGED_HEARTBEAT:3h |
AWS RDS | AWS RDS: Create time | Provides the date and time the DB instance was created. |
DEPENDENT | aws.rds.create_time Preprocessing: - JSONPATH: |
AWS RDS | AWS RDS: Storage: Allocated | Specifies the allocated storage size specified in gibibytes (GiB). |
DEPENDENT | aws.rds.storage.allocated Preprocessing: - JSONPATH: - DISCARDUNCHANGEDHEARTBEAT: |
AWS RDS | AWS RDS: Storage: Max allocated | The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance. If limit is not specified returns -1. |
DEPENDENT | aws.rds.storage.maxallocated Preprocessing: - JAVASCRIPT: - DISCARD UNCHANGED_HEARTBEAT:3h |
AWS RDS | AWS RDS: Read replica: State | The status of a read replica. If the instance isn't a read replica, this is blank. Boolean value that is true if the instance is operating normally, or false if the instance is in an error state. |
DEPENDENT | aws.rds.readreplicastate Preprocessing: - JSONPATH: ⛔️ONFAIL: - BOOLTODECIMAL - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS: Read replica: Status | The status of a read replica. If the instance isn't a read replica, this is blank. Status of the DB instance. For a StatusType of read replica, the values can be replicating, replication stop point set, replication stop point reached, error, stopped, or terminated. |
DEPENDENT | aws.rds.readreplicastatus Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS: Swap usage | The amount of swap space used. This metric is available for the Aurora PostgreSQL DB instance classes db.t3.medium, db.t3.large, db.r4.large, db.r4.xlarge, db.r5.large, db.r5.xlarge, db.r6g.large, and db.r6g.xlarge. For Aurora MySQL, this metric applies only to db.t* DB instance classes. This metric is not available for SQL Server. |
DEPENDENT | aws.rds.swapusage Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Write IOPS | The number of write records generated per second. This is more or less the number of log records generated by the database. These do not correspond to 8K page writes, and do not correspond to network packets sent. |
DEPENDENT | aws.rds.writeiops.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Write latency | The average amount of time taken per disk I/O operation. |
DEPENDENT | aws.rds.writelatency Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Write throughput | The average number of bytes written to persistent storage every second. |
DEPENDENT | aws.rds.writethroughput.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Network: Receive throughput | The incoming (Receive) network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication. |
DEPENDENT | aws.rds.networkreceivethroughput.rate Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Burst balance | The percent of General Purpose SSD (gp2) burst-bucket I/O credits available. |
DEPENDENT | aws.rds.burstbalance Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: CPU: Utilization | The percentage of CPU utilization. |
DEPENDENT | aws.rds.cpu.utilization Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Credit CPU: Balance | The number of CPU credits that an instance has accumulated, reported at 5-minute intervals. You can use this metric to determine how long a DB instance can burst beyond its baseline performance level at a given rate. When an instance is running, credits in the CPUCreditBalance don't expire. When the instance stops, the CPUCreditBalance does not persist, and all accrued credits are lost. This metric applies only to db.t2.small and db.t2.medium instances for Aurora MySQL, and to db.t3 instances for Aurora PostgreSQL. |
DEPENDENT | aws.rds.cpu.creditbalance Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Credit CPU: Usage | The number of CPU credits consumed during the specified period, reported at 5-minute intervals. This metric measures the amount of time during which physical CPUs have been used for processing instructions by virtual CPUs allocated to the DB instance. This metric applies only to db.t2.small and db.t2.medium instances for Aurora MySQL, and to db.t3 instances for Aurora PostgreSQL |
DEPENDENT | aws.rds.cpu.creditusage Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Connections | The number of client network connections to the database instance. The number of database sessions can be higher than the metric value because the metric value doesn't include the following: - Sessions that no longer have a network connection but which the database hasn't cleaned up - Sessions created by the database engine for its own purposes - Sessions created by the database engine's parallel execution capabilities - Sessions created by the database engine job scheduler - Amazon Aurora/RDS connections |
DEPENDENT | aws.rds.databaseconnections Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Queue depth | The number of outstanding read/write requests waiting to access the disk. |
DEPENDENT | aws.rds.diskqueuedepth Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: EBS: Byte balance | The percentage of throughput credits remaining in the burst bucket of your RDS database. This metric is available for basic monitoring only. To find the instance sizes that support this metric, see the instance sizes with an asterisk (*) in the EBS optimized by default table (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html#current) in Amazon RDS User Guide for Linux Instances. |
DEPENDENT | aws.rds.ebsbytebalance Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: EBS: IO balance | The percentage of I/O credits remaining in the burst bucket of your RDS database. This metric is available for basic monitoring only. To find the instance sizes that support this metric, see the instance sizes with an asterisk (*) in the EBS optimized by default table (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html#current) in Amazon RDS User Guide for Linux Instances. |
DEPENDENT | aws.rds.ebsiobalance Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Memory, freeable | The amount of available random access memory. For MariaDB, MySQL, Oracle, and PostgreSQL DB instances, this metric reports the value of the MemAvailable field of /proc/meminfo. |
DEPENDENT | aws.rds.freeablememory Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Storage: Local free | The amount of local storage available, in bytes. Unlike for other DB engines, for Aurora DB instances this metric reports the amount of storage available to each DB instance. This value depends on the DB instance class. You can increase the amount of free storage space for an instance by choosing a larger DB instance class for your instance. (This doesn't apply to Aurora Serverless v2.) |
DEPENDENT | aws.rds.freelocalstorage Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Network: Receive throughput | The incoming (receive) network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication. For Amazon Aurora: The amount of network throughput received from the Aurora storage subsystem by each instance in the DB cluster. |
DEPENDENT | aws.rds.storagenetworkreceivethroughput Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Network: Transmit throughput | The outgoing (transmit) network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication. For Amazon Aurora: The amount of network throughput sent to the Aurora storage subsystem by each instance in the Aurora MySQL DB cluster. |
DEPENDENT | aws.rds.storagenetworktransmitthroughput Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Read IOPS | The average number of disk I/O operations per second. Aurora PostgreSQL-Compatible Edition reports read and write IOPS separately, in 1-minute intervals. |
DEPENDENT | aws.rds.readiops.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Read latency | The average amount of time taken per disk I/O operation. |
DEPENDENT | aws.rds.readlatency Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Read throughput | The average number of bytes read from disk per second. |
DEPENDENT | aws.rds.readthroughput.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Network: Transmit throughput | The outgoing (Transmit) network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication. |
DEPENDENT | aws.rds.networktransmitthroughput.rate Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Network: Throughput | The amount of network throughput both received from and transmitted to clients by each instance in the Aurora MySQL DB cluster, in bytes per second. This throughput doesn't include network traffic between instances in the DB cluster and the cluster volume. |
DEPENDENT | aws.rds.networkthroughput.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Storage: Space free | The amount of available storage space. |
DEPENDENT | aws.rds.freestoragespace Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Disk: Read IOPS, local storage | The average number of disk read I/O operations to local storage per second. Only applies to Multi-AZ DB clusters. |
DEPENDENT | aws.rds.readiopslocalstorage.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Read latency, local storage | The average amount of time taken per disk I/O operation for local storage. Only applies to Multi-AZ DB clusters. |
DEPENDENT | aws.rds.readlatencylocalstorage Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Read throughput, local storage | The average number of bytes read from disk per second for local storage. Only applies to Multi-AZ DB clusters. |
DEPENDENT | aws.rds.readthroughputlocalstorage.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Replication: Lag | The amount of time a read replica DB instance lags behind the source DB instance. Applies to MySQL, MariaDB, Oracle, PostgreSQL, and SQL Server read replicas. |
DEPENDENT | aws.rds.replicalag Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Write IOPS, local storage | The average number of disk write I/O operations per second on local storage in a Multi-AZ DB cluster. |
DEPENDENT | aws.rds.writeiopslocalstorage.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Write latency, local storage | The average amount of time taken per disk I/O operation on local storage in a Multi-AZ DB cluster. |
DEPENDENT | aws.rds.writelatencylocalstorage Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Write throughput, local storage | The average number of bytes written to disk per second for local storage. |
DEPENDENT | aws.rds.writethroughputlocalstorage.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: SQLServer: Failed agent jobs | The number of failed Microsoft SQL Server Agent jobs during the last minute. |
DEPENDENT | aws.rds.failedsqlserveragentjobscount Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Binlog Usage | The amount of disk space occupied by binary logs on the master. Applies to MySQL read replicas. |
DEPENDENT | aws.rds.binlogdiskusage Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS Alarms: ["{#ALARM_NAME}"]: State reason | An explanation for the alarm state, in text format. Alarm description: {#ALARM_DESCRIPTION} |
DEPENDENT | aws.rds.alarm.statereason["{#ALARMNAME}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS Alarms: ["{#ALARM_NAME}"]: State | The state value for the alarm. Possible values: 0 (OK), 1 (INSUFFICIENTDATA), 2 (ALARM). Alarm description: {#ALARMDESCRIPTION} |
DEPENDENT | aws.rds.alarm.state["{#ALARMNAME}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:CUSTOM_VALUE -> 3 - JAVASCRIPT: |
AWS RDS | AWS RDS: Replication: Lag, max | The maximum amount of lag between the primary instance and each Aurora DB instance in the DB cluster. |
DEPENDENT | aws.rds.aurorareplicalag.max[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Replication: Lag, min | The minimum amount of lag between the primary instance and each Aurora DB instance in the DB cluster. |
DEPENDENT | aws.rds.aurorareplicalag.min[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Replication: Lag | For an Aurora replica, the amount of lag when replicating updates from the primary instance. |
DEPENDENT | aws.rds.aurorareplicalag[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Buffer Cache hit ratio | The percentage of requests that are served by the buffer cache. |
DEPENDENT | aws.rds.buffercachehitratio[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Commit latency | The amount of latency for commit operations. |
DEPENDENT | aws.rds.commitlatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Commit throughput | The average number of commit operations per second. |
DEPENDENT | aws.rds.committhroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Deadlocks, rate | The average number of deadlocks in the database per second. |
DEPENDENT | aws.rds.deadlocks.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Engine uptime | The amount of time that the instance has been running. |
DEPENDENT | aws.rds.engineuptime[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Rollback segment history list length | The undo logs that record committed transactions with delete-marked records. These records are scheduled to be processed by the InnoDB purge operation. |
DEPENDENT | aws.rds.rollbacksegmenthistorylistlength[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Network: Throughput | The amount of network throughput received from and sent to the Aurora storage subsystem by each instance in the Aurora MySQL DB cluster. |
DEPENDENT | aws.rds.storagenetworkthroughput[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: RDS to Aurora PostgreSQL replicaLag | The lag when replicating updates from the primary RDS PostgreSQL instance to other nodes in the cluster. |
DEPENDENT | aws.rds.rdstoaurorapostgresqlreplicalag[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Maximum Used transaction ID | The age of the oldest unvacuumed transaction ID, in transactions. If this value reaches 2,146,483,648 (2^31 - 1,000,000), the database is forced into read-only mode, to avoid transaction ID wraparound. |
DEPENDENT | aws.rds.maximumusedtransactionids[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Disk: Replication slot usage | The amount of disk space consumed by replication slot files. |
DEPENDENT | aws.rds.replicationslotdiskusage[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Checkpoint lag | The amount of time since the most recent checkpoint. Applies to only RDS for PostgreSQL. |
DEPENDENT | aws.rds.checkpointlag[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Replication: Oldest slot lag | The lagging size of the replica lagging the most in terms of write-ahead log (WAL) data received. Applies to PostgreSQL. |
DEPENDENT | aws.rds.oldestreplicationslotlag[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Transaction log: Disk usage | The disk space used by transaction logs. Applies to PostgreSQL, primary for Aurora PostgreSQL. By default, Aurora PostgreSQL uses log records, not transaction logs. When transaction logs aren't in use, the value for this metric is -1. |
DEPENDENT | aws.rds.transactionlogsdiskusage[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Transaction log: Generation | The size of transaction logs generated per second. Applies to PostgreSQL. |
DEPENDENT | aws.rds.transactionlogsgeneration[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Operations: Delete latency | The amount of latency for delete queries. |
DEPENDENT | aws.rds.deletelatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Delete throughput | The average number of delete queries per second. |
DEPENDENT | aws.rds.deletethroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: DML: Latency | The amount of latency for inserts, updates, and deletes. |
DEPENDENT | aws.rds.dmllatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: DML: Throughput | The average number of inserts, updates, and deletes per second. |
DEPENDENT | aws.rds.dmlthroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: DDL: Latency | The amount of latency for data definition language (DDL) requests - for example, create, alter, and drop requests. |
DEPENDENT | aws.rds.ddllatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: DDL: Throughput | The average number of DDL requests per second. |
DEPENDENT | aws.rds.ddlthroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Backtrack: Window, actual | The difference between the target backtrack window and the actual backtrack window. |
DEPENDENT | aws.rds.backtrackwindowactual[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Backtrack: Window, alert | The number of times that the actual backtrack window is smaller than the target backtrack window for a given period of time. |
DEPENDENT | aws.rds.backtrackwindowalert[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Transactions: Blocked, rate | The average number of transactions in the database that are blocked per second. |
DEPENDENT | aws.rds.blockedtransactions.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Row lock time | The total time spent acquiring row locks for InnoDB tables. |
DEPENDENT | aws.rds.rowlocktime[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Select latency | The amount of latency for select queries. |
DEPENDENT | aws.rds.selectlatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Select throughput | The average number of select queries per second. |
DEPENDENT | aws.rds.selectthroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Replication: Binlog lag | The amount of time that a binary log replica DB cluster running on Aurora MySQL-Compatible Edition lags behind the binary log replication source. A lag means that the source is generating records faster than the replica can apply them. The metric value indicates the following: A high value: The replica is lagging the replication source. 0 or a value close to 0: The replica process is active and current. -1: Aurora can't determine the lag, which can happen during replica setup or when the replica is in an error state |
DEPENDENT | aws.rds.aurorareplicationbinloglag[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Transactions: Active, rate | The average number of current transactions executing on an Aurora database instance per second. By default, Aurora doesn't enable this metric. To begin measuring this value, set innodbmonitorenable='all' in the DB parameter group for a specific DB instance. |
DEPENDENT | aws.rds.auroratransactionsactive.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Connections: Aborted | The number of client connections that have not been closed properly. |
DEPENDENT | aws.rds.auroraclientsaborted[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Operations: Insert latency | The amount of latency for insert queries, in milliseconds. |
DEPENDENT | aws.rds.insertlatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Insert throughput | The average number of insert queries per second. |
DEPENDENT | aws.rds.insertthroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Login failures, rate | The average number of failed login attempts per second. |
DEPENDENT | aws.rds.loginfailures.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Queries, rate | The average number of queries executed per second. |
DEPENDENT | aws.rds.queries.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Resultset cache hit ratio | The percentage of requests that are served by the Resultset cache. |
DEPENDENT | aws.rds.resultsetcachehitratio[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS RDS | AWS RDS: Binary log files, number | The number of binlog files generated. |
DEPENDENT | aws.rds.numbinarylogfiles[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Binary log files, size | The total size of the binlog files. |
DEPENDENT | aws.rds.sumbinarylogfiles[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Update latency | The amount of latency for update queries. |
DEPENDENT | aws.rds.updatelatency[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS: Operations: Update throughput | The average number of update queries per second. |
DEPENDENT | aws.rds.updatethroughput.rate[{#SINGLETON}] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS RDS | AWS RDS Events: [{#EVENTCATEGORY}]: {#EVENTSOURCETYPE}/{#EVENTSOURCE_ID}: Message | Provides the text of this event. |
DEPENDENT | aws.rds.eventmessage["{#EVENTCATEGORY}/{#EVENTSOURCETYPE}/{#EVENTSOURCEID}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - JSONPATH: - DISCARDUNCHANGED_HEARTBEAT: |
AWS RDS | AWS RDS Events: [{#EVENTCATEGORY}]: {#EVENTSOURCETYPE}/{#EVENTSOURCE_ID} : Date | Provides the text of this event. |
DEPENDENT | aws.rds.eventdate["{#EVENTCATEGORY}/{#EVENTSOURCETYPE}/{#EVENTSOURCEID}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - JSONPATH: - DISCARDUNCHANGED_HEARTBEAT: |
Zabbix raw items | AWS RDS: Get metrics data | Get instance metrics. Full metrics list related to RDS: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-metrics.html Full metrics list related to Amazon Aurora: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.Monitoring.Metrics.html#Aurora.AuroraMySQL.Monitoring.Metrics.instances |
SCRIPT | aws.rds.getmetrics Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS RDS: Get instance info | Get instance info. DescribeDBInstances API method: https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html |
SCRIPT | aws.rds.getinstanceinfo Preprocessing: - CHECKNOTSUPPORTED ⛔️ON_FAIL: Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS CloudWatch: Get instance alarms data | DescribeAlarms API method: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarms.html |
SCRIPT | aws.rds.getalarms Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS RDS: Get instance events data | DescribeEvents API method: https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeEvents.html |
SCRIPT | aws.rds.getevents Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
AWS RDS: Failed to get metrics data | - |
length(last(/AWS RDS instance by HTTP/aws.rds.metrics.check))>0 |
WARNING | |
AWS RDS: Failed to get instance data | - |
length(last(/AWS RDS instance by HTTP/aws.rds.instance_info.check))>0 |
WARNING | |
AWS RDS: Failed to get alarms data | - |
length(last(/AWS RDS instance by HTTP/aws.rds.alarms.check))>0 |
WARNING | |
AWS RDS: Failed to get events data | - |
length(last(/AWS RDS instance by HTTP/aws.rds.events.check))>0 |
WARNING | |
AWS RDS: Read replica in error state | The status of a read replica. False if the instance is in an error state. |
last(/AWS RDS instance by HTTP/aws.rds.read_replica_state)=0 |
AVERAGE | |
AWS RDS: Burst balance is too low | - |
max(/AWS RDS instance by HTTP/aws.rds.burst_balance,5m)<{$AWS.RDS.BURST.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS RDS: High CPU utilization | CPU utilization is too high. The system might be slow to respond. |
min(/AWS RDS instance by HTTP/aws.rds.cpu.utilization,15m)>{$AWS.RDS.CPU.UTIL.WARN.MAX} |
WARNING | |
AWS RDS: Instance CPU Credit balance is too low | The number of earned CPU credits has been less than {$AWS.RDS.CPU.CREDIT.BALANCE.MIN.WARN} in the last 5 minutes. |
max(/AWS RDS instance by HTTP/aws.rds.cpu.credit_balance,5m)<{$AWS.RDS.CPU.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS RDS: Byte Credit balance is too low | - |
max(/AWS RDS instance by HTTP/aws.rds.ebs_byte_balance,5m)<{$AWS.EBS.BYTE.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS RDS: I/O Credit balance is too low | - |
max(/AWS RDS instance by HTTP/aws.rds.ebs_io_balance,5m)<{$AWS.EBS.IO.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS RDS Alarms: "{#ALARM_NAME}" has 'Alarm' state | Alarm "{#ALARM_NAME}" has 'Alarm' state. Reason: {ITEM.LASTVALUE2} |
last(/AWS RDS instance by HTTP/aws.rds.alarm.state["{#ALARM_NAME}"])=2 and length(last(/AWS RDS instance by HTTP/aws.rds.alarm.state_reason["{#ALARM_NAME}"]))>0 |
AVERAGE | |
AWS RDS Alarms: "{#ALARM_NAME}" has 'Insufficient data' state | - |
last(/AWS RDS instance by HTTP/aws.rds.alarm.state["{#ALARM_NAME}"])=1 |
INFO |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template or ask for help with it at ZABBIX forums.
For Zabbix version: 6.2 and higher
The template to monitor AWS EC2, RDS and S3 instances by HTTP via Zabbix that works without any external scripts.
See Zabbix template operation for basic instructions.
Before using the template, you need to create an IAM policy for the Zabbix role in your AWS account with the necessary permissions.
Add the following required permissions to your Zabbix IAM policy in order to collect metrics.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"cloudwatch:Describe*",
"cloudwatch:Get*",
"cloudwatch:List*",
"ec2:Describe*",
"rds:Describe*",
"s3:ListAllMyBuckets",
"s3:GetBucketLocation"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
To gather Request metrics, enable Requests metrics on your Amazon S3 buckets from the AWS console.
Set macros {$AWS.ACCESS.KEY.ID}, {$AWS.SECRET.ACCESS.KEY}, {$AWS.REGION}.
For more information about managing access keys, see official documentation.
Also, see the Macros section for a list of macros used in LLD filters.
Additional information about metrics and used API methods:
No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AWS.ACCESS.KEY.ID} | Access key ID. |
`` |
{$AWS.EC2.LLD.FILTER.NAME.MATCHES} | Filter of discoverable EC2 instances by namespace. |
.* |
{$AWS.EC2.LLD.FILTER.NAME.NOT_MATCHES} | Filter to exclude discovered EC2 instances by namespace. |
CHANGE_IF_NEEDED |
{$AWS.RDS.LLD.FILTER.NAME.MATCHES} | Filter of discoverable RDS instances by namespace. |
.* |
{$AWS.RDS.LLD.FILTER.NAME.NOT_MATCHES} | Filter to exclude discovered RDS instances by namespace. |
CHANGE_IF_NEEDED |
{$AWS.REGION} | Amazon EC2 region code. |
us-west-1 |
{$AWS.S3.LLD.FILTER.NAME.MATCHES} | Filter of discoverable S3 buckets by namespace. |
.* |
{$AWS.S3.LLD.FILTER.NAME.NOT_MATCHES} | Filter to exclude discovered S3 buckets by namespace. |
CHANGE_IF_NEEDED |
{$AWS.SECRET.ACCESS.KEY} | Secret access key. |
`` |
{$AWS.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
`` |
There are no template links in this template.
Name | Description | Type | Key and additional info |
---|---|---|---|
EC2 instances discovery | Get EC2 instances. |
SCRIPT | aws.ec2.discovery Filter: AND- {#AWS.EC2.INSTANCE.NAME} MATCHESREGEX - {#AWS.EC2.INSTANCE.NAME} NOTMATCHES_REGEX |
RDS instances discovery | Get RDS instances. |
SCRIPT | aws.rds.discovery Filter: AND- {#AWS.RDS.INSTANCE.ID} MATCHESREGEX - {#AWS.RDS.INSTANCE.ID} NOTMATCHES_REGEX |
S3 buckets discovery | Get S3 bucket instances. |
SCRIPT | aws.s3.discovery Filter: AND- {#AWS.S3.NAME} MATCHESREGEX - {#AWS.S3.NAME} NOTMATCHES_REGEX |
Group | Name | Description | Type | Key and additional info |
---|
Name | Description | Expression | Severity | Dependencies and additional info |
---|
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template or ask for help with it at ZABBIX forums.
For Zabbix version: 6.2 and higher
The template to monitor AWS EC2 and attached AWS EBS volumes by HTTP via Zabbix that works without any external scripts.
Most of the metrics are collected in one go, thanks to Zabbix bulk data collection.
NOTE
This template uses the GetMetricData CloudWatch API calls to list and retrieve metrics.
For more information, please refer to the (CloudWatch pricing)[https://aws.amazon.com/cloudwatch/pricing/] page.
Additional information about metrics and used API methods:
See Zabbix template operation for basic instructions.
The template get AWS EC2 and attached AWS EBS volumes metrics and uses the script item to make HTTP requests to the CloudWatch API.
Before using template, you need to create an IAM policy for the Zabbix role in your AWS account with the necessary permissions.
Add the following required permissions to your Zabbix IAM policy in order to collect Amazon EC2 metrics.
{
"Version":"2012-10-17",
"Statement":[
{
"Action":[
"cloudwatch:Describe*",
"cloudwatch:Get*",
"cloudwatch:List*",
"ec2:Describe*"
],
"Effect":"Allow",
"Resource":"*"
}
]
}
For more information, see the EC2 policies on the AWS website.
Set macros "{$AWS.ACCESS.KEY.ID}", "{$AWS.SECRET.ACCESS.KEY}", "{$AWS.REGION}", "{$AWS.EC2.INSTANCE.ID}"
For more information about manage access keys, see official documentation
Also, see the Macros section for a list of macros used to LLD filters.
Additional information about metrics and used API methods:
No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$AWS.ACCESS.KEY.ID} | Access key ID. |
`` |
{$AWS.EBS.BURST.CREDIT.BALANCE.MIN.WARN} | Minimum percentage of Byte credits remaining for trigger expression. |
20 |
{$AWS.EBS.BYTE.CREDIT.BALANCE.MIN.WARN} | Minimum percentage of Byte credits remaining for trigger expression. |
20 |
{$AWS.EBS.IO.CREDIT.BALANCE.MIN.WARN} | Minimum percentage of I/O credits remaining for trigger expression. |
20 |
{$AWS.EC2.CPU.CREDIT.BALANCE.MIN.WARN} | Minimum number of free earned CPU credits for trigger expression. |
50 |
{$AWS.EC2.CPU.CREDIT.SURPLUS.BALANCE.MAX.WARN} | Maximum number of spent CPU Surplus credits for trigger expression. |
100 |
{$AWS.EC2.CPU.UTIL.WARN.MAX} | The warning threshold of the CPU utilization in %. |
85 |
{$AWS.EC2.INSTANCE.ID} | EC2 instance ID. |
`` |
{$AWS.EC2.LLD.FILTER.ALARM_NAME.MATCHES} | Filter of discoverable alarms by namespace. |
.* |
{$AWS.EC2.LLD.FILTER.ALARMNAME.NOTMATCHES} | Filter to exclude discovered alarms by namespace. |
CHANGE_IF_NEEDED |
{$AWS.EC2.LLD.FILTER.ALARMSERVICENAMESPACE.MATCHES} | Filter of discoverable alarms by namespace. |
.* |
{$AWS.EC2.LLD.FILTER.ALARMSERVICENAMESPACE.NOT_MATCHES} | Filter to exclude discovered alarms by namespace. |
CHANGE_IF_NEEDED |
{$AWS.EC2.LLD.FILTER.VOLUME_TYPE.MATCHES} | Filter of discoverable volumes by type. |
.* |
{$AWS.EC2.LLD.FILTER.VOLUMETYPE.NOTMATCHES} | Filter to exclude discovered volumes by type. |
CHANGE_IF_NEEDED |
{$AWS.REGION} | Amazon EC2 Region code. |
us-west-1 |
{$AWS.SECRET.ACCESS.KEY} | Secret access key. |
`` |
{$AWS.PROXY} | Sets HTTP proxy value. If this macro is empty then no proxy is used. |
`` |
There are no template links in this template.
Name | Description | Type | Key and additional info |
---|---|---|---|
Instance Alarms discovery | Discovery instance and attached EBS volumes alarms. |
DEPENDENT | aws.ec2.alarms.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#ALARMSERVICENAMESPACE} MATCHESREGEX - {#ALARMSERVICENAMESPACE} NOTMATCHESREGEX - {#ALARMNAME} MATCHESREGEX - {#ALARMNAME} NOTMATCHESREGEX |
Instance Volumes discovery | Discovery attached EBS volumes. |
DEPENDENT | aws.ec2.volumes.discovery Preprocessing: - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: Filter: AND- {#VOLUMETYPE} MATCHESREGEX - {#VOLUMETYPE} NOTMATCHES_REGEX |
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
AWS EC2 | AWS EC2: Get metrics check | Data collection check. |
DEPENDENT | aws.ec2.metrics.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EC2: Get alarms check | Data collection check. |
DEPENDENT | aws.ec2.alarms.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EC2: Get volumes info check | Data collection check. |
DEPENDENT | aws.ec2.volumes.check Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EC2: Credit CPU: Balance | The number of earned CPU credits that an instance has accrued since it was launched or started. For T2 Standard, the CPUCreditBalance also includes the number of launch credits that have been accrued. Credits are accrued in the credit balance after they are earned, and removed from the credit balance when they are spent. The credit balance has a maximum limit, determined by the instance size. After the limit is reached, any new credits that are earned are discarded. For T2 Standard, launch credits do not count towards the limit. The credits in the CPUCreditBalance are available for the instance to spend to burst beyond its baseline CPU utilization. When an instance is running, credits in the CPUCreditBalance do not expire. When a T3 or T3a instance stops, the CPUCreditBalance value persists for seven days. Thereafter, all accrued credits are lost. When a T2 instance stops, the CPUCreditBalance value does not persist, and all accrued credits are lost. |
DEPENDENT | aws.ec2.cpu.creditbalance Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: Credit CPU: Usage | The number of CPU credits spent by the instance for CPU utilization. One CPU credit equals one vCPU running at 100% utilization for one minute or an equivalent combination of vCPUs, utilization, and time (for example, one vCPU running at 50% utilization for two minutes or two vCPUs running at 25% utilization for two minutes). |
DEPENDENT | aws.ec2.cpu.creditusage Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: Credit CPU: Surplus balance | The number of surplus credits that have been spent by an unlimited instance when its CPUCreditBalance value is zero. The CPUSurplusCreditBalance value is paid down by earned CPU credits. If the number of surplus credits exceeds the maximum number of credits that the instance can earn in a 24-hour period, the spent surplus credits above the maximum incur an additional charge. |
DEPENDENT | aws.ec2.cpu.surpluscreditbalance Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EC2: Credit CPU: Surplus charged | The number of spent surplus credits that are not paid down by earned CPU credits, and which thus incur an additional charge. Spent surplus credits are charged when any of the following occurs: - The spent surplus credits exceed the maximum number of credits that the instance can earn in a 24-hour period. Spent surplus credits above the maximum are charged at the end of the hour; - The instance is stopped or terminated; - The instance is switched from unlimited to standard. |
DEPENDENT | aws.ec2.cpu.surpluscreditcharged Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EC2: CPU: Utilization | The percentage of allocated EC2 compute units that are currently in use on the instance. This metric identifies the processing power required to run an application on a selected instance. Depending on the instance type, tools in your operating system can show a lower percentage than CloudWatch when the instance is not allocated a full processor core. |
DEPENDENT | aws.ec2.cpuutilization Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: Disk: Read bytes, rate | Bytes read from all instance store volumes available to the instance. This metric is used to determine the volume of the data the application reads from the hard disk of the instance. This can be used to determine the speed of the application. If there are no instance store volumes, either the value is 0 or the metric is not reported. |
DEPENDENT | aws.ec2.disk.readbytes.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: Disk: Read, rate | Completed read operations from all instance store volumes available to the instance in a specified period of time. If there are no instance store volumes, either the value is 0 or the metric is not reported. |
DEPENDENT | aws.ec2.disk.readops.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: Disk: Write bytes, rate | Bytes written to all instance store volumes available to the instance. This metric is used to determine the volume of the data the application writes onto the hard disk of the instance. This can be used to determine the speed of the application. If there are no instance store volumes, either the value is 0 or the metric is not reported. |
DEPENDENT | aws.ec2.diskwritebytes.rate Preprocessing: - JSONPATH: ⛔️ON_FAIL: - JAVASCRIPT: |
AWS EC2 | AWS EC2: Disk: Write ops, rate | Completed write operations to all instance store volumes available to the instance in a specified period of time. If there are no instance store volumes, either the value is 0 or the metric is not reported. |
DEPENDENT | aws.ec2.diskwriteops.rate Preprocessing: - JSONPATH: ⛔️ON_FAIL: - JAVASCRIPT: |
AWS EC2 | AWS EC2: EBS: Byte balance | Percentage of throughput credits remaining in the burst bucket for Nitro-based instances. |
DEPENDENT | aws.ec2.ebs.bytebalance Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: EBS: IO balance | Percentage of I/O credits remaining in the burst bucket for Nitro-based instances. |
DEPENDENT | aws.ec2.ebs.iobalance Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: EBS: Read bytes, rate | Bytes read from all EBS volumes attached to the instance for Nitro-based instances. |
DEPENDENT | aws.ec2.ebs.readbytes.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: EBS: Read, rate | Completed read operations from all Amazon EBS volumes attached to the instance for Nitro-based instances. |
DEPENDENT | aws.ec2.ebs.readops.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: EBS: Write bytes, rate | Bytes written to all EBS volumes attached to the instance for Nitro-based instances. |
DEPENDENT | aws.ec2.ebs.writebytes.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: EBS: Write, rate | Completed write operations to all EBS volumes attached to the instance in a specified period of time. |
DEPENDENT | aws.ec2.ebs.writeops.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: Metadata: No token | The number of times the instance metadata service was successfully accessed using a method that does not use a token. This metric is used to determine if there are any processes accessing instance metadata that are using Instance Metadata Service Version 1, which does not use a token. If all requests use token-backed sessions, i.e., Instance Metadata Service Version 2, the value is 0. |
DEPENDENT | aws.ec2.metadata.notoken Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: Network: Bytes in, rate | The number of bytes received on all network interfaces by the instance. This metric identifies the volume of incoming network traffic to a single instance. |
DEPENDENT | aws.ec2.networkin.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: Network: Bytes out, rate | The number of bytes sent out on all network interfaces by the instance. This metric identifies the volume of outgoing network traffic from a single instance. |
DEPENDENT | aws.ec2.network_out.rate Preprocessing: - JSONPATH: - JAVASCRIPT: |
AWS EC2 | AWS EC2: Network: Packets in, rate | The number of packets received on all network interfaces by the instance. This metric identifies the volume of incoming traffic in terms of the number of packets on a single instance. This metric is available for basic monitoring only. |
DEPENDENT | aws.ec2.packetsin.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: Network: Packets out, rate | The number of packets sent out on all network interfaces by the instance. This metric identifies the volume of outgoing traffic in terms of the number of packets on a single instance. This metric is available for basic monitoring only. |
DEPENDENT | aws.ec2.packetsout.rate Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: |
AWS EC2 | AWS EC2: Status: Check failed | Reports whether the instance has passed both the instance status check and the system status check in the last minute. This metric can be either 0 (passed) or 1 (failed). |
DEPENDENT | aws.ec2.statuscheckfailed Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EC2: Status: Check failed, instance | Reports whether the instance has passed the instance status check in the last minute. This metric can be either 0 (passed) or 1 (failed). |
DEPENDENT | aws.ec2.statuscheckfailedinstance Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2: Status: Check failed, system | Reports whether the instance has passed the system status check in the last minute. This metric can be either 0 (passed) or 1 (failed). |
DEPENDENT | aws.ec2.statuscheckfailedsystem Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EC2 Alarms: ["{#ALARM_NAME}"]: State reason | An explanation for the alarm state, in text format. Alarm description: {#ALARM_DESCRIPTION} |
DEPENDENT | aws.ec2.alarm.statereason["{#ALARMNAME}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EC2 Alarms: ["{#ALARM_NAME}"]: State | The state value for the alarm. Possible values: 0 (OK), 1 (INSUFFICIENTDATA), 2 (ALARM). Alarm description: {#ALARMDESCRIPTION} |
DEPENDENT | aws.ec2.alarm.state["{#ALARMNAME}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:CUSTOM_VALUE -> 3 - JAVASCRIPT: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Create time | The time stamp when volume creation was initiated. |
DEPENDENT | aws.ec2.ebs.createtime["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Status | The state of the volume. Possible values: 0 (creating), 1 (available), 2 (in-use), 3 (deleting), 4 (deleted), 5 (error). |
DEPENDENT | aws.ec2.ebs.status["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - JAVASCRIPT: - DISCARDUNCHANGEDHEARTBEAT: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Attachment state | The attachment state of the volume. Possible values: 0 (attaching), 1 (attached), 2 (detaching). |
DEPENDENT | aws.ec2.ebs.attachmentstatus["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - JAVASCRIPT: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Attachment time | The time stamp when the attachment initiated. |
DEPENDENT | aws.ec2.ebs.attachmenttime["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ONFAIL: - DISCARDUNCHANGED_HEARTBEAT: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Device | The device name specified in the block device mapping (for example, /dev/sda1). |
DEPENDENT | aws.ec2.ebs.device["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> - DISCARDUNCHANGEDHEARTBEAT: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Read, bytes | Provides information on the read operations in a specified period of time. The average size of each read operation during the period, except on volumes attached to a Nitro-based instance, where the average represents the average over the specified period. For Xen instances, data is reported only when there is read activity on the volume. |
DEPENDENT | aws.ec2.ebs.volume.readbytes["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Write, bytes | Provides information on the write operations in a specified period of time. The average size of each write operation during the period, except on volumes attached to a Nitro-based instance, where the average represents the average over the specified period. For Xen instances, data is reported only when there is write activity on the volume. |
DEPENDENT | aws.ec2.ebs.volume.writebytes["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Write, ops | The total number of write operations in a specified period of time. Note: write operations are counted on completion. |
DEPENDENT | aws.ec2.ebs.volume.writeops["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Read, ops | The total number of read operations in a specified period of time. Note: read operations are counted on completion. |
DEPENDENT | aws.ec2.ebs.volume.readops["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Read time, total | This metric is not supported with Multi-Attach enabled volumes. The total number of seconds spent by all read operations that completed in a specified period of time. If multiple requests are submitted at the same time, this total could be greater than the length of the period. For example, for a period of 1 minutes (60 seconds): if 150 operations completed during that period, and each operation took 1 second, the value would be 150 seconds. For Xen instances, data is reported only when there is read activity on the volume. |
DEPENDENT | aws.ec2.ebs.volume.totalreadtime["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Write time, total | This metric is not supported with Multi-Attach enabled volumes. The total number of seconds spent by all write operations that completed in a specified period of time. If multiple requests are submitted at the same time, this total could be greater than the length of the period. For example, for a period of 1 minute (60 seconds): if 150 operations completed during that period, and each operation took 1 second, the value would be 150 seconds. For Xen instances, data is reported only when there is write activity on the volume. |
DEPENDENT | aws.ec2.ebs.volume.totalwritetime["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON FAIL:DISCARD_VALUE -> |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Idle time | This metric is not supported with Multi-Attach enabled volumes. The total number of seconds in a specified period of time when no read or write operations were submitted. |
DEPENDENT | aws.ec2.ebs.volume.idletime["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Queue length | The number of read and write operation requests waiting to be completed in a specified period of time. |
DEPENDENT | aws.ec2.ebs.volume.queuelength["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Throughput, pct | This metric is not supported with Multi-Attach enabled volumes. Used with Provisioned IOPS SSD volumes only. The percentage of I/O operations per second (IOPS) delivered of the total IOPS provisioned for an Amazon EBS volume. Provisioned IOPS SSD volumes deliver their provisioned performance 99.9 percent of the time. During a write, if there are no other pending I/O requests in a minute, the metric value will be 100 percent. Also, a volume's I/O performance may become degraded temporarily due to an action you have taken (for example, creating a snapshot of a volume during peak usage, running the volume on a non-EBS-optimized instance, or accessing data on the volume for the first time). |
DEPENDENT | aws.ec2.ebs.volume.throughputpercentage["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Consumed Read/Write, ops | Used with Provisioned IOPS SSD volumes only. The total amount of read and write operations (normalized to 256K capacity units) consumed in a specified period of time. I/O operations that are smaller than 256K each count as 1 consumed IOPS. I/O operations that are larger than 256K are counted in 256K capacity units. For example, a 1024K I/O would count as 4 consumed IOPS. |
DEPENDENT | aws.ec2.ebs.volume.consumedreadwriteops["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
AWS EC2 | AWS EBS: ["{#VOLUME_ID}"]: Burst balance | Used with General Purpose SSD (gp2), Throughput Optimized HDD (st1), and Cold HDD (sc1) volumes only. Provides information about the percentage of I/O credits (for gp2) or throughput credits (for st1 and sc1) remaining in the burst bucket. Data is reported to CloudWatch only when the volume is active. If the volume is not attached, no data is reported. |
DEPENDENT | aws.ec2.ebs.volume.burstbalance["{#VOLUMEID}"] Preprocessing: - JSONPATH: ⛔️ON_FAIL: |
Zabbix raw items | AWS EC2: Get metrics data | Get instance metrics. Full metrics list related to EC2: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewingmetricswith_cloudwatch.html |
SCRIPT | aws.ec2.getmetrics Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS CloudWatch: Get instance alarms data | DescribeAlarms API method: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarms.html |
SCRIPT | aws.ec2.getalarms Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS EBS: Get volumes data | Get volumes attached to instance. DescribeVolumes API method: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVolumes.html |
SCRIPT | aws.ec2.getvolumes Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Zabbix raw items | AWS EBS: ["{#VOLUME_ID}"]: Get metrics | Get metrics of EBS volume. Full metrics list related to EBS: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/usingcloudwatchebs.html |
SCRIPT | aws.ec2.getebsmetrics["{#VOLUMEID}"] Preprocessing: - CHECK NOTSUPPORTED⛔️ON FAIL:DISCARD_VALUE -> Expression: The text is too long. Please see the template. |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
AWS EC2: Failed to get metrics data | - |
length(last(/AWS EC2 by HTTP/aws.ec2.metrics.check))>0 |
WARNING | |
AWS EC2: Failed to get alarms data | - |
length(last(/AWS EC2 by HTTP/aws.ec2.alarms.check))>0 |
WARNING | |
AWS EC2: Failed to get volumes info | - |
length(last(/AWS EC2 by HTTP/aws.ec2.volumes.check))>0 |
WARNING | |
AWS EC2: Instance CPU Credit balance is too low | The number of earned CPU credits has been less than {$AWS.EC2.CPU.CREDIT.BALANCE.MIN.WARN} in the last 5 minutes. |
max(/AWS EC2 by HTTP/aws.ec2.cpu.credit_balance,5m)<{$AWS.EC2.CPU.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS EC2: Instance has spent too many CPU surplus credits | The number of spent surplus credits that are not paid down and which thus incur an additional charge is over {$AWS.EC2.CPU.CREDIT.SURPLUS.BALANCE.MAX.WARN}. |
last(/AWS EC2 by HTTP/aws.ec2.cpu.surplus_credit_charged)>{$AWS.EC2.CPU.CREDIT.SURPLUS.BALANCE.MAX.WARN} |
WARNING | |
AWS EC2: High CPU utilization | CPU utilization is too high. The system might be slow to respond. |
min(/AWS EC2 by HTTP/aws.ec2.cpu_utilization,15m)>{$AWS.EC2.CPU.UTIL.WARN.MAX} |
WARNING | |
AWS EC2: Byte Credit balance is too low | - |
max(/AWS EC2 by HTTP/aws.ec2.ebs.byte_balance,5m)<{$AWS.EBS.BYTE.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS EC2: I/O Credit balance is too low | - |
max(/AWS EC2 by HTTP/aws.ec2.ebs.io_balance,5m)<{$AWS.EBS.IO.CREDIT.BALANCE.MIN.WARN} |
WARNING | |
AWS EC2: Instance status check failed | These checks detect problems that require your involvement to repair. The following are examples of problems that can cause instance status checks to fail: Failed system status checks Incorrect networking or startup configuration Exhausted memory Corrupted file system Incompatible kernel |
last(/AWS EC2 by HTTP/aws.ec2.status_check_failed_instance)=1 |
AVERAGE | |
AWS EC2: System status check failed | These checks detect underlying problems with your instance that require AWS involvement to repair. The following are examples of problems that can cause system status checks to fail: Loss of network connectivity Loss of system power Software issues on the physical host Hardware issues on the physical host that impact network reachability |
last(/AWS EC2 by HTTP/aws.ec2.status_check_failed_system)=1 |
AVERAGE | |
AWS EC2 Alarms: "{#ALARM_NAME}" has 'Alarm' state | Alarm "{#ALARM_NAME}" has 'Alarm' state. Reason: {ITEM.LASTVALUE2} |
last(/AWS EC2 by HTTP/aws.ec2.alarm.state["{#ALARM_NAME}"])=2 and length(last(/AWS EC2 by HTTP/aws.ec2.alarm.state_reason["{#ALARM_NAME}"]))>0 |
AVERAGE | |
AWS EC2 Alarms: "{#ALARM_NAME}" has 'Insufficient data' state | - |
last(/AWS EC2 by HTTP/aws.ec2.alarm.state["{#ALARM_NAME}"])=1 |
INFO | |
AWS EBS: Volume "{#VOLUME_ID}" has 'error' state | - |
last(/AWS EC2 by HTTP/aws.ec2.ebs.status["{#VOLUME_ID}"])=5 |
WARNING | |
AWS EBS: Burst balance is too low | - |
max(/AWS EC2 by HTTP/aws.ec2.ebs.volume.burst_balance["{#VOLUME_ID}"],5m)<{$AWS.EBS.BURST.CREDIT.BALANCE.MIN.WARN} |
WARNING |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template or ask for help with it at ZABBIX forums.