Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/zabbix/zabbix.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'templates')
-rw-r--r--templates/app/pfsense_snmp/README.md2
-rw-r--r--templates/app/pfsense_snmp/template_app_pfsense_snmp.yaml38
-rw-r--r--templates/app/proxmox/README.md145
-rw-r--r--templates/app/proxmox/template_app_proxmox.yaml2401
-rw-r--r--templates/module/host_resources_snmp/README.md8
-rw-r--r--templates/module/host_resources_snmp/template_module_host_resources_snmp.yaml44
-rw-r--r--templates/module/linux/README.md10
-rw-r--r--templates/module/linux/template_module_linux.yaml32
-rw-r--r--templates/module/linux_active/README.md10
-rw-r--r--templates/module/linux_active/template_module_linux_active.yaml32
-rw-r--r--templates/module/linux_snmp_snmp/README.md14
-rw-r--r--templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml36
-rw-r--r--templates/module/windows_agent/README.md10
-rw-r--r--templates/module/windows_agent/template_module_windows_agent.yaml30
-rw-r--r--templates/module/windows_agent_active/README.md10
-rw-r--r--templates/module/windows_agent_active/template_module_windows_agent_active.yaml30
-rw-r--r--templates/net/arista_snmp/README.md4
-rw-r--r--templates/net/arista_snmp/template_net_arista_snmp.yaml26
-rw-r--r--templates/net/mellanox_snmp/README.md4
-rw-r--r--templates/net/mellanox_snmp/template_net_mellanox_snmp.yaml26
-rw-r--r--templates/os/linux/README.md10
-rw-r--r--templates/os/linux/template_os_linux.yaml32
-rw-r--r--templates/os/linux_active/README.md10
-rw-r--r--templates/os/linux_active/template_os_linux_active.yaml32
-rw-r--r--templates/os/linux_prom/README.md10
-rw-r--r--templates/os/linux_prom/template_os_linux_prom.yaml32
-rw-r--r--templates/os/linux_snmp_snmp/README.md14
-rw-r--r--templates/os/linux_snmp_snmp/template_os_linux_snmp_snmp.yaml38
-rw-r--r--templates/os/windows_agent/README.md10
-rw-r--r--templates/os/windows_agent/template_os_windows_agent.yaml30
-rw-r--r--templates/os/windows_agent_active/README.md10
-rw-r--r--templates/os/windows_agent_active/template_os_windows_agent_active.yaml30
-rw-r--r--templates/os/windows_snmp/README.md4
-rw-r--r--templates/os/windows_snmp/template_os_windows_snmp.yaml26
34 files changed, 2958 insertions, 242 deletions
diff --git a/templates/app/pfsense_snmp/README.md b/templates/app/pfsense_snmp/README.md
index 05d3adbb59d..bc6713d81b3 100644
--- a/templates/app/pfsense_snmp/README.md
+++ b/templates/app/pfsense_snmp/README.md
@@ -55,6 +55,8 @@ No specific Zabbix configuration is required.
|{$SWAP.PFREE.MIN.WARN} |<p>Threshold of free swap space for warning trigger in %.</p> |`50` |
|{$VFS.DEV.DEVNAME.MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level</p> |`^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|cd[0-9]*|pass[0-9]*|zram[0-9]*)` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/var/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.*(9.3|hrFSBerkeleyFFS)$` |
diff --git a/templates/app/pfsense_snmp/template_app_pfsense_snmp.yaml b/templates/app/pfsense_snmp/template_app_pfsense_snmp.yaml
index 5d7b12fd520..ae375be92a6 100644
--- a/templates/app/pfsense_snmp/template_app_pfsense_snmp.yaml
+++ b/templates/app/pfsense_snmp/template_app_pfsense_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:22Z'
+ version: '6.0'
+ date: '2022-04-10T20:58:35Z'
groups:
-
uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6
@@ -2660,16 +2660,16 @@ zabbix_export:
uuid: 711e2c5b136e4a51a2fb745d847a9fc5
expression: |
last(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/PFSense SNMP/vfs.fs.total[{#SNMPINDEX}])-last(/PFSense SNMP/vfs.fs.used[{#SNMPINDEX}]))<5G or timeleft(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}],1h,100)<1d)
- name: 'PFSense: Disk space is critically low'
+ ((last(/PFSense SNMP/vfs.fs.total[{#SNMPINDEX}])-last(/PFSense SNMP/vfs.fs.used[{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}],1h,100)<1d)
+ name: 'PFSense: [{#FSNAME}]: Disk space is critically low'
event_name: 'PFSense: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"PFSense"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
priority: AVERAGE
description: |
- Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"PFSense"}.
- Second condition should be one of the following:
- - The disk free space is less than 5G.
- - The disk will be full in less than 24 hours.
+ Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
+ Second condition should be one of the following:
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
+ - The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
-
@@ -2682,23 +2682,23 @@ zabbix_export:
uuid: ef0273e1092a40ff888e0ea87c859abb
expression: |
last(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/PFSense SNMP/vfs.fs.total[{#SNMPINDEX}])-last(/PFSense SNMP/vfs.fs.used[{#SNMPINDEX}]))<10G or timeleft(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}],1h,100)<1d)
- name: 'PFSense: Disk space is low'
+ ((last(/PFSense SNMP/vfs.fs.total[{#SNMPINDEX}])-last(/PFSense SNMP/vfs.fs.used[{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}],1h,100)<1d)
+ name: 'PFSense: [{#FSNAME}]: Disk space is low'
event_name: 'PFSense: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"PFSense"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
priority: WARNING
description: |
- Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"PFSense"}.
- Second condition should be one of the following:
- - The disk free space is less than 10G.
- - The disk will be full in less than 24 hours.
+ Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
+ Second condition should be one of the following:
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
+ - The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
-
name: 'PFSense: Disk space is critically low'
expression: |
last(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/PFSense SNMP/vfs.fs.total[{#SNMPINDEX}])-last(/PFSense SNMP/vfs.fs.used[{#SNMPINDEX}]))<5G or timeleft(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}],1h,100)<1d)
+ ((last(/PFSense SNMP/vfs.fs.total[{#SNMPINDEX}])-last(/PFSense SNMP/vfs.fs.used[{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/PFSense SNMP/vfs.fs.pused[{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -2846,6 +2846,14 @@ zabbix_export:
value: '^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|cd[0-9]*|pass[0-9]*|zram[0-9]*)'
description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
diff --git a/templates/app/proxmox/README.md b/templates/app/proxmox/README.md
new file mode 100644
index 00000000000..7a2994daa45
--- /dev/null
+++ b/templates/app/proxmox/README.md
@@ -0,0 +1,145 @@
+
+# Proxmox VE by HTTP
+
+## Overview
+
+For Zabbix version: 6.2 and higher
+Proxmox VE uses a REST like API. The concept is described in (Resource Oriented Architecture - ROA).
+
+We choose JSON as primary data format, and the whole API is formally defined using JSON Schema.
+
+You can explore the API documentation at http://pve.proxmox.com/pve-docs/api-viewer/index.html
+
+
+## Setup
+
+Create an API token for the monitoring user. Important note: for security reasons, it is recommended to create a separate user (Datacenter - Permissions).
+
+For the created API token and user, provide the necessary access levels:
+
+* Check: ["perm","/",["Sys.Audit"]]
+
+* Check: ["perm","/nodes/{node}",["Sys.Audit"]]
+
+* Check: ["perm","/vms/{vmid}",["VM.Audit"]]
+
+Copy the resulting Token ID and Secret into host macros.
+
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$PVE.CPU.PUSE.MAX.WARN} |<p>Maximum used CPU in percentage.</p> |`90` |
+|{$PVE.LXC.CPU.PUSE.MAX.WARN} |<p>Maximum used CPU in percentage.</p> |`90` |
+|{$PVE.LXC.MEMORY.PUSE.MAX.WARN} |<p>Maximum used memory in percentage.</p> |`90` |
+|{$PVE.MEMORY.PUSE.MAX.WARN} |<p>Maximum used memory in percentage.</p> |`90` |
+|{$PVE.ROOT.PUSE.MAX.WARN} |<p>Maximum used root space in percentage.</p> |`90` |
+|{$PVE.STORAGE.PUSE.MAX.WARN} |<p>Maximum used storage space in percentage.</p> |`90` |
+|{$PVE.SWAP.PUSE.MAX.WARN} |<p>Maximum used swap space in percentage.</p> |`90` |
+|{$PVE.TOKEN.ID} |<p>API tokens allow stateless access to most parts of the REST API by another system, software or API client.</p> |`USER@REALM!TOKENID` |
+|{$PVE.TOKEN.SECRET} |<p>Secret key.</p> |`xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` |
+|{$PVE.URL.PORT} |<p>The API uses the HTTPS protocol and the server listens to port 8006 by default.</p> |`8006` |
+|{$PVE.VM.CPU.PUSE.MAX.WARN} |<p>Maximum used CPU in percentage.</p> |`90` |
+|{$PVE.VM.MEMORY.PUSE.MAX.WARN} |<p>Maximum used memory in percentage.</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Cluster discovery |<p>-</p> |DEPENDENT |proxmox.cluster.discovery<p>**Filter**:</p>AND <p>- {#RESOURCE.TYPE} MATCHES_REGEX `^cluster$`</p> |
+|LXC discovery |<p>-</p> |DEPENDENT |proxmox.lxc.discovery<p>**Filter**:</p>AND <p>- {#RESOURCE.TYPE} MATCHES_REGEX `^lxc$`</p> |
+|Node discovery |<p>-</p> |DEPENDENT |proxmox.node.discovery<p>**Filter**:</p>AND <p>- {#RESOURCE.TYPE} MATCHES_REGEX `^node$`</p> |
+|QEMU discovery |<p>-</p> |DEPENDENT |proxmox.qemu.discovery<p>**Filter**:</p>AND <p>- {#RESOURCE.TYPE} MATCHES_REGEX `^qemu$`</p> |
+|Storage discovery |<p>-</p> |DEPENDENT |proxmox.storage.discovery<p>**Filter**:</p>AND <p>- {#RESOURCE.TYPE} MATCHES_REGEX `^storage$`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |Proxmox: Node [{#NODE.NAME}]: CPU, usage |<p>CPU usage.</p> |DEPENDENT |proxmox.node.cpu[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.cpu`</p><p>- MULTIPLIER: `100`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|CPU |Proxmox: Node [{#NODE.NAME}]: CPU, loadavg |<p>CPU average load.</p> |DEPENDENT |proxmox.node.loadavg[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.loadavg`</p><p>- MULTIPLIER: `100`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|CPU |Proxmox: Node [{#NODE.NAME}]: CPU, iowait |<p>CPU iowait time.</p> |DEPENDENT |proxmox.node.iowait[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.iowait`</p><p>- MULTIPLIER: `100`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|CPU |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: CPU usage |<p>CPU load.</p> |DEPENDENT |proxmox.qemu.cpu[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.cpu`</p><p>- MULTIPLIER: `100`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|CPU |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: CPU usage |<p>CPU load.</p> |DEPENDENT |proxmox.lxc.cpu[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.cpu`</p><p>- MULTIPLIER: `100`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|General |Proxmox: Node [{#NODE.NAME}]: Time zone |<p>Time zone.</p> |DEPENDENT |proxmox.node.timezone[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.timezone`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|General |Proxmox: Node [{#NODE.NAME}]: Localtime |<p>Seconds since 1970-01-01 00:00:00 (local time).</p> |DEPENDENT |proxmox.node.localtime[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.localtime`</p> |
+|General |Proxmox: Node [{#NODE.NAME}]: Time |<p>Seconds since 1970-01-01 00:00:00 UTC.</p> |DEPENDENT |proxmox.node.utctime[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.time`</p> |
+|Inventory |Proxmox: Node [{#NODE.NAME}]: PVE version |<p>PVE manager version.</p> |DEPENDENT |proxmox.node.pveversion[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.pveversion`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Proxmox: Node [{#NODE.NAME}]: Kernel version |<p>Kernel version info.</p> |DEPENDENT |proxmox.node.kernelversion[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.kversion`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Proxmox: Node [{#NODE.NAME}]: Memory, used |<p>Memory usage.</p> |DEPENDENT |proxmox.node.memused[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.memused`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Memory |Proxmox: Node [{#NODE.NAME}]: Memory, total |<p>Memory total.</p> |DEPENDENT |proxmox.node.memtotal[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.memtotal`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Memory |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Memory usage |<p>Used memory in Bytes.</p> |DEPENDENT |proxmox.qemu.mem[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.mem`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Memory |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Memory total |<p>Total memory in Bytes.</p> |DEPENDENT |proxmox.qemu.maxmem[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.maxmem`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Memory |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Memory usage |<p>Used memory in Bytes.</p> |DEPENDENT |proxmox.lxc.mem[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.mem`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Memory |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Memory total |<p>Total memory in Bytes.</p> |DEPENDENT |proxmox.lxc.maxmem[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.maxmem`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Network interfaces |Proxmox: Node [{#NODE.NAME}]: Outgoing data, rate |<p>Network usage.</p> |DEPENDENT |proxmox.node.netout[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.netout`</p><p>- MULTIPLIER: `8`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Network interfaces |Proxmox: Node [{#NODE.NAME}]: Incoming data, rate |<p>Network usage.</p> |DEPENDENT |proxmox.node.netin[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.netin`</p><p>- MULTIPLIER: `8`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Network interfaces |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Incoming data, rate |<p>Incoming data rate.</p> |DEPENDENT |proxmox.qemu.netin[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.netin`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Network interfaces |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Outgoing data, rate |<p>Outgoing data rate.</p> |DEPENDENT |proxmox.qemu.netout[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.netout`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Network interfaces |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Incoming data, rate |<p>Incoming data rate.</p> |DEPENDENT |proxmox.lxc.netin[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.netin`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Network interfaces |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Outgoing data, rate |<p>Outgoing data rate.</p> |DEPENDENT |proxmox.lxc.netout[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.netout`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Status |Proxmox: API service status |<p>Get API service status.</p> |SCRIPT |proxmox.api.available<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p><p>**Expression**:</p>`The text is too long. Please see the template.` |
+|Status |Proxmox: Cluster [{#RESOURCE.NAME}]: Quorate |<p>Indicates if there is a majority of nodes online to make decisions.</p> |DEPENDENT |proxmox.cluster.quorate[{#RESOURCE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.[?(@.name == '{#RESOURCE.NAME}' && @.type == 'cluster')].quorate.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Status |Proxmox: Node [{#NODE.NAME}]: Status |<p>Indicates if the node is online or offline.</p> |DEPENDENT |proxmox.node.online[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.[?(@.name == '{#NODE.NAME}' && @.type == 'node')].online.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Status |Proxmox: Node [{#NODE.NAME}]: Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |DEPENDENT |proxmox.node.uptime[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.uptime`</p> |
+|Status |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |DEPENDENT |proxmox.qemu.uptime[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.uptime`</p> |
+|Status |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Status |<p>-</p> |DEPENDENT |proxmox.qemu.vmstatus[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.status`</p> |
+|Status |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |DEPENDENT |proxmox.lxc.uptime[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.uptime`</p> |
+|Status |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Status |<p>-</p> |DEPENDENT |proxmox.lxc.vmstatus[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.status`</p> |
+|Storage |Proxmox: Node [{#NODE.NAME}]: Root filesystem, used |<p>Root filesystem usage.</p> |DEPENDENT |proxmox.node.rootused[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.rootused`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: Node [{#NODE.NAME}]: Root filesystem, total |<p>Root filesystem total.</p> |DEPENDENT |proxmox.node.roottotal[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.roottotal`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: Node [{#NODE.NAME}]: Swap filesystem, total |<p>Swap total.</p> |DEPENDENT |proxmox.node.swaptotal[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.swaptotal`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: Node [{#NODE.NAME}]: Swap filesystem, used |<p>Swap used.</p> |DEPENDENT |proxmox.node.swapused[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.swapused`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Type |<p>More specific type, if available.</p> |DEPENDENT |proxmox.node.plugintype[{#NODE.NAME},{#STORAGE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].plugintype.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|Storage |Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Size |<p>Storage size in bytes.</p> |DEPENDENT |proxmox.node.maxdisk[{#NODE.NAME},{#STORAGE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].maxdisk.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Content |<p>Allowed storage content types.</p> |DEPENDENT |proxmox.node.content[{#NODE.NAME},{#STORAGE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].content.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|Storage |Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Used |<p>Used disk space in bytes.</p> |DEPENDENT |proxmox.node.disk[{#NODE.NAME},{#STORAGE.NAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].disk.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Disk write, rate |<p>Disk write.</p> |DEPENDENT |proxmox.qemu.diskwrite[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.diskwrite`</p><p>- CHANGE_PER_SECOND</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Disk read, rate |<p>Disk read.</p> |DEPENDENT |proxmox.qemu.diskread[{#QEMU.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.diskread`</p><p>- CHANGE_PER_SECOND</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Disk write, rate |<p>Disk write.</p> |DEPENDENT |proxmox.lxc.diskwrite[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.diskwrite`</p><p>- CHANGE_PER_SECOND</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Storage |Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Disk read, rate |<p>Disk read.</p> |DEPENDENT |proxmox.lxc.diskread[{#LXC.ID}]<p>**Preprocessing**:</p><p>- JSONPATH: `$.data.diskread`</p><p>- CHANGE_PER_SECOND</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `10m`</p> |
+|Zabbix raw items |Proxmox: Get cluster resources |<p>Resources index.</p> |HTTP_AGENT |proxmox.cluster.resources<p>**Preprocessing**:</p><p>- CHECK_NOT_SUPPORTED</p><p>⛔️ON_FAIL: `CUSTOM_VALUE -> Error getting data`</p> |
+|Zabbix raw items |Proxmox: Get cluster status |<p>Get cluster status information.</p> |HTTP_AGENT |proxmox.cluster.status<p>**Preprocessing**:</p><p>- CHECK_NOT_SUPPORTED</p><p>⛔️ON_FAIL: `CUSTOM_VALUE -> Error getting data`</p> |
+|Zabbix raw items |Proxmox: Node [{#NODE.NAME}]: Status |<p>Read node status.</p> |HTTP_AGENT |proxmox.node.status[{#NODE.NAME}] |
+|Zabbix raw items |Proxmox: Node [{#NODE.NAME}]: RRD statistics |<p>Read node RRD statistics.</p> |HTTP_AGENT |proxmox.node.rrd[{#NODE.NAME}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `var rrd_data = JSON.parse(value).data; return JSON.stringify(rrd_data[rrd_data.length - 2]) `</p> |
+|Zabbix raw items |Proxmox: Node [{#NODE.NAME}]: Time |<p>Read server time and time zone settings.</p> |HTTP_AGENT |proxmox.node.time[{#NODE.NAME}] |
+|Zabbix raw items |Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME}]: Status |<p>Read VM status.</p> |HTTP_AGENT |proxmox.qemu.status[{#QEMU.ID}] |
+|Zabbix raw items |Proxmox: LXC [{#LXC.NAME}/{#LXC.NAME}]: Status |<p>Read LXC status.</p> |HTTP_AGENT |proxmox.lxc.status[{#LXC.ID}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Proxmox: Node [{#NODE.NAME}] high CPU usage |<p>CPU usage.</p> |`min(/Proxmox VE by HTTP/proxmox.node.cpu[{#NODE.NAME}],5m) > {$PVE.CPU.PUSE.MAX.WARN:"{#NODE.NAME}"}` |WARNING | |
+|Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})] high CPU usage |<p>CPU usage.</p> |`min(/Proxmox VE by HTTP/proxmox.qemu.cpu[{#QEMU.ID}],5m) > {$PVE.VM.CPU.PUSE.MAX.WARN:"{#QEMU.ID}"}` |WARNING | |
+|Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})] high CPU usage |<p>CPU usage.</p> |`min(/Proxmox VE by HTTP/proxmox.lxc.cpu[{#LXC.ID}],5m) > {$PVE.LXC.CPU.PUSE.MAX.WARN:"{#LXC.ID}"}` |WARNING | |
+|Proxmox: Node [{#NODE.NAME}]: PVE manager has changed |<p>Firmware version has changed. Ack to close</p> |`last(/Proxmox VE by HTTP/proxmox.node.pveversion[{#NODE.NAME}],#1)<>last(/Proxmox VE by HTTP/proxmox.node.pveversion[{#NODE.NAME}],#2) and length(last(/Proxmox VE by HTTP/proxmox.node.pveversion[{#NODE.NAME}]))>0` |INFO |<p>Manual close: YES</p> |
+|Proxmox: Node [{#NODE.NAME}]: Kernel version has changed |<p>Firmware version has changed. Ack to close</p> |`last(/Proxmox VE by HTTP/proxmox.node.kernelversion[{#NODE.NAME}],#1)<>last(/Proxmox VE by HTTP/proxmox.node.kernelversion[{#NODE.NAME}],#2) and length(last(/Proxmox VE by HTTP/proxmox.node.kernelversion[{#NODE.NAME}]))>0` |INFO |<p>Manual close: YES</p> |
+|Proxmox: Node [{#NODE.NAME}] high memory usage |<p>Memory usage.</p> |`min(/Proxmox VE by HTTP/proxmox.node.memused[{#NODE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.memtotal[{#NODE.NAME}]) * 100 >{$PVE.MEMORY.PUSE.MAX.WARN:"{#NODE.NAME}"}` |WARNING | |
+|Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})] high memory usage |<p>Memory usage.</p> |`min(/Proxmox VE by HTTP/proxmox.qemu.mem[{#QEMU.ID}],5m) / last(/Proxmox VE by HTTP/proxmox.qemu.maxmem[{#QEMU.ID}]) * 100 >{$PVE.VM.MEMORY.PUSE.MAX.WARN:"{#QEMU.ID}"}` |WARNING | |
+|Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})] high memory usage |<p>Memory usage.</p> |`min(/Proxmox VE by HTTP/proxmox.lxc.mem[{#LXC.ID}],5m) / last(/Proxmox VE by HTTP/proxmox.lxc.maxmem[{#LXC.ID}]) * 100 >{$PVE.LXC.MEMORY.PUSE.MAX.WARN:"{#LXC.ID}"}` |WARNING | |
+|Proxmox: API service not available |<p>The API service is not available. Check your network and authorization settings.</p> |`last(/Proxmox VE by HTTP/proxmox.api.available) <> 200` |HIGH | |
+|Proxmox: Cluster [{#RESOURCE.NAME}] not quorum |<p>Proxmox VE use a quorum-based technique to provide a consistent state among all cluster nodes.</p> |`last(/Proxmox VE by HTTP/proxmox.cluster.quorate[{#RESOURCE.NAME}]) <> 1` |HIGH | |
+|Proxmox: Node [{#NODE.NAME}] offline |<p>Node offline.</p> |`last(/Proxmox VE by HTTP/proxmox.node.online[{#NODE.NAME}]) <> 1` |HIGH | |
+|Proxmox: Node [{#NODE.NAME}]: has been restarted |<p>Uptime is less than 10 minutes</p> |`last(/Proxmox VE by HTTP/proxmox.node.uptime[{#NODE.NAME}])<10m` |INFO |<p>Manual close: YES</p> |
+|Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME}]: has been restarted |<p>Uptime is less than 10 minutes</p> |`last(/Proxmox VE by HTTP/proxmox.qemu.uptime[{#QEMU.ID}])<10m` |INFO |<p>Manual close: YES</p> |
+|Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Not running |<p>VM state is not "running".</p> |`last(/Proxmox VE by HTTP/proxmox.qemu.vmstatus[{#QEMU.ID}])<>"running"` |AVERAGE | |
+|Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME}]: has been restarted |<p>Uptime is less than 10 minutes</p> |`last(/Proxmox VE by HTTP/proxmox.lxc.uptime[{#LXC.ID}])<10m` |INFO |<p>Manual close: YES</p> |
+|Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Not running |<p>LXC state is not "running".</p> |`last(/Proxmox VE by HTTP/proxmox.lxc.vmstatus[{#LXC.ID}])<>"running"` |AVERAGE | |
+|Proxmox: Node [{#NODE.NAME}] high root filesystem space usage |<p>Root filesystem space usage.</p> |`min(/Proxmox VE by HTTP/proxmox.node.rootused[{#NODE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.roottotal[{#NODE.NAME}]) * 100 >{$PVE.ROOT.PUSE.MAX.WARN:"{#NODE.NAME}"}` |WARNING | |
+|Proxmox: Node [{#NODE.NAME}] high root filesystem space usage |<p>This trigger is ignored, if there is no swap configured.</p> |`min(/Proxmox VE by HTTP/proxmox.node.swapused[{#NODE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.swaptotal[{#NODE.NAME}]) * 100 > {$PVE.SWAP.PUSE.MAX.WARN:"{#NODE.NAME}"} and last(/Proxmox VE by HTTP/proxmox.node.swaptotal[{#NODE.NAME}]) > 0` |WARNING | |
+|Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}] high filesystem space usage |<p>Root filesystem space usage.</p> |`min(/Proxmox VE by HTTP/proxmox.node.disk[{#NODE.NAME},{#STORAGE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.maxdisk[{#NODE.NAME},{#STORAGE.NAME}]) * 100 >{$PVE.STORAGE.PUSE.MAX.WARN:"{#NODE.NAME}/{#STORAGE.NAME}"}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/app/proxmox/template_app_proxmox.yaml b/templates/app/proxmox/template_app_proxmox.yaml
new file mode 100644
index 00000000000..1d0e6e54f1b
--- /dev/null
+++ b/templates/app/proxmox/template_app_proxmox.yaml
@@ -0,0 +1,2401 @@
+zabbix_export:
+ version: '6.2'
+ date: '2022-04-06T07:52:18Z'
+ groups:
+ -
+ uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6
+ name: Templates/Applications
+ templates:
+ -
+ uuid: 4958b76448d74ff1b6d7d6280449beee
+ template: 'Proxmox VE by HTTP'
+ name: 'Proxmox VE by HTTP'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Applications
+ items:
+ -
+ uuid: 75f8f8c507774f529ade4bc4255f5fd2
+ name: 'Proxmox: API service status'
+ type: SCRIPT
+ key: proxmox.api.available
+ delay: 5m
+ history: 7d
+ params: |
+ try {
+ var params = JSON.parse(value);
+ var req = new HttpRequest();
+ req.addHeader('Authorization: PVEAPIToken=' + params.token + '=' + params.secret);
+ req.get(encodeURI('https://' + params.url + ':' + params.port + '/api2/json/version'));
+ } catch (error) {
+ Zabbix.log(3, "Proxmox API failed: " + params.url + " Error: " + error);
+ if (!Number.isInteger(error))
+ return 520;
+ }
+ return req.getStatus();
+ description: 'Get API service status.'
+ valuemap:
+ name: 'HTTP response status code'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ timeout: 10s
+ parameters:
+ -
+ name: token
+ value: '{$PVE.TOKEN.ID}'
+ -
+ name: secret
+ value: '{$PVE.TOKEN.SECRET}'
+ -
+ name: url
+ value: '{HOST.CONN}'
+ -
+ name: port
+ value: '{$PVE.URL.PORT}'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 7ef8290fd6e242339d0e56d5e8eedb1a
+ expression: 'last(/Proxmox VE by HTTP/proxmox.api.available) <> 200'
+ name: 'Proxmox: API service not available'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: HIGH
+ description: 'The API service is not available. Check your network and authorization settings.'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ uuid: 4fe4fa1323cd481f8aff3bfb716eeae2
+ name: 'Proxmox: Get cluster resources'
+ type: HTTP_AGENT
+ key: proxmox.cluster.resources
+ delay: 5m
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Resources index.'
+ preprocessing:
+ -
+ type: CHECK_NOT_SUPPORTED
+ parameters:
+ - ''
+ error_handler: CUSTOM_VALUE
+ error_handler_params: 'Error getting data'
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/cluster/resources'
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ -
+ uuid: 6e6a5046b8154bafad375813ca210e1f
+ name: 'Proxmox: Get cluster status'
+ type: HTTP_AGENT
+ key: proxmox.cluster.status
+ delay: 5m
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Get cluster status information.'
+ preprocessing:
+ -
+ type: CHECK_NOT_SUPPORTED
+ parameters:
+ - ''
+ error_handler: CUSTOM_VALUE
+ error_handler_params: 'Error getting data'
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/cluster/status'
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ discovery_rules:
+ -
+ uuid: e01bb8d7614144ba82e31d91618dee31
+ name: 'Cluster discovery'
+ type: DEPENDENT
+ key: proxmox.cluster.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#RESOURCE.TYPE}'
+ value: ^cluster$
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: 4b5d9197cfa042ceac1415a524912b63
+ name: 'Proxmox: Cluster [{#RESOURCE.NAME}]: Quorate'
+ type: DEPENDENT
+ key: 'proxmox.cluster.quorate[{#RESOURCE.NAME}]'
+ delay: '0'
+ history: 7d
+ description: 'Indicates if there is a majority of nodes online to make decisions.'
+ valuemap:
+ name: 'Cluster quorate'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$.data.[?(@.name == ''{#RESOURCE.NAME}'' && @.type == ''cluster'')].quorate.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: proxmox.cluster.status
+ tags:
+ -
+ tag: cluster
+ value: '{#RESOURCE.NAME}'
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 142e02d47b8a4ac9a9ad28b68b097ebd
+ expression: 'last(/Proxmox VE by HTTP/proxmox.cluster.quorate[{#RESOURCE.NAME}]) <> 1'
+ name: 'Proxmox: Cluster [{#RESOURCE.NAME}] not quorum'
+ opdata: 'Current value: {ITEM.LASTVALUE}'
+ priority: HIGH
+ description: 'Proxmox VE use a quorum-based technique to provide a consistent state among all cluster nodes.'
+ tags:
+ -
+ tag: scope
+ value: availability
+ master_item:
+ key: proxmox.cluster.status
+ lld_macro_paths:
+ -
+ lld_macro: '{#RESOURCE.TYPE}'
+ path: $.type
+ -
+ lld_macro: '{#RESOURCE.NAME}'
+ path: $.name
+ -
+ uuid: 78a4018328954d408e415aa0ce7ce41c
+ name: 'LXC discovery'
+ type: DEPENDENT
+ key: proxmox.lxc.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#RESOURCE.TYPE}'
+ value: ^lxc$
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: dda211b14d7b4c419196a98ee5153307
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: CPU usage'
+ type: DEPENDENT
+ key: 'proxmox.lxc.cpu[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU load.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.cpu
+ -
+ type: MULTIPLIER
+ parameters:
+ - '100'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: c0436342a19d4d6482fac70d2f04f530
+ expression: 'min(/Proxmox VE by HTTP/proxmox.lxc.cpu[{#LXC.ID}],5m) > {$PVE.LXC.CPU.PUSE.MAX.WARN:"{#LXC.ID}"}'
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})] high CPU usage'
+ event_name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})] high CPU usage (over {$PVE.LXC.CPU.PUSE.MAX.WARN:"{#LXC.ID}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU usage.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 8bc1bb78bf1340f3ab8d9f888d081e23
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Disk read, rate'
+ type: DEPENDENT
+ key: 'proxmox.lxc.diskread[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: Bps
+ description: 'Disk read.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.diskread
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: cee89da9e4a842228b30cc708e4d7745
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Disk write, rate'
+ type: DEPENDENT
+ key: 'proxmox.lxc.diskwrite[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: Bps
+ description: 'Disk write.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.diskwrite
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 686490c2a07f4a859bc7f1d56056cc5e
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Memory total'
+ type: DEPENDENT
+ key: 'proxmox.lxc.maxmem[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Total memory in Bytes.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.maxmem
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: a60eaec875d347bd9247a174ba84f21e
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Memory usage'
+ type: DEPENDENT
+ key: 'proxmox.lxc.mem[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Used memory in Bytes.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.mem
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: b19b6b5895d64ed9b4942f955e66dc81
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Incoming data, rate'
+ type: DEPENDENT
+ key: 'proxmox.lxc.netin[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: bps
+ description: 'Incoming data rate.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.netin
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 5ac20ae95e664a3cb62b58cde4f67471
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Outgoing data, rate'
+ type: DEPENDENT
+ key: 'proxmox.lxc.netout[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: bps
+ description: 'Outgoing data rate.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.netout
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: lxc
+ value: '{#LXC.ID}'
+ -
+ tag: name
+ value: '{#LXC.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 58efec1a4bb94bfab59d5985d036811e
+ name: 'Proxmox: LXC [{#LXC.NAME}/{#LXC.NAME}]: Status'
+ type: HTTP_AGENT
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Read LXC status.'
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/nodes/{#NODE.NAME}/{#LXC.ID}/status/current'
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ -
+ uuid: bd213f6de4db4e1e84894b80acffa330
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Uptime'
+ type: DEPENDENT
+ key: 'proxmox.lxc.uptime[{#LXC.ID}]'
+ delay: '0'
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.uptime
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 0e55935a79b94bc096b6213d500f4f59
+ expression: 'last(/Proxmox VE by HTTP/proxmox.lxc.uptime[{#LXC.ID}])<10m'
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME}]: has been restarted'
+ event_name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME}]: has been restarted (uptime < 10m)'
+ priority: INFO
+ description: 'Uptime is less than 10 minutes'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 535f521800564b0f83211740aabbc137
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Status'
+ type: DEPENDENT
+ key: 'proxmox.lxc.vmstatus[{#LXC.ID}]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.status
+ master_item:
+ key: 'proxmox.lxc.status[{#LXC.ID}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 71623950edf44bcb9453b2e8e63cb97b
+ expression: 'last(/Proxmox VE by HTTP/proxmox.lxc.vmstatus[{#LXC.ID}])<>"running"'
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Not running'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: 'LXC state is not "running".'
+ tags:
+ -
+ tag: scope
+ value: notice
+ trigger_prototypes:
+ -
+ uuid: f59e43f9de01419897aec1b9d4539b48
+ expression: 'min(/Proxmox VE by HTTP/proxmox.lxc.mem[{#LXC.ID}],5m) / last(/Proxmox VE by HTTP/proxmox.lxc.maxmem[{#LXC.ID}]) * 100 >{$PVE.LXC.MEMORY.PUSE.MAX.WARN:"{#LXC.ID}"}'
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})] high memory usage'
+ event_name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})] high memory usage (over {$PVE.LXC.MEMORY.PUSE.MAX.WARN:"{#LXC.ID}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1} of {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Memory usage.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: faad4c399e6047ea9fd95ffea40ce511
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: CPU usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.cpu[{#LXC.ID}]'
+ -
+ uuid: 2a850f53e5064ee3b4fb99aa191d411d
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Disk usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.diskwrite[{#LXC.ID}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.diskread[{#LXC.ID}]'
+ -
+ uuid: 54e79a1949ed40988a3901acf21bc3af
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Memory usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.mem[{#LXC.ID}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.maxmem[{#LXC.ID}]'
+ -
+ uuid: c6f2970f22294c7d8de7548a177596de
+ name: 'Proxmox: LXC [{#NODE.NAME}/{#LXC.NAME} ({#LXC.ID})]: Network usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.netin[{#LXC.ID}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.lxc.netout[{#LXC.ID}]'
+ master_item:
+ key: proxmox.cluster.resources
+ lld_macro_paths:
+ -
+ lld_macro: '{#RESOURCE.TYPE}'
+ path: $.type
+ -
+ lld_macro: '{#NODE.NAME}'
+ path: $.node
+ -
+ lld_macro: '{#LXC.NAME}'
+ path: $.name
+ -
+ lld_macro: '{#LXC.ID}'
+ path: $.id
+ -
+ uuid: ba55f69b12ee46faa319203483d8008f
+ name: 'Node discovery'
+ type: DEPENDENT
+ key: proxmox.node.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#RESOURCE.TYPE}'
+ value: ^node$
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: c5e50056abda49f190e21f46f8cf7379
+ name: 'Proxmox: Node [{#NODE.NAME}]: CPU, usage'
+ type: DEPENDENT
+ key: 'proxmox.node.cpu[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU usage.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.cpu
+ -
+ type: MULTIPLIER
+ parameters:
+ - '100'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: 84041dcb7c84426dad538ab32375fdb1
+ expression: 'min(/Proxmox VE by HTTP/proxmox.node.cpu[{#NODE.NAME}],5m) > {$PVE.CPU.PUSE.MAX.WARN:"{#NODE.NAME}"}'
+ name: 'Proxmox: Node [{#NODE.NAME}] high CPU usage'
+ event_name: 'Proxmox: Node [{#NODE.NAME}] high CPU usage (over {$PVE.CPU.PUSE.MAX.WARN:"{#NODE.NAME}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU usage.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 78e02931cf5c4c93b9c0092bd407a897
+ name: 'Proxmox: Node [{#NODE.NAME}]: CPU, iowait'
+ type: DEPENDENT
+ key: 'proxmox.node.iowait[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU iowait time.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.iowait
+ -
+ type: MULTIPLIER
+ parameters:
+ - '100'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: c31b9d3f9f4d4f6fa5611038bb9a8401
+ name: 'Proxmox: Node [{#NODE.NAME}]: Kernel version'
+ type: DEPENDENT
+ key: 'proxmox.node.kernelversion[{#NODE.NAME}]'
+ delay: '0'
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'Kernel version info.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.kversion
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ master_item:
+ key: 'proxmox.node.status[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 4020236474e840acb1bc480eb8c52a1f
+ expression: 'last(/Proxmox VE by HTTP/proxmox.node.kernelversion[{#NODE.NAME}],#1)<>last(/Proxmox VE by HTTP/proxmox.node.kernelversion[{#NODE.NAME}],#2) and length(last(/Proxmox VE by HTTP/proxmox.node.kernelversion[{#NODE.NAME}]))>0'
+ name: 'Proxmox: Node [{#NODE.NAME}]: Kernel version has changed'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: INFO
+ description: 'Firmware version has changed. Ack to close'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 155bcbfd12f54614ab55d29e0fb5c2aa
+ name: 'Proxmox: Node [{#NODE.NAME}]: CPU, loadavg'
+ type: DEPENDENT
+ key: 'proxmox.node.loadavg[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU average load.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.loadavg
+ -
+ type: MULTIPLIER
+ parameters:
+ - '100'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 59aab7121b1f4ff0b98a38cc75f39fb3
+ name: 'Proxmox: Node [{#NODE.NAME}]: Localtime'
+ type: DEPENDENT
+ key: 'proxmox.node.localtime[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ units: unixtime
+ description: 'Seconds since 1970-01-01 00:00:00 (local time).'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.localtime
+ master_item:
+ key: 'proxmox.node.time[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 0bb66733d10843438a090bf39eae92e2
+ name: 'Proxmox: Node [{#NODE.NAME}]: Memory, total'
+ type: DEPENDENT
+ key: 'proxmox.node.memtotal[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Memory total.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.memtotal
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 04a2028e5d6640958da01c372f4407ec
+ name: 'Proxmox: Node [{#NODE.NAME}]: Memory, used'
+ type: DEPENDENT
+ key: 'proxmox.node.memused[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Memory usage.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.memused
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 892f3b733a25475cb8fe30eeca3750f2
+ name: 'Proxmox: Node [{#NODE.NAME}]: Incoming data, rate'
+ type: DEPENDENT
+ key: 'proxmox.node.netin[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: bps
+ description: 'Network usage.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.netin
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 3048c6c023bc4fb58a8710d7306052fb
+ name: 'Proxmox: Node [{#NODE.NAME}]: Outgoing data, rate'
+ type: DEPENDENT
+ key: 'proxmox.node.netout[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: bps
+ description: 'Network usage.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.netout
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: b8c3ff9544d5490286c668d3320d2ee0
+ name: 'Proxmox: Node [{#NODE.NAME}]: Status'
+ type: DEPENDENT
+ key: 'proxmox.node.online[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ description: 'Indicates if the node is online or offline.'
+ valuemap:
+ name: 'Node online'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$.data.[?(@.name == ''{#NODE.NAME}'' && @.type == ''node'')].online.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: proxmox.cluster.status
+ tags:
+ -
+ tag: component
+ value: cluster
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: 41b7efb8822948b08de8adace2e124a9
+ expression: 'last(/Proxmox VE by HTTP/proxmox.node.online[{#NODE.NAME}]) <> 1'
+ name: 'Proxmox: Node [{#NODE.NAME}] offline'
+ opdata: 'Current value: {ITEM.LASTVALUE}'
+ priority: HIGH
+ description: 'Node offline.'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ uuid: f220249168d947b6b8b99c068af35650
+ name: 'Proxmox: Node [{#NODE.NAME}]: PVE version'
+ type: DEPENDENT
+ key: 'proxmox.node.pveversion[{#NODE.NAME}]'
+ delay: '0'
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'PVE manager version.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.pveversion
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ master_item:
+ key: 'proxmox.node.status[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 5b92af55dbd84181bcab0f39e6effbe0
+ expression: 'last(/Proxmox VE by HTTP/proxmox.node.pveversion[{#NODE.NAME}],#1)<>last(/Proxmox VE by HTTP/proxmox.node.pveversion[{#NODE.NAME}],#2) and length(last(/Proxmox VE by HTTP/proxmox.node.pveversion[{#NODE.NAME}]))>0'
+ name: 'Proxmox: Node [{#NODE.NAME}]: PVE manager has changed'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: INFO
+ description: 'Firmware version has changed. Ack to close'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 067954795121482093dd7967c6ca6ede
+ name: 'Proxmox: Node [{#NODE.NAME}]: Root filesystem, total'
+ type: DEPENDENT
+ key: 'proxmox.node.roottotal[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Root filesystem total.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.roottotal
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 2beadf6ba8b04a21b008ddf63bd2fa6b
+ name: 'Proxmox: Node [{#NODE.NAME}]: Root filesystem, used'
+ type: DEPENDENT
+ key: 'proxmox.node.rootused[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Root filesystem usage.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.rootused
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: fa2a60a98fd4445eadff4398ae6872bd
+ name: 'Proxmox: Node [{#NODE.NAME}]: RRD statistics'
+ type: HTTP_AGENT
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Read node RRD statistics.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ var rrd_data = JSON.parse(value).data;
+ return JSON.stringify(rrd_data[rrd_data.length - 2])
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/nodes/{#NODE.NAME}/rrddata'
+ query_fields:
+ -
+ name: timeframe
+ value: hour
+ -
+ name: cf
+ value: AVERAGE
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ -
+ uuid: c1ea4d4f83114c9b96fe81069602f060
+ name: 'Proxmox: Node [{#NODE.NAME}]: Status'
+ type: HTTP_AGENT
+ key: 'proxmox.node.status[{#NODE.NAME}]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Read node status.'
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/nodes/{#NODE.NAME}/status'
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ -
+ uuid: 0dce6e5edd6d4ddab69932796b4301c0
+ name: 'Proxmox: Node [{#NODE.NAME}]: Swap filesystem, total'
+ type: DEPENDENT
+ key: 'proxmox.node.swaptotal[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Swap total.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.swaptotal
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 5f42addb719a412da6fd448d38d1a7d0
+ name: 'Proxmox: Node [{#NODE.NAME}]: Swap filesystem, used'
+ type: DEPENDENT
+ key: 'proxmox.node.swapused[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Swap used.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.swapused
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.node.rrd[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 42d7b4ff315a4cfa9af1aed5e141661d
+ name: 'Proxmox: Node [{#NODE.NAME}]: Time zone'
+ type: DEPENDENT
+ key: 'proxmox.node.timezone[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ description: 'Time zone.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.timezone
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ master_item:
+ key: 'proxmox.node.time[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: c0c03653a0af426b8f61c77cabab38a4
+ name: 'Proxmox: Node [{#NODE.NAME}]: Time'
+ type: HTTP_AGENT
+ key: 'proxmox.node.time[{#NODE.NAME}]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Read server time and time zone settings.'
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/nodes/{#NODE.NAME}/time'
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ -
+ uuid: fc7f5811d338484bba5393a8a5718f67
+ name: 'Proxmox: Node [{#NODE.NAME}]: Uptime'
+ type: DEPENDENT
+ key: 'proxmox.node.uptime[{#NODE.NAME}]'
+ delay: '0'
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.uptime
+ master_item:
+ key: 'proxmox.node.status[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 529b69b98a86409d914d3464569b7901
+ expression: 'last(/Proxmox VE by HTTP/proxmox.node.uptime[{#NODE.NAME}])<10m'
+ name: 'Proxmox: Node [{#NODE.NAME}]: has been restarted'
+ event_name: 'Proxmox: Node [{#NODE.NAME}]: has been restarted (uptime < 10m)'
+ priority: INFO
+ description: 'Uptime is less than 10 minutes'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 384d479a04f044b192a74743f0a459b4
+ name: 'Proxmox: Node [{#NODE.NAME}]: Time'
+ type: DEPENDENT
+ key: 'proxmox.node.utctime[{#NODE.NAME}]'
+ delay: '0'
+ history: 7d
+ units: unixtime
+ description: 'Seconds since 1970-01-01 00:00:00 UTC.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.time
+ master_item:
+ key: 'proxmox.node.time[{#NODE.NAME}]'
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: a0445b4e1ffd451595ecea0468b4a6a6
+ expression: 'min(/Proxmox VE by HTTP/proxmox.node.memused[{#NODE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.memtotal[{#NODE.NAME}]) * 100 >{$PVE.MEMORY.PUSE.MAX.WARN:"{#NODE.NAME}"}'
+ name: 'Proxmox: Node [{#NODE.NAME}] high memory usage'
+ event_name: 'Proxmox: Node [{#NODE.NAME}] high memory usage (over {$PVE.MEMORY.PUSE.MAX.WARN:"{#NODE.NAME}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1} of {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Memory usage.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 3f88526e10a14319983fe14621ef10f9
+ expression: 'min(/Proxmox VE by HTTP/proxmox.node.rootused[{#NODE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.roottotal[{#NODE.NAME}]) * 100 >{$PVE.ROOT.PUSE.MAX.WARN:"{#NODE.NAME}"}'
+ name: 'Proxmox: Node [{#NODE.NAME}] high root filesystem space usage'
+ event_name: 'Proxmox: Node [{#NODE.NAME}] high root filesystem space usage (over {$PVE.ROOT.PUSE.MAX.WARN:"{#NODE.NAME}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1} of {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Root filesystem space usage.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: f38ccc2e0e40430e801bf98b488e12e4
+ expression: 'min(/Proxmox VE by HTTP/proxmox.node.swapused[{#NODE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.swaptotal[{#NODE.NAME}]) * 100 > {$PVE.SWAP.PUSE.MAX.WARN:"{#NODE.NAME}"} and last(/Proxmox VE by HTTP/proxmox.node.swaptotal[{#NODE.NAME}]) > 0'
+ name: 'Proxmox: Node [{#NODE.NAME}] high root filesystem space usage'
+ event_name: 'Proxmox: Node [{#NODE.NAME}] high root filesystem space usage (over {$PVE.SWAP.PUSE.MAX.WARN:"{#NODE.NAME}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1} of {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'This trigger is ignored, if there is no swap configured.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: 6c4fddd2a12d4e87987e47611e4a925f
+ name: 'Proxmox: Node [{#NODE.NAME}]: CPU usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.cpu[{#NODE.NAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.iowait[{#NODE.NAME}]'
+ -
+ sortorder: '2'
+ drawtype: GRADIENT_LINE
+ color: F63100
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.loadavg[{#NODE.NAME}]'
+ -
+ uuid: 0d59c329f12b494ebc8ff458a6b4714a
+ name: 'Proxmox: Node [{#NODE.NAME}]: Memory usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.memused[{#NODE.NAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.memtotal[{#NODE.NAME}]'
+ -
+ uuid: f07213b83a964aac9f51e2857936bef2
+ name: 'Proxmox: Node [{#NODE.NAME}]: Network usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.netin[{#NODE.NAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.netout[{#NODE.NAME}]'
+ -
+ uuid: f24340ea09324dd594f84c140f2797cc
+ name: 'Proxmox: Node [{#NODE.NAME}]: Root filesystem usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.rootused[{#NODE.NAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.roottotal[{#NODE.NAME}]'
+ -
+ uuid: f47c4c734737403d97a630f5f10b7d84
+ name: 'Proxmox: Node [{#NODE.NAME}]: Swap usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.swapused[{#NODE.NAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.swaptotal[{#NODE.NAME}]'
+ master_item:
+ key: proxmox.cluster.resources
+ lld_macro_paths:
+ -
+ lld_macro: '{#RESOURCE.TYPE}'
+ path: $.type
+ -
+ lld_macro: '{#NODE.NAME}'
+ path: $.node
+ -
+ uuid: 31aa7234aa294fce8f4735a9216ddf31
+ name: 'QEMU discovery'
+ type: DEPENDENT
+ key: proxmox.qemu.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#RESOURCE.TYPE}'
+ value: ^qemu$
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: 196bf027d77742ea8960e350d9ea579e
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: CPU usage'
+ type: DEPENDENT
+ key: 'proxmox.qemu.cpu[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU load.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.cpu
+ -
+ type: MULTIPLIER
+ parameters:
+ - '100'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ trigger_prototypes:
+ -
+ uuid: 84ed68d7cf2b48a48fc44e9c7a0d9b92
+ expression: 'min(/Proxmox VE by HTTP/proxmox.qemu.cpu[{#QEMU.ID}],5m) > {$PVE.VM.CPU.PUSE.MAX.WARN:"{#QEMU.ID}"}'
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})] high CPU usage'
+ event_name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})] high CPU usage (over {$PVE.VM.CPU.PUSE.MAX.WARN:"{#QEMU.ID}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU usage.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: ffd3c0a6e9764d9ea0091d2fcf0234e2
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Disk read, rate'
+ type: DEPENDENT
+ key: 'proxmox.qemu.diskread[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: Bps
+ description: 'Disk read.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.diskread
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ -
+ uuid: 7c02301822414849b8dc38ae26c74a7b
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Disk write, rate'
+ type: DEPENDENT
+ key: 'proxmox.qemu.diskwrite[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: Bps
+ description: 'Disk write.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.diskwrite
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ -
+ uuid: 3c46d7e2f07049fc8f749157cf5627e9
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Memory total'
+ type: DEPENDENT
+ key: 'proxmox.qemu.maxmem[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Total memory in Bytes.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.maxmem
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ -
+ uuid: 9f4402482af549288f32f108ab801950
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Memory usage'
+ type: DEPENDENT
+ key: 'proxmox.qemu.mem[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: B
+ description: 'Used memory in Bytes.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.mem
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ -
+ uuid: ffd3c0a6e9764d9ea0091d2fcf0234e2
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Incoming data, rate'
+ type: DEPENDENT
+ key: 'proxmox.qemu.netin[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: bps
+ description: 'Incoming data rate.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.netin
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ -
+ uuid: 2cd398f1b9814551a7fad7e2bc66f6af
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Outgoing data, rate'
+ type: DEPENDENT
+ key: 'proxmox.qemu.netout[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: bps
+ description: 'Outgoing data rate.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.netout
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: name
+ value: '{#QEMU.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ tag: qemu
+ value: '{#QEMU.ID}'
+ -
+ uuid: a3562f2f48834a88842da612fb6f464c
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME}]: Status'
+ type: HTTP_AGENT
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Read VM status.'
+ url: 'https://{HOST.CONN}:{$PVE.URL.PORT}/api2/json/nodes/{#NODE.NAME}/{#QEMU.ID}/status/current'
+ headers:
+ -
+ name: Authorization
+ value: 'PVEAPIToken={$PVE.TOKEN.ID}={$PVE.TOKEN.SECRET}'
+ tags:
+ -
+ tag: component
+ value: raw
+ -
+ uuid: 77ba70e0ce6f486585f870d3b57033ba
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Uptime'
+ type: DEPENDENT
+ key: 'proxmox.qemu.uptime[{#QEMU.ID}]'
+ delay: '0'
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.uptime
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: d4ba1faeb67940a192c1b50460793813
+ expression: 'last(/Proxmox VE by HTTP/proxmox.qemu.uptime[{#QEMU.ID}])<10m'
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME}]: has been restarted'
+ event_name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME}]: has been restarted (uptime < 10m)'
+ priority: INFO
+ description: 'Uptime is less than 10 minutes'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 77ba70e0ce6f486585f870d3b57033ba
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Status'
+ type: DEPENDENT
+ key: 'proxmox.qemu.vmstatus[{#QEMU.ID}]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - $.data.status
+ master_item:
+ key: 'proxmox.qemu.status[{#QEMU.ID}]'
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: 8f57d13f278b459299c565846b4091f5
+ expression: 'last(/Proxmox VE by HTTP/proxmox.qemu.vmstatus[{#QEMU.ID}])<>"running"'
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Not running'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: 'VM state is not "running".'
+ tags:
+ -
+ tag: scope
+ value: notice
+ trigger_prototypes:
+ -
+ uuid: 5305bf2b71aa4b74917379c6e1b3c065
+ expression: 'min(/Proxmox VE by HTTP/proxmox.qemu.mem[{#QEMU.ID}],5m) / last(/Proxmox VE by HTTP/proxmox.qemu.maxmem[{#QEMU.ID}]) * 100 >{$PVE.VM.MEMORY.PUSE.MAX.WARN:"{#QEMU.ID}"}'
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})] high memory usage'
+ event_name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})] high memory usage (over {$PVE.VM.MEMORY.PUSE.MAX.WARN:"{#QEMU.ID}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1} of {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Memory usage.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 602ae1d9d65149ada7aa56cc2d7d9309
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: CPU usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.cpu[{#QEMU.ID}]'
+ -
+ uuid: 391421ce25c74c14abe35723965f3357
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Disk usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.diskwrite[{#QEMU.ID}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.diskread[{#QEMU.ID}]'
+ -
+ uuid: 8522e98f30104f67bfdd1aff8b94d280
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Memory usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.mem[{#QEMU.ID}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.maxmem[{#QEMU.ID}]'
+ -
+ uuid: 391421ce25c74c14abe35723965f3357
+ name: 'Proxmox: VM [{#NODE.NAME}/{#QEMU.NAME} ({#QEMU.ID})]: Network usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.netin[{#QEMU.ID}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.qemu.netout[{#QEMU.ID}]'
+ master_item:
+ key: proxmox.cluster.resources
+ lld_macro_paths:
+ -
+ lld_macro: '{#RESOURCE.TYPE}'
+ path: $.type
+ -
+ lld_macro: '{#NODE.NAME}'
+ path: $.node
+ -
+ lld_macro: '{#QEMU.NAME}'
+ path: $.name
+ -
+ lld_macro: '{#QEMU.ID}'
+ path: $.id
+ -
+ uuid: 61faca6204854bc4af8dc6c5c63ddcd1
+ name: 'Storage discovery'
+ type: DEPENDENT
+ key: proxmox.storage.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#RESOURCE.TYPE}'
+ value: ^storage$
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: c803813b43f24390b7e0d79fda824a54
+ name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Content'
+ type: DEPENDENT
+ key: 'proxmox.node.content[{#NODE.NAME},{#STORAGE.NAME}]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ description: 'Allowed storage content types.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].content.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ master_item:
+ key: proxmox.cluster.resources
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: name
+ value: '{#STORAGE.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 0edb3506231648c9820103a337486d63
+ name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Used'
+ type: DEPENDENT
+ key: 'proxmox.node.disk[{#NODE.NAME},{#STORAGE.NAME}]'
+ delay: '0'
+ history: 7d
+ units: B
+ description: 'Used disk space in bytes.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].disk.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: proxmox.cluster.resources
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: name
+ value: '{#STORAGE.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: ced02242ff46454f9c49f3d44bf0de9a
+ name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Size'
+ type: DEPENDENT
+ key: 'proxmox.node.maxdisk[{#NODE.NAME},{#STORAGE.NAME}]'
+ delay: '0'
+ history: 7d
+ units: B
+ description: 'Storage size in bytes.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].maxdisk.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 10m
+ master_item:
+ key: proxmox.cluster.resources
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: name
+ value: '{#STORAGE.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ -
+ uuid: 4360858342254aecba7a77eb315cc2bb
+ name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Type'
+ type: DEPENDENT
+ key: 'proxmox.node.plugintype[{#NODE.NAME},{#STORAGE.NAME}]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ description: 'More specific type, if available.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$.data[?(@.id == "storage/{#NODE.NAME}/{#STORAGE.NAME}")].plugintype.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ master_item:
+ key: proxmox.cluster.resources
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: name
+ value: '{#STORAGE.NAME}'
+ -
+ tag: node
+ value: '{#NODE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: 404d9a8a6fa54d8c880006c9ec32f55a
+ expression: 'min(/Proxmox VE by HTTP/proxmox.node.disk[{#NODE.NAME},{#STORAGE.NAME}],5m) / last(/Proxmox VE by HTTP/proxmox.node.maxdisk[{#NODE.NAME},{#STORAGE.NAME}]) * 100 >{$PVE.STORAGE.PUSE.MAX.WARN:"{#NODE.NAME}/{#STORAGE.NAME}"}'
+ name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}] high filesystem space usage'
+ event_name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}] high filesystem space usage (over {$PVE.STORAGE.PUSE.MAX.WARN:"{#NODE.NAME}/{#STORAGE.NAME}"}% use)'
+ opdata: 'Current use: {ITEM.LASTVALUE1} of {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Root filesystem space usage.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: 726dbf7dd13b40c8b240cb58f753a9bf
+ name: 'Proxmox: Storage [{#NODE.NAME}/{#STORAGE.NAME}]: Usage'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.disk[{#NODE.NAME},{#STORAGE.NAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Proxmox VE by HTTP'
+ key: 'proxmox.node.maxdisk[{#NODE.NAME},{#STORAGE.NAME}]'
+ master_item:
+ key: proxmox.cluster.resources
+ lld_macro_paths:
+ -
+ lld_macro: '{#RESOURCE.TYPE}'
+ path: $.type
+ -
+ lld_macro: '{#NODE.NAME}'
+ path: $.node
+ -
+ lld_macro: '{#STORAGE.NAME}'
+ path: $.storage
+ tags:
+ -
+ tag: class
+ value: software
+ -
+ tag: target
+ value: proxmox
+ macros:
+ -
+ macro: '{$PVE.CPU.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used CPU in percentage.'
+ -
+ macro: '{$PVE.LXC.CPU.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used CPU in percentage.'
+ -
+ macro: '{$PVE.LXC.MEMORY.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used memory in percentage.'
+ -
+ macro: '{$PVE.MEMORY.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used memory in percentage.'
+ -
+ macro: '{$PVE.ROOT.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used root space in percentage.'
+ -
+ macro: '{$PVE.STORAGE.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used storage space in percentage.'
+ -
+ macro: '{$PVE.SWAP.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used swap space in percentage.'
+ -
+ macro: '{$PVE.TOKEN.ID}'
+ value: USER@REALM!TOKENID
+ description: 'API tokens allow stateless access to most parts of the REST API by another system, software or API client.'
+ -
+ macro: '{$PVE.TOKEN.SECRET}'
+ value: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
+ description: 'Secret key.'
+ -
+ macro: '{$PVE.URL.PORT}'
+ value: '8006'
+ description: 'The API uses the HTTPS protocol and the server listens to port 8006 by default.'
+ -
+ macro: '{$PVE.VM.CPU.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used CPU in percentage.'
+ -
+ macro: '{$PVE.VM.MEMORY.PUSE.MAX.WARN}'
+ value: '90'
+ description: 'Maximum used memory in percentage.'
+ valuemaps:
+ -
+ uuid: d4bbd08f3a324a57af97a17f819cb3f3
+ name: 'Cluster quorate'
+ mappings:
+ -
+ value: '1'
+ newvalue: 'Yes'
+ -
+ value: '0'
+ newvalue: 'No'
+ -
+ uuid: 87034fae192c44dba6c8bb568cd90bbd
+ name: 'HTTP response status code'
+ mappings:
+ -
+ value: '100'
+ newvalue: Continue
+ -
+ value: '101'
+ newvalue: 'Switching Protocols'
+ -
+ value: '102'
+ newvalue: Processing
+ -
+ value: '200'
+ newvalue: OK
+ -
+ value: '201'
+ newvalue: Created
+ -
+ value: '202'
+ newvalue: Accepted
+ -
+ value: '203'
+ newvalue: 'Non-Authoritative Information'
+ -
+ value: '204'
+ newvalue: 'No Content'
+ -
+ value: '205'
+ newvalue: 'Reset Content'
+ -
+ value: '206'
+ newvalue: 'Partial Content'
+ -
+ value: '207'
+ newvalue: Multi-Status
+ -
+ value: '208'
+ newvalue: 'Already Reported'
+ -
+ value: '226'
+ newvalue: 'IM Used'
+ -
+ value: '300'
+ newvalue: 'Multiple Choices'
+ -
+ value: '301'
+ newvalue: 'Moved Permanently'
+ -
+ value: '302'
+ newvalue: Found
+ -
+ value: '303'
+ newvalue: 'See Other'
+ -
+ value: '304'
+ newvalue: 'Not Modified'
+ -
+ value: '305'
+ newvalue: 'Use Proxy'
+ -
+ value: '306'
+ newvalue: 'Switch Proxy'
+ -
+ value: '307'
+ newvalue: 'Temporary Redirect'
+ -
+ value: '308'
+ newvalue: 'Permanent Redirect/Resume Incomplete'
+ -
+ value: '400'
+ newvalue: 'Bad Request'
+ -
+ value: '401'
+ newvalue: Unauthorized
+ -
+ value: '402'
+ newvalue: 'Payment Required'
+ -
+ value: '403'
+ newvalue: Forbidden
+ -
+ value: '404'
+ newvalue: 'Not Found'
+ -
+ value: '405'
+ newvalue: 'Method Not Allowed'
+ -
+ value: '406'
+ newvalue: 'Not Acceptable'
+ -
+ value: '407'
+ newvalue: 'Proxy Authentication Required'
+ -
+ value: '408'
+ newvalue: 'Request Timeout'
+ -
+ value: '409'
+ newvalue: Conflict
+ -
+ value: '410'
+ newvalue: Gone
+ -
+ value: '411'
+ newvalue: 'Length Required'
+ -
+ value: '412'
+ newvalue: 'Precondition Failed'
+ -
+ value: '413'
+ newvalue: 'Payload Too Large'
+ -
+ value: '414'
+ newvalue: 'Request-URI Too Long'
+ -
+ value: '415'
+ newvalue: 'Unsupported Media Type'
+ -
+ value: '416'
+ newvalue: 'Requested Range Not Satisfiable'
+ -
+ value: '417'
+ newvalue: 'Expectation Failed'
+ -
+ value: '418'
+ newvalue: 'I''m a Teapot'
+ -
+ value: '419'
+ newvalue: 'Authentication Timeout'
+ -
+ value: '420'
+ newvalue: 'Method Failure/Enhance Your Calm'
+ -
+ value: '421'
+ newvalue: 'Misdirected Request'
+ -
+ value: '422'
+ newvalue: 'Unprocessable Entity'
+ -
+ value: '423'
+ newvalue: Locked
+ -
+ value: '424'
+ newvalue: 'Failed Dependency'
+ -
+ value: '426'
+ newvalue: 'Upgrade Required'
+ -
+ value: '428'
+ newvalue: 'Precondition Required'
+ -
+ value: '429'
+ newvalue: 'Too Many Requests'
+ -
+ value: '431'
+ newvalue: 'Request Header Fields Too Large'
+ -
+ value: '440'
+ newvalue: 'Login Timeout'
+ -
+ value: '444'
+ newvalue: 'No Response'
+ -
+ value: '449'
+ newvalue: 'Retry With'
+ -
+ value: '450'
+ newvalue: 'Blocked by Windows Parental Controls'
+ -
+ value: '451'
+ newvalue: 'Unavailable for Legal Reasons/Redirect'
+ -
+ value: '494'
+ newvalue: 'Request Header Too Large'
+ -
+ value: '495'
+ newvalue: 'Cert Error'
+ -
+ value: '496'
+ newvalue: 'No Cert'
+ -
+ value: '497'
+ newvalue: 'HTTP to HTTPS'
+ -
+ value: '498'
+ newvalue: 'Token Expired/Invalid'
+ -
+ value: '499'
+ newvalue: 'Client Closed Request/Token Required'
+ -
+ value: '500'
+ newvalue: 'Internal Server Error'
+ -
+ value: '501'
+ newvalue: 'Not Implemented'
+ -
+ value: '502'
+ newvalue: 'Bad Gateway'
+ -
+ value: '503'
+ newvalue: 'Service Unavailable'
+ -
+ value: '504'
+ newvalue: 'Gateway Timeout'
+ -
+ value: '505'
+ newvalue: 'HTTP Version Not Supported'
+ -
+ value: '506'
+ newvalue: 'Variant Also Negotiates'
+ -
+ value: '507'
+ newvalue: 'Insufficient Storage'
+ -
+ value: '508'
+ newvalue: 'Loop Detected'
+ -
+ value: '509'
+ newvalue: 'Bandwidth Limit Exceeded'
+ -
+ value: '510'
+ newvalue: 'Not Extended'
+ -
+ value: '511'
+ newvalue: 'Network Authentication Required'
+ -
+ value: '520'
+ newvalue: 'Unknown Error'
+ -
+ value: '598'
+ newvalue: 'Network Read Timeout Error'
+ -
+ value: '599'
+ newvalue: 'Network Connect Timeout Error'
+ -
+ uuid: 99c0bc65efb34d298586320bdcf14209
+ name: 'Node online'
+ mappings:
+ -
+ value: '1'
+ newvalue: Online
+ -
+ value: '0'
+ newvalue: Offline
diff --git a/templates/module/host_resources_snmp/README.md b/templates/module/host_resources_snmp/README.md
index 8c70865d128..abfb5e3282c 100644
--- a/templates/module/host_resources_snmp/README.md
+++ b/templates/module/host_resources_snmp/README.md
@@ -17,6 +17,8 @@ No specific Zabbix configuration is required.
|Name|Description|Default|
|----|-----------|-------|
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
@@ -93,7 +95,7 @@ There are no template links in this template.
|-----|----|-----------|----|---------------------|
|Memory |{#MEMNAME}: Used memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vm.memory.used[hrStorageUsed.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Memory |{#MEMNAME}: Total memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in units of hrStorageAllocationUnits.</p><p>This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system.</p><p>For example, the amount of main memory allocated to a buffer pool might be modified or the amount of disk space allocated to virtual memory might be modified.</p> |SNMP |vm.memory.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
-|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
+|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
## Triggers
@@ -172,6 +174,8 @@ No specific Zabbix configuration is required.
|{$MEMORY.TYPE.MATCHES} |<p>This macro is used in memory discovery. Can be overridden on the host or linked template level.</p> |`.*(\.2|hrStorageRam)$` |
|{$MEMORY.TYPE.NOT_MATCHES} |<p>This macro is used in memory discovery. Can be overridden on the host or linked template level if you need to filter out results.</p> |`CHANGE_IF_NEEDED` |
|{$MEMORY.UTIL.MAX} |<p>The warning threshold of the "Physical memory: Memory utilization" item.</p> |`90` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
@@ -197,7 +201,7 @@ There are no template links in this template.
|CPU |CPU utilization |<p>MIB: HOST-RESOURCES-MIB</p><p>The average, over the last minute, of the percentage of time that processors was not idle.</p><p>Implementations may approximate this one minute smoothing period if necessary.</p> |SNMP |system.cpu.util<p>**Preprocessing**:</p><p>- JSONPATH: `$..['{#CPU.UTIL}'].avg()`</p> |
|Memory |{#MEMNAME}: Used memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vm.memory.used[hrStorageUsed.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Memory |{#MEMNAME}: Total memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in units of hrStorageAllocationUnits.</p><p>This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system.</p><p>For example, the amount of main memory allocated to a buffer pool might be modified or the amount of disk space allocated to virtual memory might be modified.</p> |SNMP |vm.memory.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
-|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
+|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
|Storage |{#FSNAME}: Used space |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Storage |{#FSNAME}: Total space |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in units of hrStorageAllocationUnits.</p><p>This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system.</p><p>For example, the amount of main storage allocated to a buffer pool might be modified or the amount of disk space allocated to virtual storage might be modified.</p> |SNMP |vfs.fs.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Storage |{#FSNAME}: Space utilization |<p>Space utilization in % for {#FSNAME}</p> |CALCULATED |vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`(last(//vfs.fs.used[hrStorageUsed.{#SNMPINDEX}])/last(//vfs.fs.total[hrStorageSize.{#SNMPINDEX}]))*100` |
diff --git a/templates/module/host_resources_snmp/template_module_host_resources_snmp.yaml b/templates/module/host_resources_snmp/template_module_host_resources_snmp.yaml
index b4bb41c7ec6..7be847712c0 100644
--- a/templates/module/host_resources_snmp/template_module_host_resources_snmp.yaml
+++ b/templates/module/host_resources_snmp/template_module_host_resources_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:41Z'
+ version: '6.0'
+ date: '2022-04-11T11:25:13Z'
groups:
-
uuid: 57b7ae836ca64446ba2c296389c009b7
@@ -154,7 +154,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -359,7 +359,7 @@ zabbix_export:
uuid: 8283f8b8663f444aad85633010615c15
expression: |
last(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/HOST-RESOURCES-MIB SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/HOST-RESOURCES-MIB SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -367,7 +367,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -381,7 +381,7 @@ zabbix_export:
uuid: 2d9c475d718b4c2ba14b129f66014f75
expression: |
last(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/HOST-RESOURCES-MIB SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/HOST-RESOURCES-MIB SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -389,7 +389,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -397,7 +397,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/HOST-RESOURCES-MIB SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/HOST-RESOURCES-MIB SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/HOST-RESOURCES-MIB SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -509,7 +509,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -567,6 +567,14 @@ zabbix_export:
value: '90'
description: 'The warning threshold of the "Physical memory: Memory utilization" item.'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
@@ -771,7 +779,7 @@ zabbix_export:
uuid: 9fbb4a0ceeba4c9e935f54610d5f1afb
expression: |
last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -779,7 +787,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -793,7 +801,7 @@ zabbix_export:
uuid: 5db5f43d1c3b4b1f91bef16ec1090945
expression: |
last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -801,7 +809,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -809,7 +817,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/HOST-RESOURCES-MIB storage SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -842,6 +850,14 @@ zabbix_export:
key: 'vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]'
macros:
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
diff --git a/templates/module/linux/README.md b/templates/module/linux/README.md
index bda198f9cc9..b7ad0b9dd90 100644
--- a/templates/module/linux/README.md
+++ b/templates/module/linux/README.md
@@ -35,7 +35,7 @@ There are no template links in this template.
|CPU |Load average (1m avg) |<p>-</p> |ZABBIX_PASSIVE |system.cpu.load[all,avg1] |
|CPU |Load average (5m avg) |<p>-</p> |ZABBIX_PASSIVE |system.cpu.load[all,avg5] |
|CPU |Load average (15m avg) |<p>-</p> |ZABBIX_PASSIVE |system.cpu.load[all,avg15] |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
|CPU |CPU idle time |<p>The time the CPU has spent doing nothing.</p> |ZABBIX_PASSIVE |system.cpu.util[,idle] |
|CPU |CPU system time |<p>The time the CPU has spent running the kernel and its processes.</p> |ZABBIX_PASSIVE |system.cpu.util[,system] |
|CPU |CPU user time |<p>The time the CPU has spent running users' processes that are not niced.</p> |ZABBIX_PASSIVE |system.cpu.util[,user] |
@@ -44,8 +44,8 @@ There are no template links in this template.
|CPU |CPU steal time |<p>The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).</p> |ZABBIX_PASSIVE |system.cpu.util[,steal] |
|CPU |CPU interrupt time |<p>The amount of time the CPU has been servicing hardware interrupts.</p> |ZABBIX_PASSIVE |system.cpu.util[,interrupt] |
|CPU |CPU softirq time |<p>The amount of time the CPU has been servicing software interrupts.</p> |ZABBIX_PASSIVE |system.cpu.util[,softirq] |
-|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |ZABBIX_PASSIVE |system.cpu.util[,guest] |
-|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |ZABBIX_PASSIVE |system.cpu.util[,guest_nice] |
+|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |ZABBIX_PASSIVE |system.cpu.util[,guest] |
+|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |ZABBIX_PASSIVE |system.cpu.util[,guest_nice] |
|CPU |Context switches per second |<p>-</p> |ZABBIX_PASSIVE |system.cpu.switches<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
|CPU |Interrupts per second |<p>-</p> |ZABBIX_PASSIVE |system.cpu.intr<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
@@ -78,6 +78,8 @@ No specific Zabbix configuration is required.
|Name|Description|Default|
|----|-----------|-------|
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$` |
@@ -154,7 +156,7 @@ There are no template links in this template.
|-----|----|-----------|----|---------------------|
|Memory |Memory utilization |<p>Memory used percentage is calculated as (100-pavailable)</p> |DEPENDENT |vm.memory.utilization<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100-value);`</p> |
|Memory |Available memory in % |<p>Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_PASSIVE |vm.memory.size[pavailable] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
|Memory |Available memory |<p>Available memory, in Linux, available = free + buffers + cache. On other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_PASSIVE |vm.memory.size[available] |
|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_PASSIVE |system.swap.size[,total] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |ZABBIX_PASSIVE |system.swap.size[,free] |
diff --git a/templates/module/linux/template_module_linux.yaml b/templates/module/linux/template_module_linux.yaml
index 1e375cfdd5d..8e6c4b29c7c 100644
--- a/templates/module/linux/template_module_linux.yaml
+++ b/templates/module/linux/template_module_linux.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:47Z'
+ version: '6.0'
+ date: '2022-04-10T20:20:08Z'
groups:
-
uuid: 57b7ae836ca64446ba2c296389c009b7
@@ -446,7 +446,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -487,7 +487,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system).'
tags:
-
tag: component
@@ -499,7 +499,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)'
+ description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).'
tags:
-
tag: component
@@ -746,7 +746,7 @@ zabbix_export:
uuid: fb410c10bd59476dbe58e1ee179cd25f
expression: |
last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -754,7 +754,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -768,7 +768,7 @@ zabbix_export:
uuid: d66583735eb04973ac30d923533c4b0f
expression: |
last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -776,7 +776,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -784,7 +784,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -817,6 +817,14 @@ zabbix_export:
key: 'vfs.fs.size[{#FSNAME},used]'
macros:
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
@@ -1256,7 +1264,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -1994,7 +2002,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/module/linux_active/README.md b/templates/module/linux_active/README.md
index e503550cb63..eb21a7ba176 100644
--- a/templates/module/linux_active/README.md
+++ b/templates/module/linux_active/README.md
@@ -35,7 +35,7 @@ There are no template links in this template.
|CPU |Load average (1m avg) |<p>-</p> |ZABBIX_ACTIVE |system.cpu.load[all,avg1] |
|CPU |Load average (5m avg) |<p>-</p> |ZABBIX_ACTIVE |system.cpu.load[all,avg5] |
|CPU |Load average (15m avg) |<p>-</p> |ZABBIX_ACTIVE |system.cpu.load[all,avg15] |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
|CPU |CPU idle time |<p>The time the CPU has spent doing nothing.</p> |ZABBIX_ACTIVE |system.cpu.util[,idle] |
|CPU |CPU system time |<p>The time the CPU has spent running the kernel and its processes.</p> |ZABBIX_ACTIVE |system.cpu.util[,system] |
|CPU |CPU user time |<p>The time the CPU has spent running users' processes that are not niced.</p> |ZABBIX_ACTIVE |system.cpu.util[,user] |
@@ -44,8 +44,8 @@ There are no template links in this template.
|CPU |CPU steal time |<p>The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).</p> |ZABBIX_ACTIVE |system.cpu.util[,steal] |
|CPU |CPU interrupt time |<p>The amount of time the CPU has been servicing hardware interrupts.</p> |ZABBIX_ACTIVE |system.cpu.util[,interrupt] |
|CPU |CPU softirq time |<p>The amount of time the CPU has been servicing software interrupts.</p> |ZABBIX_ACTIVE |system.cpu.util[,softirq] |
-|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |ZABBIX_ACTIVE |system.cpu.util[,guest] |
-|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |ZABBIX_ACTIVE |system.cpu.util[,guest_nice] |
+|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |ZABBIX_ACTIVE |system.cpu.util[,guest] |
+|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |ZABBIX_ACTIVE |system.cpu.util[,guest_nice] |
|CPU |Context switches per second |<p>-</p> |ZABBIX_ACTIVE |system.cpu.switches<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
|CPU |Interrupts per second |<p>-</p> |ZABBIX_ACTIVE |system.cpu.intr<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
@@ -78,6 +78,8 @@ No specific Zabbix configuration is required.
|Name|Description|Default|
|----|-----------|-------|
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$` |
@@ -154,7 +156,7 @@ There are no template links in this template.
|-----|----|-----------|----|---------------------|
|Memory |Memory utilization |<p>Memory used percentage is calculated as (100-pavailable)</p> |DEPENDENT |vm.memory.utilization<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100-value);`</p> |
|Memory |Available memory in % |<p>Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_ACTIVE |vm.memory.size[pavailable] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
|Memory |Available memory |<p>Available memory, in Linux, available = free + buffers + cache. On other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_ACTIVE |vm.memory.size[available] |
|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_ACTIVE |system.swap.size[,total] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |ZABBIX_ACTIVE |system.swap.size[,free] |
diff --git a/templates/module/linux_active/template_module_linux_active.yaml b/templates/module/linux_active/template_module_linux_active.yaml
index d5aaff42fb4..55bce27849a 100644
--- a/templates/module/linux_active/template_module_linux_active.yaml
+++ b/templates/module/linux_active/template_module_linux_active.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:49Z'
+ version: '6.0'
+ date: '2022-04-10T20:19:55Z'
groups:
-
uuid: 57b7ae836ca64446ba2c296389c009b7
@@ -454,7 +454,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -496,7 +496,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system).'
tags:
-
tag: component
@@ -509,7 +509,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)'
+ description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).'
tags:
-
tag: component
@@ -769,7 +769,7 @@ zabbix_export:
uuid: 6f3a431ce1774d7e9cec073197f088ca
expression: |
last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -777,7 +777,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -791,7 +791,7 @@ zabbix_export:
uuid: fd163fa0d1b0419797957d80222218bd
expression: |
last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -799,7 +799,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -807,7 +807,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -840,6 +840,14 @@ zabbix_export:
key: 'vfs.fs.size[{#FSNAME},used]'
macros:
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
@@ -1299,7 +1307,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -2048,7 +2056,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/module/linux_snmp_snmp/README.md b/templates/module/linux_snmp_snmp/README.md
index 3ef7e1d251e..28f006a548a 100644
--- a/templates/module/linux_snmp_snmp/README.md
+++ b/templates/module/linux_snmp_snmp/README.md
@@ -34,9 +34,9 @@ There are no template links in this template.
|-----|----|-----------|----|---------------------|
|Memory |Memory utilization |<p>Please note that memory utilization is a rough estimate, since memory available is calculated as free+buffers+cached, which is not 100% accurate, but the best we can get using SNMP.</p> |CALCULATED |vm.memory.util[snmp]<p>**Expression**:</p>`(last(//vm.memory.total[memTotalReal.0])-(last(//vm.memory.free[memAvailReal.0])+last(//vm.memory.buffers[memBuffer.0])+last(//vm.memory.cached[memCached.0])))/last(//vm.memory.total[memTotalReal.0])*100` |
|Memory |Free memory |<p>MIB: UCD-SNMP-MIB</p> |SNMP |vm.memory.free[memAvailReal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
-|Memory |Memory (buffers) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by kernel buffers (Buffers in /proc/meminfo)</p> |SNMP |vm.memory.buffers[memBuffer.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
-|Memory |Memory (cached) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)</p> |SNMP |vm.memory.cached[memCached.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
-|Memory |Total memory |<p>MIB: UCD-SNMP-MIB</p><p>Total memory in Bytes</p> |SNMP |vm.memory.total[memTotalReal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory (buffers) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by kernel buffers (Buffers in /proc/meminfo).</p> |SNMP |vm.memory.buffers[memBuffer.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory (cached) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo).</p> |SNMP |vm.memory.cached[memCached.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Total memory |<p>MIB: UCD-SNMP-MIB</p><p>Total memory in Bytes.</p> |SNMP |vm.memory.total[memTotalReal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
|Memory |Available memory |<p>Please note that memory utilization is a rough estimate, since memory available is calculated as free+buffers+cached, which is not 100% accurate, but the best we can get using SNMP.</p> |CALCULATED |vm.memory.available[snmp]<p>**Expression**:</p>`last(//vm.memory.free[memAvailReal.0])+last(//vm.memory.buffers[memBuffer.0])+last(//vm.memory.cached[memCached.0])` |
|Memory |Total swap space |<p>MIB: UCD-SNMP-MIB</p><p>The total amount of swap space configured for this host.</p> |SNMP |system.swap.total[memTotalSwap.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
|Memory |Free swap space |<p>MIB: UCD-SNMP-MIB</p><p>The amount of swap space currently unused or available.</p> |SNMP |system.swap.free[memAvailSwap.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
@@ -155,9 +155,9 @@ There are no template links in this template.
|CPU |CPU nice time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent running users' processes that have been niced.</p> |SNMP |system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
|CPU |CPU iowait time |<p>MIB: UCD-SNMP-MIB</p><p>Amount of time the CPU has been waiting for I/O to complete.</p> |SNMP |system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
|CPU |CPU interrupt time |<p>MIB: UCD-SNMP-MIB</p><p>The amount of time the CPU has been servicing hardware interrupts.</p> |SNMP |system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
-|CPU |CPU guest time |<p>MIB: UCD-SNMP-MIB</p><p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |SNMP |system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
-|CPU |CPU guest nice time |<p>MIB: UCD-SNMP-MIB</p><p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |SNMP |system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util[snmp,{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value) `</p> |
+|CPU |CPU guest time |<p>MIB: UCD-SNMP-MIB</p><p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |SNMP |system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
+|CPU |CPU guest nice time |<p>MIB: UCD-SNMP-MIB</p><p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |SNMP |system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util[snmp,{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value) `</p> |
## Triggers
@@ -188,6 +188,8 @@ No specific Zabbix configuration is required.
|Name|Description|Default|
|----|-----------|-------|
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
diff --git a/templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml b/templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml
index 2dc2dd82178..21b6da9a0d9 100644
--- a/templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml
+++ b/templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:50Z'
+ version: '6.0'
+ date: '2022-04-10T20:21:27Z'
groups:
-
uuid: 57b7ae836ca64446ba2c296389c009b7
@@ -261,7 +261,7 @@ zabbix_export:
units: '%'
description: |
MIB: UCD-SNMP-MIB
- Guest time (time spent running a virtual CPU for a guest operating system)
+ Guest time (time spent running a virtual CPU for a guest operating system).
preprocessing:
-
type: CHANGE_PER_SECOND
@@ -288,7 +288,7 @@ zabbix_export:
units: '%'
description: |
MIB: UCD-SNMP-MIB
- Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)
+ Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).
preprocessing:
-
type: CHANGE_PER_SECOND
@@ -529,7 +529,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -823,7 +823,7 @@ zabbix_export:
uuid: ae3535ef3f674dccb6c809dc7d01172c
expression: |
last(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux filesystems SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux filesystems SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Linux filesystems SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux filesystems SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -831,7 +831,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -845,7 +845,7 @@ zabbix_export:
uuid: 3bef4897bcd549288203241c5ca9f017
expression: |
last(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux filesystems SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux filesystems SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Linux filesystems SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux filesystems SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -853,7 +853,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -861,7 +861,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux filesystems SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux filesystems SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Linux filesystems SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux filesystems SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux filesystems SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -894,6 +894,14 @@ zabbix_export:
key: 'vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]'
macros:
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
@@ -1024,7 +1032,7 @@ zabbix_export:
units: B
description: |
MIB: UCD-SNMP-MIB
- Memory used by kernel buffers (Buffers in /proc/meminfo)
+ Memory used by kernel buffers (Buffers in /proc/meminfo).
preprocessing:
-
type: MULTIPLIER
@@ -1044,7 +1052,7 @@ zabbix_export:
units: B
description: |
MIB: UCD-SNMP-MIB
- Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)
+ Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo).
preprocessing:
-
type: MULTIPLIER
@@ -1082,7 +1090,7 @@ zabbix_export:
units: B
description: |
MIB: UCD-SNMP-MIB
- Total memory in Bytes
+ Total memory in Bytes.
preprocessing:
-
type: MULTIPLIER
@@ -1143,7 +1151,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/module/windows_agent/README.md b/templates/module/windows_agent/README.md
index 76010514341..3ce87cce166 100644
--- a/templates/module/windows_agent/README.md
+++ b/templates/module/windows_agent/README.md
@@ -33,7 +33,7 @@ There are no template links in this template.
|Group|Name|Description|Type|Key and additional info|
|-----|----|-----------|----|---------------------|
-|CPU |CPU utilization |<p>CPU utilization in %</p> |ZABBIX_PASSIVE |system.cpu.util |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |ZABBIX_PASSIVE |system.cpu.util |
|CPU |CPU interrupt time |<p>The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing</p><p>hardware interrupts during sample intervals. This value is an indirect indicator of the activity of</p><p>devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication</p><p>lines, network interface cards and other peripheral devices. This is an easy way to identify a potential</p><p>hardware failure. This should never be higher than 20%.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% Interrupt Time"] |
|CPU |Context switches per second |<p>Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.</p><p>Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service.</p><p>It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches.</p><p>There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval.</p> |ZABBIX_PASSIVE |perf_counter_en["\System\Context Switches/sec"] |
|CPU |CPU privileged time |<p>The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent</p><p>executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt</p><p>Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode</p><p>functions of the Windows® Operating System.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% Privileged Time"] |
@@ -89,9 +89,9 @@ There are no template links in this template.
|Group|Name|Description|Type|Key and additional info|
|-----|----|-----------|----|---------------------|
-|Memory |Used memory |<p>Used memory in Bytes</p> |ZABBIX_PASSIVE |vm.memory.size[used] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
-|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
+|Memory |Used memory |<p>Used memory in Bytes.</p> |ZABBIX_PASSIVE |vm.memory.size[used] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
+|Memory |Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
|Memory |Cache bytes |<p>Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,</p><p>Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays</p><p>the last observed value only; it is not an average.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Cache Bytes"] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |CALCULATED |system.swap.free<p>**Expression**:</p>`last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])` |
|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |DEPENDENT |system.swap.pfree<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
@@ -133,6 +133,8 @@ No specific Zabbix configuration is required.
|Name|Description|Default|
|----|-----------|-------|
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSDRIVETYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`fixed` |
|{$VFS.FS.FSDRIVETYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*` |
diff --git a/templates/module/windows_agent/template_module_windows_agent.yaml b/templates/module/windows_agent/template_module_windows_agent.yaml
index 0d5f9b855a6..235b566e118 100644
--- a/templates/module/windows_agent/template_module_windows_agent.yaml
+++ b/templates/module/windows_agent/template_module_windows_agent.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:54Z'
+ version: '6.0'
+ date: '2022-04-08T09:22:42Z'
groups:
-
uuid: 57b7ae836ca64446ba2c296389c009b7
@@ -155,7 +155,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
tags:
-
tag: component
@@ -294,7 +294,7 @@ zabbix_export:
uuid: 68544e02e3cc4d389269448f34ca66e1
expression: |
last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -302,7 +302,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -313,7 +313,7 @@ zabbix_export:
uuid: ba0e859e58c34107a792098cfe9d31a4
expression: |
last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -321,7 +321,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -329,7 +329,7 @@ zabbix_export:
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
expression: |
last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows filesystems by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -359,6 +359,14 @@ zabbix_export:
key: 'vfs.fs.size[{#FSNAME},used]'
macros:
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
value: fixed
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
@@ -729,7 +737,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -740,7 +748,7 @@ zabbix_export:
key: 'vm.memory.size[used]'
history: 7d
units: B
- description: 'Used memory in Bytes'
+ description: 'Used memory in Bytes.'
tags:
-
tag: component
@@ -754,7 +762,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
diff --git a/templates/module/windows_agent_active/README.md b/templates/module/windows_agent_active/README.md
index 288f26febe5..7c86e94b623 100644
--- a/templates/module/windows_agent_active/README.md
+++ b/templates/module/windows_agent_active/README.md
@@ -33,7 +33,7 @@ There are no template links in this template.
|Group|Name|Description|Type|Key and additional info|
|-----|----|-----------|----|---------------------|
-|CPU |CPU utilization |<p>CPU utilization in %</p> |ZABBIX_ACTIVE |system.cpu.util |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |ZABBIX_ACTIVE |system.cpu.util |
|CPU |CPU interrupt time |<p>The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing</p><p>hardware interrupts during sample intervals. This value is an indirect indicator of the activity of</p><p>devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication</p><p>lines, network interface cards and other peripheral devices. This is an easy way to identify a potential</p><p>hardware failure. This should never be higher than 20%.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% Interrupt Time"] |
|CPU |Context switches per second |<p>Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.</p><p>Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service.</p><p>It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches.</p><p>There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval.</p> |ZABBIX_ACTIVE |perf_counter_en["\System\Context Switches/sec"] |
|CPU |CPU privileged time |<p>The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent</p><p>executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt</p><p>Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode</p><p>functions of the Windows® Operating System.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% Privileged Time"] |
@@ -89,9 +89,9 @@ There are no template links in this template.
|Group|Name|Description|Type|Key and additional info|
|-----|----|-----------|----|---------------------|
-|Memory |Used memory |<p>Used memory in Bytes</p> |ZABBIX_ACTIVE |vm.memory.size[used] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
-|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
+|Memory |Used memory |<p>Used memory in Bytes.</p> |ZABBIX_ACTIVE |vm.memory.size[used] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
+|Memory |Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
|Memory |Cache bytes |<p>Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,</p><p>Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays</p><p>the last observed value only; it is not an average.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Cache Bytes"] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |CALCULATED |system.swap.free<p>**Expression**:</p>`last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])` |
|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |DEPENDENT |system.swap.pfree<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
@@ -133,6 +133,8 @@ No specific Zabbix configuration is required.
|Name|Description|Default|
|----|-----------|-------|
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSDRIVETYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`fixed` |
|{$VFS.FS.FSDRIVETYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*` |
diff --git a/templates/module/windows_agent_active/template_module_windows_agent_active.yaml b/templates/module/windows_agent_active/template_module_windows_agent_active.yaml
index 0981a53268e..e449de804ac 100644
--- a/templates/module/windows_agent_active/template_module_windows_agent_active.yaml
+++ b/templates/module/windows_agent_active/template_module_windows_agent_active.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:59:55Z'
+ version: '6.0'
+ date: '2022-04-08T09:22:28Z'
groups:
-
uuid: 57b7ae836ca64446ba2c296389c009b7
@@ -162,7 +162,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
tags:
-
tag: component
@@ -306,7 +306,7 @@ zabbix_export:
uuid: d09b152f2b53451b9daec16eadeaa0ee
expression: |
last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -314,7 +314,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -325,7 +325,7 @@ zabbix_export:
uuid: c3e9ee6d771d4047b4351e5870b8ca01
expression: |
last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -333,7 +333,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -341,7 +341,7 @@ zabbix_export:
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
expression: |
last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows filesystems by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -371,6 +371,14 @@ zabbix_export:
key: 'vfs.fs.size[{#FSNAME},used]'
macros:
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
value: fixed
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
@@ -756,7 +764,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -768,7 +776,7 @@ zabbix_export:
key: 'vm.memory.size[used]'
history: 7d
units: B
- description: 'Used memory in Bytes'
+ description: 'Used memory in Bytes.'
tags:
-
tag: component
@@ -782,7 +790,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
diff --git a/templates/net/arista_snmp/README.md b/templates/net/arista_snmp/README.md
index 3fb9da2f916..a91b356d481 100644
--- a/templates/net/arista_snmp/README.md
+++ b/templates/net/arista_snmp/README.md
@@ -47,6 +47,8 @@ No specific Zabbix configuration is required.
|{$NET.IF.IFTYPE.NOT_MATCHES} |<p>-</p> |`CHANGE_IF_NEEDED` |
|{$PSU_CRIT_STATUS} |<p>-</p> |`2` |
|{$SNMP.TIMEOUT} |<p>-</p> |`5m` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
@@ -89,7 +91,7 @@ There are no template links in this template.
|Inventory |{#ENT_NAME}: Hardware serial number |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> |
|Memory |{#MEMNAME}: Used memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vm.memory.used[hrStorageUsed.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Memory |{#MEMNAME}: Total memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in units of hrStorageAllocationUnits.</p><p>This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system.</p><p>For example, the amount of main memory allocated to a buffer pool might be modified or the amount of disk space allocated to virtual memory might be modified.</p> |SNMP |vm.memory.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
-|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
+|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Duplex status |<p>MIB: EtherLike-MIB</p><p>The current mode of operation of the MAC</p><p>entity. 'unknown' indicates that the current</p><p>duplex mode could not be determined.</p><p>Management control of the duplex mode is</p><p>accomplished through the MAU MIB. When</p><p>an interface does not support autonegotiation,</p><p>or when autonegotiation is not enabled, the</p><p>duplex mode is controlled using</p><p>ifMauDefaultType. When autonegotiation is</p><p>supported and enabled, duplex mode is controlled</p><p>using ifMauAutoNegAdvertisedBits. In either</p><p>case, the currently operating duplex mode is</p><p>reflected both in this object and in ifMauType.</p><p>Note that this object provides redundant</p><p>information with ifMauType. Normally, redundant</p><p>objects are discouraged. However, in this</p><p>instance, it allows a management application to</p><p>determine the duplex status of an interface</p><p>without having to know every possible value of</p><p>ifMauType. This was felt to be sufficiently</p><p>valuable to justify the redundancy.</p><p>Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus.</p> |SNMP |net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}] |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>MIB: IF-MIB</p><p>The current operational state of the interface.</p><p>- The testing(3) state indicates that no operational packet scan be passed</p><p>- If ifAdminStatus is down(2) then ifOperStatus should be down(2)</p><p>- If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic</p><p>- It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)</p><p>- It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state</p><p>- It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.</p> |SNMP |net.if.status[ifOperStatus.{#SNMPINDEX}] |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>MIB: IF-MIB</p><p>The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.</p> |SNMP |net.if.in[ifHCInOctets.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
diff --git a/templates/net/arista_snmp/template_net_arista_snmp.yaml b/templates/net/arista_snmp/template_net_arista_snmp.yaml
index d459fb03b83..e5c68deb2ea 100644
--- a/templates/net/arista_snmp/template_net_arista_snmp.yaml
+++ b/templates/net/arista_snmp/template_net_arista_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T20:00:03Z'
+ version: '6.0'
+ date: '2022-04-10T20:33:50Z'
groups:
-
uuid: 36bff6c29af64692839d077febfc7079
@@ -364,7 +364,7 @@ zabbix_export:
name: 'has been restarted'
event_name: '{HOST.NAME} has been restarted (uptime < 10m)'
priority: WARNING
- description: 'Uptime is less than 10 minutes'
+ description: 'Uptime is less than 10 minutes.'
manual_close: 'YES'
dependencies:
-
@@ -1589,7 +1589,7 @@ zabbix_export:
uuid: f4bfac8d247144b3bebac7245248553e
expression: |
last(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Arista SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Arista SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Arista SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Arista SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1597,7 +1597,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1611,7 +1611,7 @@ zabbix_export:
uuid: 9912ab9619ce46b88afe358ab50a2c4f
expression: |
last(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Arista SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Arista SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Arista SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Arista SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1619,7 +1619,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1627,7 +1627,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Arista SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Arista SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Arista SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Arista SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Arista SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -1739,7 +1739,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -2024,6 +2024,14 @@ zabbix_export:
macro: '{$SNMP.TIMEOUT}'
value: 5m
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
diff --git a/templates/net/mellanox_snmp/README.md b/templates/net/mellanox_snmp/README.md
index f25d9cfd546..65ac9ec9b1b 100644
--- a/templates/net/mellanox_snmp/README.md
+++ b/templates/net/mellanox_snmp/README.md
@@ -52,6 +52,8 @@ The template uses context macros for the temperature trigger expression. By defa
|{$TEMP.MAX.WARN} |<p>The temperature maximum warning value for trigger expression.</p> |`50` |
|{$TEMP.MIN.CRIT} |<p>The temperature minimum critical value for trigger expression.</p> |`5` |
|{$TEMP.STATUS.WARN} |<p>The critical value of the TEMP sensor for trigger expression.</p> |`3` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host level.</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host level.</p> |`^(/dev|/sys|/$|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host level.</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
@@ -92,7 +94,7 @@ There are no template links in this template.
|Inventory |{#ENT_NAME}: Hardware serial number |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
|Memory |{#MEMNAME}: Used memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vm.memory.used[hrStorageUsed.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Memory |{#MEMNAME}: Total memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in units of hrStorageAllocationUnits.</p><p>This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system.</p><p>For example, the amount of main memory allocated to a buffer pool might be modified or the amount of disk space allocated to virtual memory might be modified.</p> |SNMP |vm.memory.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
-|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
+|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>MIB: IF-MIB</p><p>The current operational state of the interface.</p><p>- The testing(3) state indicates that no operational packet scan be passed</p><p>- If ifAdminStatus is down(2) then ifOperStatus should be down(2)</p><p>- If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic</p><p>- It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)</p><p>- It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state</p><p>- It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.</p> |SNMP |net.if.status[ifOperStatus.{#SNMPINDEX}] |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>MIB: IF-MIB</p><p>The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.</p> |SNMP |net.if.in[ifHCInOctets.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits sent |<p>MIB: IF-MIB</p><p>The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.</p> |SNMP |net.if.out[ifHCOutOctets.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
diff --git a/templates/net/mellanox_snmp/template_net_mellanox_snmp.yaml b/templates/net/mellanox_snmp/template_net_mellanox_snmp.yaml
index 25c52d682f4..d9f271b0fee 100644
--- a/templates/net/mellanox_snmp/template_net_mellanox_snmp.yaml
+++ b/templates/net/mellanox_snmp/template_net_mellanox_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T20:00:56Z'
+ version: '6.0'
+ date: '2022-04-10T20:41:37Z'
groups:
-
uuid: 36bff6c29af64692839d077febfc7079
@@ -330,7 +330,7 @@ zabbix_export:
name: 'has been restarted'
event_name: '{HOST.NAME} has been restarted (uptime < 10m)'
priority: WARNING
- description: 'Uptime is less than 10 minutes'
+ description: 'Uptime is less than 10 minutes.'
manual_close: 'YES'
dependencies:
-
@@ -1306,7 +1306,7 @@ zabbix_export:
uuid: f1eb2ddb27d24cd99d8aba4485dfeeb9
expression: |
last(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Mellanox SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Mellanox SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Mellanox SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Mellanox SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1314,7 +1314,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1328,7 +1328,7 @@ zabbix_export:
uuid: b2e084f280434a3a8291e5dc691dfd7b
expression: |
last(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Mellanox SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Mellanox SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Mellanox SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Mellanox SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1336,7 +1336,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1344,7 +1344,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Mellanox SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Mellanox SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Mellanox SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Mellanox SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Mellanox SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -1461,7 +1461,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -1620,6 +1620,14 @@ zabbix_export:
value: '3'
description: 'The critical value of the TEMP sensor for trigger expression.'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host level.'
diff --git a/templates/os/linux/README.md b/templates/os/linux/README.md
index b859f1de86a..645218fff92 100644
--- a/templates/os/linux/README.md
+++ b/templates/os/linux/README.md
@@ -36,6 +36,8 @@ No specific Zabbix configuration is required.
|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level</p> |`^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|zram[0-9]*)` |
|{$VFS.DEV.READ.AWAIT.WARN} |<p>Disk read average response time (in ms) before the trigger would fire</p> |`20` |
|{$VFS.DEV.WRITE.AWAIT.WARN} |<p>Disk write average response time (in ms) before the trigger would fire</p> |`20` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$` |
@@ -65,7 +67,7 @@ There are no template links in this template.
|CPU |Load average (1m avg) |<p>-</p> |ZABBIX_PASSIVE |system.cpu.load[all,avg1] |
|CPU |Load average (5m avg) |<p>-</p> |ZABBIX_PASSIVE |system.cpu.load[all,avg5] |
|CPU |Load average (15m avg) |<p>-</p> |ZABBIX_PASSIVE |system.cpu.load[all,avg15] |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
|CPU |CPU idle time |<p>The time the CPU has spent doing nothing.</p> |ZABBIX_PASSIVE |system.cpu.util[,idle] |
|CPU |CPU system time |<p>The time the CPU has spent running the kernel and its processes.</p> |ZABBIX_PASSIVE |system.cpu.util[,system] |
|CPU |CPU user time |<p>The time the CPU has spent running users' processes that are not niced.</p> |ZABBIX_PASSIVE |system.cpu.util[,user] |
@@ -74,8 +76,8 @@ There are no template links in this template.
|CPU |CPU steal time |<p>The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).</p> |ZABBIX_PASSIVE |system.cpu.util[,steal] |
|CPU |CPU interrupt time |<p>The amount of time the CPU has been servicing hardware interrupts.</p> |ZABBIX_PASSIVE |system.cpu.util[,interrupt] |
|CPU |CPU softirq time |<p>The amount of time the CPU has been servicing software interrupts.</p> |ZABBIX_PASSIVE |system.cpu.util[,softirq] |
-|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |ZABBIX_PASSIVE |system.cpu.util[,guest] |
-|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |ZABBIX_PASSIVE |system.cpu.util[,guest_nice] |
+|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |ZABBIX_PASSIVE |system.cpu.util[,guest] |
+|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |ZABBIX_PASSIVE |system.cpu.util[,guest_nice] |
|CPU |Context switches per second |<p>-</p> |ZABBIX_PASSIVE |system.cpu.switches<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
|CPU |Interrupts per second |<p>-</p> |ZABBIX_PASSIVE |system.cpu.intr<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
|Filesystems |{#FSNAME}: Used space |<p>Used storage in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},used] |
@@ -96,7 +98,7 @@ There are no template links in this template.
|Inventory |Software installed |<p>-</p> |ZABBIX_PASSIVE |system.sw.packages<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
|Memory |Memory utilization |<p>Memory used percentage is calculated as (100-pavailable)</p> |DEPENDENT |vm.memory.utilization<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100-value);`</p> |
|Memory |Available memory in % |<p>Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_PASSIVE |vm.memory.size[pavailable] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
|Memory |Available memory |<p>Available memory, in Linux, available = free + buffers + cache. On other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_PASSIVE |vm.memory.size[available] |
|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_PASSIVE |system.swap.size[,total] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |ZABBIX_PASSIVE |system.swap.size[,free] |
diff --git a/templates/os/linux/template_os_linux.yaml b/templates/os/linux/template_os_linux.yaml
index d5a70653884..96fef963db1 100644
--- a/templates/os/linux/template_os_linux.yaml
+++ b/templates/os/linux/template_os_linux.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:54:55Z'
+ version: '6.0'
+ date: '2022-04-10T20:20:48Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -245,7 +245,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -286,7 +286,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system).'
tags:
-
tag: component
@@ -298,7 +298,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)'
+ description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).'
tags:
-
tag: component
@@ -691,7 +691,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -1597,7 +1597,7 @@ zabbix_export:
uuid: 9abccdfff8be4e14967ac917ca09afe1
expression: |
last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1605,7 +1605,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1619,7 +1619,7 @@ zabbix_export:
uuid: d6d348ea500c428da6ba718816c4b048
expression: |
last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1627,7 +1627,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1635,7 +1635,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -1739,6 +1739,14 @@ zabbix_export:
value: '20'
description: 'Disk write average response time (in ms) before the trigger would fire'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
@@ -2247,7 +2255,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/os/linux_active/README.md b/templates/os/linux_active/README.md
index a463703c706..79f81f976f2 100644
--- a/templates/os/linux_active/README.md
+++ b/templates/os/linux_active/README.md
@@ -36,6 +36,8 @@ No specific Zabbix configuration is required.
|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level</p> |`^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|zram[0-9]*)` |
|{$VFS.DEV.READ.AWAIT.WARN} |<p>Disk read average response time (in ms) before the trigger would fire</p> |`20` |
|{$VFS.DEV.WRITE.AWAIT.WARN} |<p>Disk write average response time (in ms) before the trigger would fire</p> |`20` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$` |
@@ -65,7 +67,7 @@ There are no template links in this template.
|CPU |Load average (1m avg) |<p>-</p> |ZABBIX_ACTIVE |system.cpu.load[all,avg1] |
|CPU |Load average (5m avg) |<p>-</p> |ZABBIX_ACTIVE |system.cpu.load[all,avg5] |
|CPU |Load average (15m avg) |<p>-</p> |ZABBIX_ACTIVE |system.cpu.load[all,avg15] |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value)`</p> |
|CPU |CPU idle time |<p>The time the CPU has spent doing nothing.</p> |ZABBIX_ACTIVE |system.cpu.util[,idle] |
|CPU |CPU system time |<p>The time the CPU has spent running the kernel and its processes.</p> |ZABBIX_ACTIVE |system.cpu.util[,system] |
|CPU |CPU user time |<p>The time the CPU has spent running users' processes that are not niced.</p> |ZABBIX_ACTIVE |system.cpu.util[,user] |
@@ -74,8 +76,8 @@ There are no template links in this template.
|CPU |CPU steal time |<p>The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).</p> |ZABBIX_ACTIVE |system.cpu.util[,steal] |
|CPU |CPU interrupt time |<p>The amount of time the CPU has been servicing hardware interrupts.</p> |ZABBIX_ACTIVE |system.cpu.util[,interrupt] |
|CPU |CPU softirq time |<p>The amount of time the CPU has been servicing software interrupts.</p> |ZABBIX_ACTIVE |system.cpu.util[,softirq] |
-|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |ZABBIX_ACTIVE |system.cpu.util[,guest] |
-|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |ZABBIX_ACTIVE |system.cpu.util[,guest_nice] |
+|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |ZABBIX_ACTIVE |system.cpu.util[,guest] |
+|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |ZABBIX_ACTIVE |system.cpu.util[,guest_nice] |
|CPU |Context switches per second |<p>-</p> |ZABBIX_ACTIVE |system.cpu.switches<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
|CPU |Interrupts per second |<p>-</p> |ZABBIX_ACTIVE |system.cpu.intr<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
|Filesystems |{#FSNAME}: Used space |<p>Used storage in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},used] |
@@ -96,7 +98,7 @@ There are no template links in this template.
|Inventory |Software installed |<p>-</p> |ZABBIX_ACTIVE |system.sw.packages<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
|Memory |Memory utilization |<p>Memory used percentage is calculated as (100-pavailable)</p> |DEPENDENT |vm.memory.utilization<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100-value);`</p> |
|Memory |Available memory in % |<p>Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_ACTIVE |vm.memory.size[pavailable] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
|Memory |Available memory |<p>Available memory, in Linux, available = free + buffers + cache. On other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |ZABBIX_ACTIVE |vm.memory.size[available] |
|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_ACTIVE |system.swap.size[,total] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |ZABBIX_ACTIVE |system.swap.size[,free] |
diff --git a/templates/os/linux_active/template_os_linux_active.yaml b/templates/os/linux_active/template_os_linux_active.yaml
index 9670ceb1df6..d325adf0c86 100644
--- a/templates/os/linux_active/template_os_linux_active.yaml
+++ b/templates/os/linux_active/template_os_linux_active.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:54:56Z'
+ version: '6.0'
+ date: '2022-04-10T20:20:35Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -272,7 +272,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -314,7 +314,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system).'
tags:
-
tag: component
@@ -327,7 +327,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)'
+ description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).'
tags:
-
tag: component
@@ -743,7 +743,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -1641,7 +1641,7 @@ zabbix_export:
uuid: cf4079132a9d4124aa5e29d6839ae35b
expression: |
last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1649,7 +1649,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1663,7 +1663,7 @@ zabbix_export:
uuid: b56b8cad3bb34fab8132e07a32c432d9
expression: |
last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1671,7 +1671,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1679,7 +1679,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -1783,6 +1783,14 @@ zabbix_export:
value: '20'
description: 'Disk write average response time (in ms) before the trigger would fire'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
@@ -2291,7 +2299,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/os/linux_prom/README.md b/templates/os/linux_prom/README.md
index 892ce14b360..3d235cfcfb9 100644
--- a/templates/os/linux_prom/README.md
+++ b/templates/os/linux_prom/README.md
@@ -44,6 +44,8 @@ No specific Zabbix configuration is required.
|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level.</p> |`^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|zram[0-9]*)` |
|{$VFS.DEV.READ.AWAIT.WARN} |<p>Disk read average response time (in ms) before the trigger would fire.</p> |`20` |
|{$VFS.DEV.WRITE.AWAIT.WARN} |<p>Disk write average response time (in ms) before the trigger would fire.</p> |`20` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSDEVICE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^.+$` |
|{$VFS.FS.FSDEVICE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.+` |
@@ -75,7 +77,7 @@ There are no template links in this template.
|CPU |Load average (5m avg) |<p>-</p> |DEPENDENT |system.cpu.load.avg5[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `node_load5`</p> |
|CPU |Load average (15m avg) |<p>-</p> |DEPENDENT |system.cpu.load.avg15[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `node_load15`</p> |
|CPU |Number of CPUs |<p>-</p> |DEPENDENT |system.cpu.num[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="idle"}`</p><p>- JAVASCRIPT: `//count the number of cores return JSON.parse(value).length `</p> |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util[node_exporter]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value) `</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util[node_exporter]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value) `</p> |
|CPU |CPU idle time |<p>The time the CPU has spent doing nothing.</p> |DEPENDENT |system.cpu.idle[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="idle"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
|CPU |CPU system time |<p>The time the CPU has spent running the kernel and its processes.</p> |DEPENDENT |system.cpu.system[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="system"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
|CPU |CPU user time |<p>The time the CPU has spent running users' processes that are not niced.</p> |DEPENDENT |system.cpu.user[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="user"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
@@ -84,8 +86,8 @@ There are no template links in this template.
|CPU |CPU nice time |<p>The time the CPU has spent running users' processes that have been niced.</p> |DEPENDENT |system.cpu.nice[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="nice"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
|CPU |CPU iowait time |<p>Amount of time the CPU has been waiting for I/O to complete.</p> |DEPENDENT |system.cpu.iowait[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="iowait"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
|CPU |CPU interrupt time |<p>The amount of time the CPU has been servicing hardware interrupts.</p> |DEPENDENT |system.cpu.interrupt[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_seconds_total)?$",cpu=~".+",mode="irq"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
-|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |DEPENDENT |system.cpu.guest[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_guest_seconds_total)?$",cpu=~".+",mode=~"^(?:user|guest)$"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
-|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |DEPENDENT |system.cpu.guest_nice[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_guest_seconds_total)?$",cpu=~".+",mode=~"^(?:nice|guest_nice)$"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
+|CPU |CPU guest time |<p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |DEPENDENT |system.cpu.guest[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_guest_seconds_total)?$",cpu=~".+",mode=~"^(?:user|guest)$"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
+|CPU |CPU guest nice time |<p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |DEPENDENT |system.cpu.guest_nice[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_TO_JSON: `{__name__=~"^node_cpu(?:_guest_seconds_total)?$",cpu=~".+",mode=~"^(?:nice|guest_nice)$"}`</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `100`</p> |
|CPU |Interrupts per second |<p>-</p> |DEPENDENT |system.cpu.intr[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_intr"}`</p><p>- CHANGE_PER_SECOND</p> |
|CPU |Context switches per second |<p>-</p> |DEPENDENT |system.cpu.switches[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_context_switches"}`</p><p>- CHANGE_PER_SECOND</p> |
|General |System boot time |<p>-</p> |DEPENDENT |system.boottime[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"^node_boot_time(?:_seconds)?$"}`</p> |
@@ -97,7 +99,7 @@ There are no template links in this template.
|Inventory |Operating system |<p>-</p> |DEPENDENT |system.sw.os[node_exporter]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
|Inventory |Operating system architecture |<p>Operating system architecture of the host.</p> |DEPENDENT |system.sw.arch[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `node_uname_info`: `label`: `machine`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
|Memory |Memory utilization |<p>Memory used percentage is calculated as (total-available)/total*100.</p> |CALCULATED |vm.memory.util[node_exporter]<p>**Expression**:</p>`(last(//vm.memory.total[node_exporter])-last(//vm.memory.available[node_exporter]))/last(//vm.memory.total[node_exporter])*100` |
-|Memory |Total memory |<p>Total memory in Bytes</p> |DEPENDENT |vm.memory.total[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_memory_MemTotal"}`</p> |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |DEPENDENT |vm.memory.total[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_memory_MemTotal"}`</p> |
|Memory |Available memory |<p>Available memory, in Linux, available = free + buffers + cache. On other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.</p> |DEPENDENT |vm.memory.available[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_memory_MemAvailable"}`</p> |
|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |DEPENDENT |system.swap.total[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_memory_SwapTotal"}`</p> |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |DEPENDENT |system.swap.free[node_exporter]<p>**Preprocessing**:</p><p>- PROMETHEUS_PATTERN: `{__name__=~"node_memory_SwapFree"}`</p> |
diff --git a/templates/os/linux_prom/template_os_linux_prom.yaml b/templates/os/linux_prom/template_os_linux_prom.yaml
index 46bde2d67db..b41b8455479 100644
--- a/templates/os/linux_prom/template_os_linux_prom.yaml
+++ b/templates/os/linux_prom/template_os_linux_prom.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:54:58Z'
+ version: '6.0'
+ date: '2022-04-10T20:20:22Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -174,7 +174,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system).'
preprocessing:
-
type: PROMETHEUS_TO_JSON
@@ -212,7 +212,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)'
+ description: 'Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).'
preprocessing:
-
type: PROMETHEUS_TO_JSON
@@ -691,7 +691,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -1046,7 +1046,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
preprocessing:
-
type: PROMETHEUS_PATTERN
@@ -2168,7 +2168,7 @@ zabbix_export:
uuid: d5687d7aa0484b389f0bd168d50ee1e6
expression: |
last(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux by Prom/vfs.fs.total[node_exporter,"{#FSNAME}"])-last(/Linux by Prom/vfs.fs.used[node_exporter,"{#FSNAME}"]))<5G or timeleft(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"],1h,100)<1d)
+ ((last(/Linux by Prom/vfs.fs.total[node_exporter,"{#FSNAME}"])-last(/Linux by Prom/vfs.fs.used[node_exporter,"{#FSNAME}"]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -2176,7 +2176,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -2190,7 +2190,7 @@ zabbix_export:
uuid: 8f765148cfd64d5ebda93f39d0b20e36
expression: |
last(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux by Prom/vfs.fs.total[node_exporter,"{#FSNAME}"])-last(/Linux by Prom/vfs.fs.used[node_exporter,"{#FSNAME}"]))<10G or timeleft(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"],1h,100)<1d)
+ ((last(/Linux by Prom/vfs.fs.total[node_exporter,"{#FSNAME}"])-last(/Linux by Prom/vfs.fs.used[node_exporter,"{#FSNAME}"]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -2198,7 +2198,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -2206,7 +2206,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux by Prom/vfs.fs.total[node_exporter,"{#FSNAME}"])-last(/Linux by Prom/vfs.fs.used[node_exporter,"{#FSNAME}"]))<5G or timeleft(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"],1h,100)<1d)
+ ((last(/Linux by Prom/vfs.fs.total[node_exporter,"{#FSNAME}"])-last(/Linux by Prom/vfs.fs.used[node_exporter,"{#FSNAME}"]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"],1h,100)<1d)
tags:
-
tag: scope
@@ -2337,6 +2337,14 @@ zabbix_export:
value: '20'
description: 'Disk write average response time (in ms) before the trigger would fire.'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSDEVICE.MATCHES}'
value: ^.+$
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
@@ -2822,7 +2830,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/os/linux_snmp_snmp/README.md b/templates/os/linux_snmp_snmp/README.md
index 87e5f6a1b75..50aa1248bec 100644
--- a/templates/os/linux_snmp_snmp/README.md
+++ b/templates/os/linux_snmp_snmp/README.md
@@ -59,6 +59,8 @@ No specific Zabbix configuration is required.
|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
|{$VFS.DEV.DEVNAME.MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in block devices discovery. Can be overridden on the host or linked template level</p> |`^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|zram[0-9]*)` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
@@ -100,9 +102,9 @@ There are no template links in this template.
|CPU |CPU nice time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent running users' processes that have been niced.</p> |SNMP |system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
|CPU |CPU iowait time |<p>MIB: UCD-SNMP-MIB</p><p>Amount of time the CPU has been waiting for I/O to complete.</p> |SNMP |system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
|CPU |CPU interrupt time |<p>MIB: UCD-SNMP-MIB</p><p>The amount of time the CPU has been servicing hardware interrupts.</p> |SNMP |system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
-|CPU |CPU guest time |<p>MIB: UCD-SNMP-MIB</p><p>Guest time (time spent running a virtual CPU for a guest operating system)</p> |SNMP |system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
-|CPU |CPU guest nice time |<p>MIB: UCD-SNMP-MIB</p><p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)</p> |SNMP |system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
-|CPU |CPU utilization |<p>CPU utilization in %</p> |DEPENDENT |system.cpu.util[snmp,{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value) `</p> |
+|CPU |CPU guest time |<p>MIB: UCD-SNMP-MIB</p><p>Guest time (time spent running a virtual CPU for a guest operating system).</p> |SNMP |system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
+|CPU |CPU guest nice time |<p>MIB: UCD-SNMP-MIB</p><p>Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).</p> |SNMP |system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- JAVASCRIPT: `//to get utilization in %, divide by N, where N is number of cores. return value/{#CPU.COUNT} `</p> |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |DEPENDENT |system.cpu.util[snmp,{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//Calculate utilization return (100 - value) `</p> |
|General |SNMP traps (fallback) |<p>The item is used to collect all SNMP traps unmatched by other snmptrap items</p> |SNMP_TRAP |snmptrap.fallback |
|General |System location |<p>MIB: SNMPv2-MIB</p><p>The physical location of this node (e.g., `telephone closet, 3rd floor'). If the location is unknown, the value is the zero-length string.</p> |SNMP |system.location[sysLocation.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
|General |System contact details |<p>MIB: SNMPv2-MIB</p><p>The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.</p> |SNMP |system.contact[sysContact.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
@@ -111,9 +113,9 @@ There are no template links in this template.
|General |System description |<p>MIB: SNMPv2-MIB</p><p>A textual description of the entity. This value should</p><p>include the full name and version identification of the system's hardware type, software operating-system, and</p><p>networking software.</p> |SNMP |system.descr[sysDescr.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
|Memory |Memory utilization |<p>Please note that memory utilization is a rough estimate, since memory available is calculated as free+buffers+cached, which is not 100% accurate, but the best we can get using SNMP.</p> |CALCULATED |vm.memory.util[snmp]<p>**Expression**:</p>`(last(//vm.memory.total[memTotalReal.0])-(last(//vm.memory.free[memAvailReal.0])+last(//vm.memory.buffers[memBuffer.0])+last(//vm.memory.cached[memCached.0])))/last(//vm.memory.total[memTotalReal.0])*100` |
|Memory |Free memory |<p>MIB: UCD-SNMP-MIB</p> |SNMP |vm.memory.free[memAvailReal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
-|Memory |Memory (buffers) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by kernel buffers (Buffers in /proc/meminfo)</p> |SNMP |vm.memory.buffers[memBuffer.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
-|Memory |Memory (cached) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)</p> |SNMP |vm.memory.cached[memCached.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
-|Memory |Total memory |<p>MIB: UCD-SNMP-MIB</p><p>Total memory in Bytes</p> |SNMP |vm.memory.total[memTotalReal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory (buffers) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by kernel buffers (Buffers in /proc/meminfo).</p> |SNMP |vm.memory.buffers[memBuffer.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory (cached) |<p>MIB: UCD-SNMP-MIB</p><p>Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo).</p> |SNMP |vm.memory.cached[memCached.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Total memory |<p>MIB: UCD-SNMP-MIB</p><p>Total memory in Bytes.</p> |SNMP |vm.memory.total[memTotalReal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
|Memory |Available memory |<p>Please note that memory utilization is a rough estimate, since memory available is calculated as free+buffers+cached, which is not 100% accurate, but the best we can get using SNMP.</p> |CALCULATED |vm.memory.available[snmp]<p>**Expression**:</p>`last(//vm.memory.free[memAvailReal.0])+last(//vm.memory.buffers[memBuffer.0])+last(//vm.memory.cached[memCached.0])` |
|Memory |Total swap space |<p>MIB: UCD-SNMP-MIB</p><p>The total amount of swap space configured for this host.</p> |SNMP |system.swap.total[memTotalSwap.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
|Memory |Free swap space |<p>MIB: UCD-SNMP-MIB</p><p>The amount of swap space currently unused or available.</p> |SNMP |system.swap.free[memAvailSwap.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
diff --git a/templates/os/linux_snmp_snmp/template_os_linux_snmp_snmp.yaml b/templates/os/linux_snmp_snmp/template_os_linux_snmp_snmp.yaml
index b88330cc2f6..a66377e6486 100644
--- a/templates/os/linux_snmp_snmp/template_os_linux_snmp_snmp.yaml
+++ b/templates/os/linux_snmp_snmp/template_os_linux_snmp_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T19:55:01Z'
+ version: '6.0'
+ date: '2022-04-10T20:21:14Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -454,7 +454,7 @@ zabbix_export:
name: 'has been restarted'
event_name: '{HOST.NAME} has been restarted (uptime < 10m)'
priority: WARNING
- description: 'Uptime is less than 10 minutes'
+ description: 'Uptime is less than 10 minutes.'
manual_close: 'YES'
dependencies:
-
@@ -487,7 +487,7 @@ zabbix_export:
units: B
description: |
MIB: UCD-SNMP-MIB
- Memory used by kernel buffers (Buffers in /proc/meminfo)
+ Memory used by kernel buffers (Buffers in /proc/meminfo).
preprocessing:
-
type: MULTIPLIER
@@ -507,7 +507,7 @@ zabbix_export:
units: B
description: |
MIB: UCD-SNMP-MIB
- Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)
+ Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo).
preprocessing:
-
type: MULTIPLIER
@@ -545,7 +545,7 @@ zabbix_export:
units: B
description: |
MIB: UCD-SNMP-MIB
- Total memory in Bytes
+ Total memory in Bytes.
preprocessing:
-
type: MULTIPLIER
@@ -645,7 +645,7 @@ zabbix_export:
units: '%'
description: |
MIB: UCD-SNMP-MIB
- Guest time (time spent running a virtual CPU for a guest operating system)
+ Guest time (time spent running a virtual CPU for a guest operating system).
preprocessing:
-
type: CHANGE_PER_SECOND
@@ -672,7 +672,7 @@ zabbix_export:
units: '%'
description: |
MIB: UCD-SNMP-MIB
- Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel)
+ Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).
preprocessing:
-
type: CHANGE_PER_SECOND
@@ -913,7 +913,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
preprocessing:
-
type: JAVASCRIPT
@@ -1869,7 +1869,7 @@ zabbix_export:
uuid: 4e84d5b0e3bb4729a6eabd5882d2d603
expression: |
last(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Linux SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1877,7 +1877,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1891,7 +1891,7 @@ zabbix_export:
uuid: 210ae86feef14fa0a82c97331e522937
expression: |
last(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Linux SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Linux SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1899,7 +1899,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1907,7 +1907,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Linux SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Linux SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Linux SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -2029,6 +2029,14 @@ zabbix_export:
value: '^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|zram[0-9]*)'
description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
@@ -3189,7 +3197,7 @@ zabbix_export:
event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
priority: WARNING
- description: 'This trigger is ignored, if there is no swap configured'
+ description: 'This trigger is ignored, if there is no swap configured.'
dependencies:
-
name: 'High memory utilization'
diff --git a/templates/os/windows_agent/README.md b/templates/os/windows_agent/README.md
index dab366b2bd4..69656a7ee25 100644
--- a/templates/os/windows_agent/README.md
+++ b/templates/os/windows_agent/README.md
@@ -53,6 +53,8 @@ No specific Zabbix configuration is required.
|{$VFS.DEV.READ.AWAIT.WARN} |<p>Disk read average response time (in s) before the trigger would fire.</p> |`0.02` |
|{$VFS.DEV.UTIL.MAX.WARN} |<p>The warning threshold of disk time utilization in percent.</p> |`95` |
|{$VFS.DEV.WRITE.AWAIT.WARN} |<p>Disk write average response time (in s) before the trigger would fire.</p> |`0.02` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSDRIVETYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`fixed` |
|{$VFS.FS.FSDRIVETYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*` |
@@ -79,7 +81,7 @@ There are no template links in this template.
|Group|Name|Description|Type|Key and additional info|
|-----|----|-----------|----|---------------------|
-|CPU |CPU utilization |<p>CPU utilization in %</p> |ZABBIX_PASSIVE |system.cpu.util |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |ZABBIX_PASSIVE |system.cpu.util |
|CPU |CPU interrupt time |<p>The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing</p><p>hardware interrupts during sample intervals. This value is an indirect indicator of the activity of</p><p>devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication</p><p>lines, network interface cards and other peripheral devices. This is an easy way to identify a potential</p><p>hardware failure. This should never be higher than 20%.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% Interrupt Time"] |
|CPU |Context switches per second |<p>Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.</p><p>Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service.</p><p>It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches.</p><p>There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval.</p> |ZABBIX_PASSIVE |perf_counter_en["\System\Context Switches/sec"] |
|CPU |CPU privileged time |<p>The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent</p><p>executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt</p><p>Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode</p><p>functions of the Windows® Operating System.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% Privileged Time"] |
@@ -96,9 +98,9 @@ There are no template links in this template.
|General |Number of processes |<p>The number of processes.</p> |ZABBIX_PASSIVE |proc.num[] |
|General |Number of threads |<p>The number of threads used by all running processes.</p> |ZABBIX_PASSIVE |perf_counter_en["\System\Threads"] |
|Inventory |Operating system architecture |<p>Operating system architecture of the host.</p> |ZABBIX_PASSIVE |system.sw.arch<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Memory |Used memory |<p>Used memory in Bytes</p> |ZABBIX_PASSIVE |vm.memory.size[used] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
-|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
+|Memory |Used memory |<p>Used memory in Bytes.</p> |ZABBIX_PASSIVE |vm.memory.size[used] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_PASSIVE |vm.memory.size[total] |
+|Memory |Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
|Memory |Cache bytes |<p>Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,</p><p>Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays</p><p>the last observed value only; it is not an average.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Cache Bytes"] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |CALCULATED |system.swap.free<p>**Expression**:</p>`last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])` |
|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |DEPENDENT |system.swap.pfree<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
diff --git a/templates/os/windows_agent/template_os_windows_agent.yaml b/templates/os/windows_agent/template_os_windows_agent.yaml
index 19dffbe5a15..35deea5e9b3 100644
--- a/templates/os/windows_agent/template_os_windows_agent.yaml
+++ b/templates/os/windows_agent/template_os_windows_agent.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T20:01:44Z'
+ version: '6.0'
+ date: '2022-04-08T09:23:20Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -345,7 +345,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
tags:
-
tag: component
@@ -541,7 +541,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -552,7 +552,7 @@ zabbix_export:
key: 'vm.memory.size[used]'
history: 7d
units: B
- description: 'Used memory in Bytes'
+ description: 'Used memory in Bytes.'
tags:
-
tag: component
@@ -566,7 +566,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -1478,7 +1478,7 @@ zabbix_export:
uuid: d3e99134a1d04894918f2c92ff38cb92
expression: |
last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1486,7 +1486,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1497,7 +1497,7 @@ zabbix_export:
uuid: 97115bbe4f6b4a8cb2873b8fa01f95d3
expression: |
last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1505,7 +1505,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1513,7 +1513,7 @@ zabbix_export:
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
expression: |
last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -1659,6 +1659,14 @@ zabbix_export:
value: '0.02'
description: 'Disk write average response time (in s) before the trigger would fire.'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
value: fixed
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
diff --git a/templates/os/windows_agent_active/README.md b/templates/os/windows_agent_active/README.md
index 526397ec0df..5661bc1c620 100644
--- a/templates/os/windows_agent_active/README.md
+++ b/templates/os/windows_agent_active/README.md
@@ -53,6 +53,8 @@ No specific Zabbix configuration is required.
|{$VFS.DEV.READ.AWAIT.WARN} |<p>Disk read average response time (in s) before the trigger would fire.</p> |`0.02` |
|{$VFS.DEV.UTIL.MAX.WARN} |<p>The warning threshold of disk time utilization in percent.</p> |`95` |
|{$VFS.DEV.WRITE.AWAIT.WARN} |<p>Disk write average response time (in s) before the trigger would fire.</p> |`0.02` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSDRIVETYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`fixed` |
|{$VFS.FS.FSDRIVETYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*` |
@@ -79,7 +81,7 @@ There are no template links in this template.
|Group|Name|Description|Type|Key and additional info|
|-----|----|-----------|----|---------------------|
-|CPU |CPU utilization |<p>CPU utilization in %</p> |ZABBIX_ACTIVE |system.cpu.util |
+|CPU |CPU utilization |<p>CPU utilization in %.</p> |ZABBIX_ACTIVE |system.cpu.util |
|CPU |CPU interrupt time |<p>The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing</p><p>hardware interrupts during sample intervals. This value is an indirect indicator of the activity of</p><p>devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication</p><p>lines, network interface cards and other peripheral devices. This is an easy way to identify a potential</p><p>hardware failure. This should never be higher than 20%.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% Interrupt Time"] |
|CPU |Context switches per second |<p>Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.</p><p>Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service.</p><p>It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches.</p><p>There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval.</p> |ZABBIX_ACTIVE |perf_counter_en["\System\Context Switches/sec"] |
|CPU |CPU privileged time |<p>The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent</p><p>executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt</p><p>Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode</p><p>functions of the Windows® Operating System.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% Privileged Time"] |
@@ -96,9 +98,9 @@ There are no template links in this template.
|General |Number of processes |<p>The number of processes.</p> |ZABBIX_ACTIVE |proc.num[] |
|General |Number of threads |<p>The number of threads used by all running processes.</p> |ZABBIX_ACTIVE |perf_counter_en["\System\Threads"] |
|Inventory |Operating system architecture |<p>Operating system architecture of the host.</p> |ZABBIX_ACTIVE |system.sw.arch<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Memory |Used memory |<p>Used memory in Bytes</p> |ZABBIX_ACTIVE |vm.memory.size[used] |
-|Memory |Total memory |<p>Total memory in Bytes</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
-|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
+|Memory |Used memory |<p>Used memory in Bytes.</p> |ZABBIX_ACTIVE |vm.memory.size[used] |
+|Memory |Total memory |<p>Total memory in Bytes.</p> |ZABBIX_ACTIVE |vm.memory.size[total] |
+|Memory |Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util<p>**Expression**:</p>`last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100` |
|Memory |Cache bytes |<p>Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,</p><p>Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays</p><p>the last observed value only; it is not an average.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Cache Bytes"] |
|Memory |Free swap space |<p>The free space of swap volume/file in bytes.</p> |CALCULATED |system.swap.free<p>**Expression**:</p>`last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])` |
|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |DEPENDENT |system.swap.pfree<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
diff --git a/templates/os/windows_agent_active/template_os_windows_agent_active.yaml b/templates/os/windows_agent_active/template_os_windows_agent_active.yaml
index abe792f2328..05b5597f8b2 100644
--- a/templates/os/windows_agent_active/template_os_windows_agent_active.yaml
+++ b/templates/os/windows_agent_active/template_os_windows_agent_active.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T20:01:46Z'
+ version: '6.0'
+ date: '2022-04-08T09:23:07Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -376,7 +376,7 @@ zabbix_export:
history: 7d
value_type: FLOAT
units: '%'
- description: 'CPU utilization in %'
+ description: 'CPU utilization in %.'
tags:
-
tag: component
@@ -579,7 +579,7 @@ zabbix_export:
key: 'vm.memory.size[total]'
history: 7d
units: B
- description: 'Total memory in Bytes'
+ description: 'Total memory in Bytes.'
tags:
-
tag: component
@@ -591,7 +591,7 @@ zabbix_export:
key: 'vm.memory.size[used]'
history: 7d
units: B
- description: 'Used memory in Bytes'
+ description: 'Used memory in Bytes.'
tags:
-
tag: component
@@ -605,7 +605,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -1514,7 +1514,7 @@ zabbix_export:
uuid: 5bed682545044584852888d96454df86
expression: |
last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1522,7 +1522,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -1533,7 +1533,7 @@ zabbix_export:
uuid: 1e5e9718c5a14099b9421ff7956b2f33
expression: |
last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<10G or timeleft(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
name: '{#FSLABEL}({#FSNAME}): Disk space is low'
event_name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1541,7 +1541,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1549,7 +1549,7 @@ zabbix_export:
name: '{#FSLABEL}({#FSNAME}): Disk space is critically low'
expression: |
last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<5G or timeleft(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
+ ((last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},total])-last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)
tags:
-
tag: scope
@@ -1695,6 +1695,14 @@ zabbix_export:
value: '0.02'
description: 'Disk write average response time (in s) before the trigger would fire.'
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
value: fixed
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
diff --git a/templates/os/windows_snmp/README.md b/templates/os/windows_snmp/README.md
index 5fbb792c185..60bee8ff31f 100644
--- a/templates/os/windows_snmp/README.md
+++ b/templates/os/windows_snmp/README.md
@@ -41,6 +41,8 @@ No specific Zabbix configuration is required.
|{$NET.IF.IFTYPE.MATCHES} |<p>-</p> |`.*` |
|{$NET.IF.IFTYPE.NOT_MATCHES} |<p>-</p> |`CHANGE_IF_NEEDED` |
|{$SNMP.TIMEOUT} |<p>-</p> |`5m` |
+|{$VFS.FS.FREE.MIN.CRIT} |<p>The critical threshold of the filesystem utilization.</p> |`5G` |
+|{$VFS.FS.FREE.MIN.WARN} |<p>The warning threshold of the filesystem utilization.</p> |`10G` |
|{$VFS.FS.FSNAME.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.+` |
|{$VFS.FS.FSNAME.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^(/dev|/sys|/run|/proc|.+/shm$)` |
|{$VFS.FS.FSTYPE.MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$` |
@@ -73,7 +75,7 @@ There are no template links in this template.
|General |System description |<p>MIB: SNMPv2-MIB</p><p>A textual description of the entity. This value should</p><p>include the full name and version identification of the system's hardware type, software operating-system, and</p><p>networking software.</p> |SNMP |system.descr[sysDescr.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
|Memory |{#MEMNAME}: Used memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vm.memory.used[hrStorageUsed.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
|Memory |{#MEMNAME}: Total memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in units of hrStorageAllocationUnits.</p><p>This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system.</p><p>For example, the amount of main memory allocated to a buffer pool might be modified or the amount of disk space allocated to virtual memory might be modified.</p> |SNMP |vm.memory.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `{#ALLOC_UNITS}`</p> |
-|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
+|Memory |{#MEMNAME}: Memory utilization |<p>Memory utilization in %.</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100` |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>MIB: IF-MIB</p><p>The current operational state of the interface.</p><p>- The testing(3) state indicates that no operational packet scan be passed</p><p>- If ifAdminStatus is down(2) then ifOperStatus should be down(2)</p><p>- If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic</p><p>- It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)</p><p>- It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state</p><p>- It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.</p> |SNMP |net.if.status[ifOperStatus.{#SNMPINDEX}] |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>MIB: IF-MIB</p><p>The total number of octets received on the interface,including framing characters. Discontinuities in the value of this counter can occur at re-initialization of the management system, and atother times as indicated by the value of ifCounterDiscontinuityTime.</p> |SNMP |net.if.in[ifInOctets.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits sent |<p>MIB: IF-MIB</p><p>The total number of octets transmitted out of the interface, including framing characters. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.</p> |SNMP |net.if.out[ifOutOctets.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
diff --git a/templates/os/windows_snmp/template_os_windows_snmp.yaml b/templates/os/windows_snmp/template_os_windows_snmp.yaml
index e22a6717932..12f54dfb569 100644
--- a/templates/os/windows_snmp/template_os_windows_snmp.yaml
+++ b/templates/os/windows_snmp/template_os_windows_snmp.yaml
@@ -1,6 +1,6 @@
zabbix_export:
- version: '6.2'
- date: '2022-04-06T20:01:42Z'
+ version: '6.0'
+ date: '2022-04-08T09:22:54Z'
groups:
-
uuid: 846977d1dfed4968bc5f8bdb363285bc
@@ -343,7 +343,7 @@ zabbix_export:
name: 'has been restarted'
event_name: '{HOST.NAME} has been restarted (uptime < 10m)'
priority: WARNING
- description: 'Uptime is less than 10 minutes'
+ description: 'Uptime is less than 10 minutes.'
manual_close: 'YES'
dependencies:
-
@@ -972,7 +972,7 @@ zabbix_export:
uuid: 597ea2f6059746c0b2e5b7312f764224
expression: |
last(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Windows SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Windows SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Windows SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is critically low'
event_name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -980,7 +980,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 5G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
tags:
@@ -994,7 +994,7 @@ zabbix_export:
uuid: 028b24edaf9c4640a2316845f50a4a7e
expression: |
last(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} and
- ((last(/Windows SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Windows SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<10G or timeleft(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Windows SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Windows SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"} or timeleft(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
name: '{#FSNAME}: Disk space is low'
event_name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
opdata: 'Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})'
@@ -1002,7 +1002,7 @@ zabbix_export:
description: |
Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.
Second condition should be one of the following:
- - The disk free space is less than 10G.
+ - The disk free space is less than {$VFS.FS.FREE.MIN.WARN:"{#FSNAME}"}.
- The disk will be full in less than 24 hours.
manual_close: 'YES'
dependencies:
@@ -1010,7 +1010,7 @@ zabbix_export:
name: '{#FSNAME}: Disk space is critically low'
expression: |
last(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and
- ((last(/Windows SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Windows SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<5G or timeleft(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
+ ((last(/Windows SNMP/vfs.fs.total[hrStorageSize.{#SNMPINDEX}])-last(/Windows SNMP/vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Windows SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}],1h,100)<1d)
tags:
-
tag: scope
@@ -1122,7 +1122,7 @@ zabbix_export:
value_type: FLOAT
units: '%'
params: 'last(//vm.memory.used[hrStorageUsed.{#SNMPINDEX}])/last(//vm.memory.total[hrStorageSize.{#SNMPINDEX}])*100'
- description: 'Memory utilization in %'
+ description: 'Memory utilization in %.'
tags:
-
tag: component
@@ -1244,6 +1244,14 @@ zabbix_export:
macro: '{$SNMP.TIMEOUT}'
value: 5m
-
+ macro: '{$VFS.FS.FREE.MIN.CRIT}'
+ value: 5G
+ description: 'The critical threshold of the filesystem utilization.'
+ -
+ macro: '{$VFS.FS.FREE.MIN.WARN}'
+ value: 10G
+ description: 'The warning threshold of the filesystem utilization.'
+ -
macro: '{$VFS.FS.FSNAME.MATCHES}'
value: .+
description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'