Available solutions
Azure MySQL Flexible Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 7.4 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL flexible servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization, expressed in %. |
90 |
| {$AZURE.DB.ABORTED.CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for a trigger expression. |
25 |
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Azure MySQL Flexible Server", e.g. {$HTTP.TLS.VERIFY:"Azure MySQL Flexible Server"}. |
full |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Network out | Network egress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Network in | Network ingress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Connections total | The count of total connections. |
Dependent item | azure.db.mysql.connections.total Preprocessing
|
| Connections aborted | The count of aborted connections. |
Dependent item | azure.db.mysql.connections.aborted Preprocessing
|
| Queries | The count of queries. |
Dependent item | azure.db.mysql.queries Preprocessing
|
| IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| CPU credits remaining | The remaining CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.remaining Preprocessing
|
| CPU credits consumed | The consumed CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.consumed Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Azure MySQL Flexible: 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 Flexible: 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 Flexible: MySQL server is degraded | The resource is in a degraded state. |
last(/Azure MySQL Flexible Server by HTTP/azure.db.mysql.availability.state)=1 |
Average | |
| Azure MySQL Flexible: 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 Flexible: 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 Flexible: Server has aborted connections | The number of failed attempts to connect to the MySQL server is more than |
min(/Azure MySQL Flexible Server by HTTP/azure.db.mysql.connections.aborted,5m)>{$AZURE.DB.ABORTED.CONN.MAX.WARN} |
Average | |
| Azure MySQL Flexible: 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 Flexible: 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 |
Azure MySQL Flexible Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 7.2 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL flexible servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization, expressed in %. |
90 |
| {$AZURE.DB.ABORTED.CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for a trigger expression. |
25 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Network out | Network egress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Network in | Network ingress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Connections total | The count of total connections. |
Dependent item | azure.db.mysql.connections.total Preprocessing
|
| Connections aborted | The count of aborted connections. |
Dependent item | azure.db.mysql.connections.aborted Preprocessing
|
| Queries | The count of queries. |
Dependent item | azure.db.mysql.queries Preprocessing
|
| IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| CPU credits remaining | The remaining CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.remaining Preprocessing
|
| CPU credits consumed | The consumed CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.consumed Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Azure MySQL Flexible: 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 Flexible: 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 Flexible: MySQL server is degraded | The resource is in a degraded state. |
last(/Azure MySQL Flexible Server by HTTP/azure.db.mysql.availability.state)=1 |
Average | |
| Azure MySQL Flexible: 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 Flexible: 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 Flexible: Server has aborted connections | The number of failed attempts to connect to the MySQL server is more than |
min(/Azure MySQL Flexible Server by HTTP/azure.db.mysql.connections.aborted,5m)>{$AZURE.DB.ABORTED.CONN.MAX.WARN} |
Average | |
| Azure MySQL Flexible: 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 Flexible: 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 |
Azure MySQL Flexible Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL flexible servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization, expressed in %. |
90 |
| {$AZURE.DB.ABORTED.CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for a trigger expression. |
25 |
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Azure MySQL Flexible Server", e.g. {$HTTP.TLS.VERIFY:"Azure MySQL Flexible Server"}. |
full |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Network out | Network egress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Network in | Network ingress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Connections total | The count of total connections. |
Dependent item | azure.db.mysql.connections.total Preprocessing
|
| Connections aborted | The count of aborted connections. |
Dependent item | azure.db.mysql.connections.aborted Preprocessing
|
| Queries | The count of queries. |
Dependent item | azure.db.mysql.queries Preprocessing
|
| IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| CPU credits remaining | The remaining CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.remaining Preprocessing
|
| CPU credits consumed | The consumed CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.consumed Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Azure MySQL Flexible: 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 Flexible: 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 Flexible: MySQL server is degraded | The resource is in a degraded state. |
last(/Azure MySQL Flexible Server by HTTP/azure.db.mysql.availability.state)=1 |
Average | |
| Azure MySQL Flexible: 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 Flexible: 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 Flexible: Server has aborted connections | The number of failed attempts to connect to the MySQL server is more than |
min(/Azure MySQL Flexible Server by HTTP/azure.db.mysql.connections.aborted,5m)>{$AZURE.DB.ABORTED.CONN.MAX.WARN} |
Average | |
| Azure MySQL Flexible: 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 Flexible: 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 |
Azure MySQL Flexible Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 6.4 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL flexible servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization, expressed in %. |
90 |
| {$AZURE.DB.ABORTED.CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for a trigger expression. |
25 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Azure MySQL: Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Azure MySQL: Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Azure MySQL: Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Azure MySQL: Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Azure MySQL: Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Azure MySQL: Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Azure MySQL: Network out | Network egress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Azure MySQL: Network in | Network ingress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Azure MySQL: Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Azure MySQL: Connections total | The count of total connections. |
Dependent item | azure.db.mysql.connections.total Preprocessing
|
| Azure MySQL: Connections aborted | The count of aborted connections. |
Dependent item | azure.db.mysql.connections.aborted Preprocessing
|
| Azure MySQL: Queries | The count of queries. |
Dependent item | azure.db.mysql.queries Preprocessing
|
| Azure MySQL: IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Azure MySQL: Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Azure MySQL: Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Azure MySQL: Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Azure MySQL: Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Azure MySQL: Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Azure MySQL: CPU credits remaining | The remaining CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.remaining Preprocessing
|
| Azure MySQL: CPU credits consumed | The consumed CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.consumed Preprocessing
|
Triggers
| 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 a 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 |
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 |
Azure MySQL flexible server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
Requirements
For Zabbix version: 6.2 and higher.
Setup
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.
- Link the template to a host.
- Configure macros
{$AZURE.APP_ID},{$AZURE.PASSWORD},{$AZURE.TENANT_ID},{$AZURE.SUBSCRIPTION_ID}, and{$AZURE.RESOURCE_ID}.
Configuration
No specific Zabbix configuration is required.
Macros used
| 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. |
`` |
Template links
There are no template links in this template.
Discovery rules
Items collected
| 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: - DISCARD_UNCHANGED_HEARTBEAT: |
| Azure | Azure MySQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.mysql.availability.state Preprocessing: - JSONPATH: ⛔️ON_FAIL: - STR_REPLACE: - STR_REPLACE: - STR_REPLACE: - STR_REPLACE: - IN_RANGE: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Azure | Azure MySQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.mysql.availability.details Preprocessing: - JSONPATH: - DISCARD_UNCHANGED_HEARTBEAT: |
| 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: |
Triggers
| 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 |
Feedback
Please report any issues with the template at https://support.zabbix.com.
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums.
Azure MySQL Flexible Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL flexible servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 6.0 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL flexible servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of the storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of the storage utilization, expressed in %. |
90 |
| {$AZURE.DB.ABORTED.CONN.MAX.WARN} | The number of failed attempts to connect to the MySQL server for a trigger expression. |
25 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Azure MySQL: Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Azure MySQL: Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Azure MySQL: Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Azure MySQL: Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Azure MySQL: Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Azure MySQL: Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Azure MySQL: Network out | Network egress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Azure MySQL: Network in | Network ingress of a host, expressed in bytes. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Azure MySQL: Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Azure MySQL: Connections total | The count of total connections. |
Dependent item | azure.db.mysql.connections.total Preprocessing
|
| Azure MySQL: Connections aborted | The count of aborted connections. |
Dependent item | azure.db.mysql.connections.aborted Preprocessing
|
| Azure MySQL: Queries | The count of queries. |
Dependent item | azure.db.mysql.queries Preprocessing
|
| Azure MySQL: IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Azure MySQL: Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Azure MySQL: Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Azure MySQL: Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Azure MySQL: Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Azure MySQL: Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Azure MySQL: CPU credits remaining | The remaining CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.remaining Preprocessing
|
| Azure MySQL: CPU credits consumed | The consumed CPU credits. |
Dependent item | azure.db.mysql.cpu.credits.consumed Preprocessing
|
Triggers
| 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 a 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 |
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 |
Azure MySQL Single Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 7.4 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL single servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of memory utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of storage 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.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Azure MySQL Single Server", e.g. {$HTTP.TLS.VERIFY:"Azure MySQL Single Server"}. |
full |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Network out | The network outbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Network in | The network inbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Connections failed | The count of failed connections. |
Dependent item | azure.db.mysql.connections.failed Preprocessing
|
| IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Server log storage percent | The storage utilization by server log, expressed in %. |
Dependent item | azure.db.mysql.storage.server.log.percent Preprocessing
|
| Server log storage used | The storage space used by server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.used Preprocessing
|
| Server log storage limit | The storage limit of server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.limit Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Azure MySQL Single: 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 Single: 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 Single: MySQL server is degraded | The resource is in a degraded state. |
last(/Azure MySQL Single Server by HTTP/azure.db.mysql.availability.state)=1 |
Average | |
| Azure MySQL Single: 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 Single: 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 Single: 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 Single: Server has failed connections | The number of failed attempts to connect to the MySQL server is more than |
min(/Azure MySQL Single Server by HTTP/azure.db.mysql.connections.failed,5m)>{$AZURE.DB.FAILED.CONN.MAX.WARN} |
Average | |
| Azure MySQL Single: 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 Single: 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 |
Azure MySQL Single Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 7.2 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL single servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of memory utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of storage 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 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Network out | The network outbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Network in | The network inbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Connections failed | The count of failed connections. |
Dependent item | azure.db.mysql.connections.failed Preprocessing
|
| IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Server log storage percent | The storage utilization by server log, expressed in %. |
Dependent item | azure.db.mysql.storage.server.log.percent Preprocessing
|
| Server log storage used | The storage space used by server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.used Preprocessing
|
| Server log storage limit | The storage limit of server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.limit Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Azure MySQL Single: 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 Single: 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 Single: MySQL server is degraded | The resource is in a degraded state. |
last(/Azure MySQL Single Server by HTTP/azure.db.mysql.availability.state)=1 |
Average | |
| Azure MySQL Single: 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 Single: 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 Single: 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 Single: Server has failed connections | The number of failed attempts to connect to the MySQL server is more than |
min(/Azure MySQL Single Server by HTTP/azure.db.mysql.connections.failed,5m)>{$AZURE.DB.FAILED.CONN.MAX.WARN} |
Average | |
| Azure MySQL Single: 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 Single: 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 |
Azure MySQL Single Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL single servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of memory utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of storage 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 |
| {$HTTP.TLS.VERIFY} | TLS certificate verification for script items: "none" - disabled, "peer" - verify the certificate chain and expiration, "full" - full verification. Any other value enables full verification. To override the setting for this template only, define the macro with the context "Azure MySQL Single Server", e.g. {$HTTP.TLS.VERIFY:"Azure MySQL Single Server"}. |
full |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Network out | The network outbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Network in | The network inbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Connections failed | The count of failed connections. |
Dependent item | azure.db.mysql.connections.failed Preprocessing
|
| IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Server log storage percent | The storage utilization by server log, expressed in %. |
Dependent item | azure.db.mysql.storage.server.log.percent Preprocessing
|
| Server log storage used | The storage space used by server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.used Preprocessing
|
| Server log storage limit | The storage limit of server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.limit Preprocessing
|
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Azure MySQL Single: 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 Single: 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 Single: MySQL server is degraded | The resource is in a degraded state. |
last(/Azure MySQL Single Server by HTTP/azure.db.mysql.availability.state)=1 |
Average | |
| Azure MySQL Single: 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 Single: 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 Single: 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 Single: Server has failed connections | The number of failed attempts to connect to the MySQL server is more than |
min(/Azure MySQL Single Server by HTTP/azure.db.mysql.connections.failed,5m)>{$AZURE.DB.FAILED.CONN.MAX.WARN} |
Average | |
| Azure MySQL Single: 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 Single: 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 |
Azure MySQL Single Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 6.4 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL single servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of memory utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of storage 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 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Azure MySQL: Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Azure MySQL: Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Azure MySQL: Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Azure MySQL: Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Azure MySQL: Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Azure MySQL: Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Azure MySQL: Network out | The network outbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Azure MySQL: Network in | The network inbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Azure MySQL: Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Azure MySQL: Connections failed | The count of failed connections. |
Dependent item | azure.db.mysql.connections.failed Preprocessing
|
| Azure MySQL: IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Azure MySQL: Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Azure MySQL: Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Azure MySQL: Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Azure MySQL: Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Azure MySQL: Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Azure MySQL: Server log storage percent | The storage utilization by server log, expressed in %. |
Dependent item | azure.db.mysql.storage.server.log.percent Preprocessing
|
| Azure MySQL: Server log storage used | The storage space used by server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.used Preprocessing
|
| Azure MySQL: Server log storage limit | The storage limit of server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.limit Preprocessing
|
Triggers
| 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 a 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 |
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 |
Azure MySQL single server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
Requirements
For Zabbix version: 6.2 and higher.
Setup
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.
- Link the template to a host.
- Configure macros
{$AZURE.APP_ID},{$AZURE.PASSWORD},{$AZURE.TENANT_ID},{$AZURE.SUBSCRIPTION_ID}, and{$AZURE.RESOURCE_ID}.
Configuration
No specific Zabbix configuration is required.
Macros used
| 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. |
`` |
Template links
There are no template links in this template.
Discovery rules
Items collected
| 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: - DISCARD_UNCHANGED_HEARTBEAT: |
| Azure | Azure MySQL: Availability state | The availability status of the resource. |
DEPENDENT | azure.db.mysql.availability.state Preprocessing: - JSONPATH: ⛔️ON_FAIL: - STR_REPLACE: - STR_REPLACE: - STR_REPLACE: - STR_REPLACE: - IN_RANGE: ⛔️ON_FAIL: - DISCARD_UNCHANGED_HEARTBEAT: |
| Azure | Azure MySQL: Availability status detailed | The summary description of the availability status. |
DEPENDENT | azure.db.mysql.availability.details Preprocessing: - JSONPATH: - DISCARD_UNCHANGED_HEARTBEAT: |
| 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: |
Triggers
| 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 |
Feedback
Please report any issues with the template at https://support.zabbix.com.
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums.
Azure MySQL Single Server by HTTP
Overview
This template is designed to monitor Microsoft Azure MySQL single servers by HTTP. It works without any external scripts and uses the script item.
Requirements
Zabbix version: 6.0 and higher.
Tested versions
This template has been tested on:
- Microsoft Azure MySQL single servers
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
-
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.
- Link the template to a host.
- Configure the macros:
{$AZURE.APP.ID},{$AZURE.PASSWORD},{$AZURE.TENANT.ID},{$AZURE.SUBSCRIPTION.ID}, and{$AZURE.RESOURCE.ID}.
Macros used
| Name | Description | Default |
|---|---|---|
| {$AZURE.PROXY} | Sets the HTTP proxy value. If this macro is empty, then no proxy is used. |
|
| {$AZURE.APP.ID} | The App ID of Microsoft Azure. |
|
| {$AZURE.PASSWORD} | Microsoft Azure password. |
|
| {$AZURE.DATA.TIMEOUT} | API response timeout. |
15s |
| {$AZURE.TENANT.ID} | Microsoft Azure tenant ID. |
|
| {$AZURE.SUBSCRIPTION.ID} | Microsoft Azure subscription ID. |
|
| {$AZURE.RESOURCE.ID} | Microsoft Azure MySQL server ID. |
|
| {$AZURE.DB.CPU.UTIL.CRIT} | The critical threshold of CPU utilization, expressed in %. |
90 |
| {$AZURE.DB.MEMORY.UTIL.CRIT} | The critical threshold of memory utilization, expressed in %. |
90 |
| {$AZURE.DB.STORAGE.PUSED.WARN} | The warning threshold of storage utilization, expressed in %. |
80 |
| {$AZURE.DB.STORAGE.PUSED.CRIT} | The critical threshold of storage 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 |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Azure MySQL: Get data | The result of API requests is expressed in the JSON. |
Script | azure.db.mysql.data.get |
| Azure MySQL: Get errors | A list of errors from API requests. |
Dependent item | azure.db.mysql.data.errors Preprocessing
|
| Azure MySQL: Availability state | The availability status of the resource. |
Dependent item | azure.db.mysql.availability.state Preprocessing
|
| Azure MySQL: Availability status detailed | The summary description of the availability status. |
Dependent item | azure.db.mysql.availability.details Preprocessing
|
| Azure MySQL: Percentage CPU | The CPU percent of a host. |
Dependent item | azure.db.mysql.cpu.percentage Preprocessing
|
| Azure MySQL: Memory utilization | The memory percent of a host. |
Dependent item | azure.db.mysql.memory.percentage Preprocessing
|
| Azure MySQL: Network out | The network outbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.egress Preprocessing
|
| Azure MySQL: Network in | The network inbound traffic across the active connections. |
Dependent item | azure.db.mysql.network.ingress Preprocessing
|
| Azure MySQL: Connections active | The count of active connections. |
Dependent item | azure.db.mysql.connections.active Preprocessing
|
| Azure MySQL: Connections failed | The count of failed connections. |
Dependent item | azure.db.mysql.connections.failed Preprocessing
|
| Azure MySQL: IO consumption percent | The consumption percent of I/O. |
Dependent item | azure.db.mysql.io.consumption.percent Preprocessing
|
| Azure MySQL: Storage percent | The storage utilization, expressed in %. |
Dependent item | azure.db.mysql.storage.percent Preprocessing
|
| Azure MySQL: Storage used | Used storage space, expressed in bytes. |
Dependent item | azure.db.mysql.storage.used Preprocessing
|
| Azure MySQL: Storage limit | The storage limit, expressed in bytes. |
Dependent item | azure.db.mysql.storage.limit Preprocessing
|
| Azure MySQL: Backup storage used | Used backup storage, expressed in bytes. |
Dependent item | azure.db.mysql.storage.backup.used Preprocessing
|
| Azure MySQL: Replication lag | The replication lag, expressed in seconds. |
Dependent item | azure.db.mysql.replication.lag Preprocessing
|
| Azure MySQL: Server log storage percent | The storage utilization by server log, expressed in %. |
Dependent item | azure.db.mysql.storage.server.log.percent Preprocessing
|
| Azure MySQL: Server log storage used | The storage space used by server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.used Preprocessing
|
| Azure MySQL: Server log storage limit | The storage limit of server log, expressed in bytes. |
Dependent item | azure.db.mysql.storage.server.log.limit Preprocessing
|
Triggers
| 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 a 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 |
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 |