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:
authorMaxim Chudinov <maxim.chudinov@zabbix.com>2022-02-17 13:45:49 +0300
committerMaxim Chudinov <maxim.chudinov@zabbix.com>2022-02-17 13:45:49 +0300
commitd2066079851e8d6100c253251cedd440ad0376e7 (patch)
treeef358ef8a90d0340b26f00b2a745121082c4b7e5 /templates
parentf0c3773d974a803af7284e7b7de6b797574bed7b (diff)
parent0d3dbba58b4ea500f394f5039bfdb6360b669f66 (diff)
.........T [ZBX-20517] moved Brocade,Cisco,Linux,Windows module templates from readme.md files and yaml template to different files into the modules folder
Merge in ZBX/zabbix from feature/ZBX-20517-5.5 to master * commit '0d3dbba58b4ea500f394f5039bfdb6360b669f66': .........T [ZBX-20517] moved Brocade,Cisco,Linux,Windows module templates from readme.md files and yaml template to different files into the modules folder
Diffstat (limited to 'templates')
-rw-r--r--templates/module/brocade_snmp/README.md47
-rw-r--r--templates/module/brocade_snmp/template_module_brocade_snmp.yaml115
-rw-r--r--templates/module/cisco_snmp/README.md302
-rw-r--r--templates/module/cisco_snmp/template_module_cisco_snmp.yaml804
-rw-r--r--templates/module/linux/README.md357
-rw-r--r--templates/module/linux/template_module_linux.yaml2205
-rw-r--r--templates/module/linux_active/README.md357
-rw-r--r--templates/module/linux_active/template_module_linux_active.yaml2259
-rw-r--r--templates/module/linux_snmp_snmp/README.md231
-rw-r--r--templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml1270
-rw-r--r--templates/module/windows_agent/README.md399
-rw-r--r--templates/module/windows_agent/template_module_windows_agent.yaml1904
-rw-r--r--templates/module/windows_agent_active/README.md399
-rw-r--r--templates/module/windows_agent_active/template_module_windows_agent_active.yaml1950
-rw-r--r--templates/net/brocade_foundry_sw_snmp/README.md46
-rw-r--r--templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.yaml111
-rw-r--r--templates/net/cisco/cisco_snmp/README.md301
-rw-r--r--templates/net/cisco/cisco_snmp/template_net_cisco_snmp.yaml800
-rw-r--r--templates/os/linux/README.md356
-rw-r--r--templates/os/linux/template_os_linux.yaml2200
-rw-r--r--templates/os/linux_active/README.md356
-rw-r--r--templates/os/linux_active/template_os_linux_active.yaml2254
-rw-r--r--templates/os/linux_snmp_snmp/README.md230
-rw-r--r--templates/os/linux_snmp_snmp/template_os_linux_snmp_snmp.yaml1265
-rw-r--r--templates/os/windows_agent/README.md398
-rw-r--r--templates/os/windows_agent/template_os_windows_agent.yaml1899
-rw-r--r--templates/os/windows_agent_active/README.md402
-rw-r--r--templates/os/windows_agent_active/template_os_windows_agent_active.yaml1957
28 files changed, 12614 insertions, 12560 deletions
diff --git a/templates/module/brocade_snmp/README.md b/templates/module/brocade_snmp/README.md
new file mode 100644
index 00000000000..d739d6649bd
--- /dev/null
+++ b/templates/module/brocade_snmp/README.md
@@ -0,0 +1,47 @@
+
+# Brocade_Foundry Performance SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The statistics collection of 1 minute CPU utilization.</p> |SNMP |system.cpu.util[snAgGblCpuUtil1MinAvg.0] |
+|Memory |Memory utilization |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The system dynamic memory utilization, in unit of percentage.</p><p>Deprecated: Refer to snAgSystemDRAMUtil.</p><p>For NI platforms, refer to snAgentBrdMemoryUtil100thPercent.</p> |SNMP |vm.memory.util[snAgGblDynMemUtil.0] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Brocade_Foundry Performance SNMP/system.cpu.util[snAgGblCpuUtil1MinAvg.0],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Brocade_Foundry Performance SNMP/vm.memory.util[snAgGblDynMemUtil.0],5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/module/brocade_snmp/template_module_brocade_snmp.yaml b/templates/module/brocade_snmp/template_module_brocade_snmp.yaml
new file mode 100644
index 00000000000..d8564057174
--- /dev/null
+++ b/templates/module/brocade_snmp/template_module_brocade_snmp.yaml
@@ -0,0 +1,115 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T07:23:55Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: c55052212c774e3fbab00343050b3db5
+ template: 'Brocade_Foundry Performance SNMP'
+ name: 'Brocade_Foundry Performance SNMP'
+ description: |
+ Template Module Brocade_Foundry Performance
+
+ MIBs used:
+ FOUNDRY-SN-AGENT-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: b2bda926f1864eb893c53ef0c6cad2a2
+ name: 'CPU utilization'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.1991.1.1.2.1.52.0
+ key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: FOUNDRY-SN-AGENT-MIB
+ The statistics collection of 1 minute CPU utilization.
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 7b068eb5d43846d987148f38f66b1f1a
+ expression: 'min(/Brocade_Foundry Performance SNMP/system.cpu.util[snAgGblCpuUtil1MinAvg.0],5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: e357f3d53b9a48a087e140b94b3aff1d
+ name: 'Memory utilization'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.1991.1.1.2.1.53.0
+ key: 'vm.memory.util[snAgGblDynMemUtil.0]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: FOUNDRY-SN-AGENT-MIB
+ The system dynamic memory utilization, in unit of percentage.
+ Deprecated: Refer to snAgSystemDRAMUtil.
+ For NI platforms, refer to snAgentBrdMemoryUtil100thPercent.
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 929046c4439741a9aa3ab00933322a86
+ expression: 'min(/Brocade_Foundry Performance SNMP/vm.memory.util[snAgGblDynMemUtil.0],5m)>{$MEMORY.UTIL.MAX}'
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ graphs:
+ -
+ uuid: ed536efa5baa4d5ca8ee1af4fc813e72
+ name: 'CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Brocade_Foundry Performance SNMP'
+ key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
+ -
+ uuid: 8e5d8b8e81d2473c99df3d7ad5c147c3
+ name: 'Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Brocade_Foundry Performance SNMP'
+ key: 'vm.memory.util[snAgGblDynMemUtil.0]'
diff --git a/templates/module/cisco_snmp/README.md b/templates/module/cisco_snmp/README.md
new file mode 100644
index 00000000000..873a3f54424
--- /dev/null
+++ b/templates/module/cisco_snmp/README.md
@@ -0,0 +1,302 @@
+
+# Cisco CISCO-MEMORY-POOL-MIB SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Memory Discovery |<p>Discovery of ciscoMemoryPoolTable, a table of memory pool monitoring entries.</p><p>http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html</p> |SNMP |memory.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Memory |{#SNMPVALUE}: Used memory |<p>MIB: CISCO-MEMORY-POOL-MIB</p><p>Indicates the number of bytes from the memory pool that are currently in use by applications on the managed device.</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html</p> |SNMP |vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}] |
+|Memory |{#SNMPVALUE}: Free memory |<p>MIB: CISCO-MEMORY-POOL-MIB</p><p>Indicates the number of bytes from the memory pool that are currently unused on the managed device. Note that the sum of ciscoMemoryPoolUsed and ciscoMemoryPoolFree is the total amount of memory in the pool</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html</p> |SNMP |vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}] |
+|Memory |{#SNMPVALUE}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[vm.memory.util.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}])/(last(//vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}])+last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]))*100` |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Cisco CISCO-MEMORY-POOL-MIB SNMP/vm.memory.util[vm.memory.util.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Cisco CISCO-PROCESS-MIB SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU Discovery |<p>If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,</p><p>indexed with cpmCPUTotalIndex.</p><p>This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,</p><p>like different CPU chips, group of CPUs, or CPUs in different modules/cards.</p><p>In case of a single CPU, cpmCPUTotalTable has only one entry.</p> |SNMP |cpu.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |#{#SNMPINDEX}: CPU utilization |<p>MIB: CISCO-PROCESS-MIB</p><p>The cpmCPUTotal5minRev MIB object provides a more accurate view of the performance of the router over time than the MIB objects cpmCPUTotal1minRev and cpmCPUTotal5secRev . These MIB objects are not accurate because they look at CPU at one minute and five second intervals, respectively. These MIBs enable you to monitor the trends and plan the capacity of your network. The recommended baseline rising threshold for cpmCPUTotal5minRev is 90 percent. Depending on the platform, some routers that run at 90 percent, for example, 2500s, can exhibit performance degradation versus a high-end router, for example, the 7500 series, which can operate fine.</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html</p> |SNMP |system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|#{#SNMPINDEX}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Cisco CISCO-PROCESS-MIB SNMP/system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU Discovery |<p>If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,</p><p>indexed with cpmCPUTotalIndex.</p><p>This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,</p><p>like different CPU chips, group of CPUs, or CPUs in different modules/cards.</p><p>In case of a single CPU, cpmCPUTotalTable has only one entry.</p> |SNMP |cpu.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |{#SNMPVALUE}: CPU utilization |<p>MIB: CISCO-PROCESS-MIB</p><p>The overall CPU busy percentage in the last 5 minute</p><p>period. This object deprecates the avgBusy5 object from</p><p>the OLD-CISCO-SYSTEM-MIB. This object is deprecated</p><p>by cpmCPUTotal5minRev which has the changed range</p><p>of value (0..100).</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html</p> |SNMP |system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#SNMPVALUE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP/system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Cisco OLD-CISCO-CPU-MIB SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: OLD-CISCO-CPU-MIB</p><p>5 minute exponentially-decayed moving average of the CPU busy percentage.</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html</p> |SNMP |system.cpu.util[avgBusy5] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Cisco OLD-CISCO-CPU-MIB SNMP/system.cpu.util[avgBusy5],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Cisco Inventory SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Entity Serial Numbers Discovery |<p>-</p> |SNMP |entity_sn.discovery<p>**Filter**:</p>AND <p>- {#ENT_SN} MATCHES_REGEX `.+`</p><p>- {#ENT_CLASS} MATCHES_REGEX `^3$`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Inventory |Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware serial number |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Operating system |<p>MIB: SNMPv2-MIB</p> |SNMP |system.sw.os[sysDescr.0]<p>**Preprocessing**:</p><p>- REGEX: `Version (.+), RELEASE \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`last(/Cisco Inventory SNMP/system.hw.serialnumber,#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber,#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber))>0` |INFO |<p>Manual close: YES</p> |
+|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#1)<>last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#2) and length(last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0]))>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]))>0` |INFO |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Cisco CISCO-ENVMON-MIB SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$FAN_CRIT_STATUS:"critical"} |<p>-</p> |`3` |
+|{$FAN_CRIT_STATUS:"shutdown"} |<p>-</p> |`4` |
+|{$FAN_WARN_STATUS:"notFunctioning"} |<p>-</p> |`6` |
+|{$FAN_WARN_STATUS:"warning"} |<p>-</p> |`2` |
+|{$PSU_CRIT_STATUS:"critical"} |<p>-</p> |`3` |
+|{$PSU_CRIT_STATUS:"shutdown"} |<p>-</p> |`4` |
+|{$PSU_WARN_STATUS:"notFunctioning"} |<p>-</p> |`6` |
+|{$PSU_WARN_STATUS:"warning"} |<p>-</p> |`2` |
+|{$TEMP_CRIT:"CPU"} |<p>-</p> |`75` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT_STATUS} |<p>-</p> |`3` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_DISASTER_STATUS} |<p>-</p> |`4` |
+|{$TEMP_WARN:"CPU"} |<p>-</p> |`70` |
+|{$TEMP_WARN_STATUS} |<p>-</p> |`2` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|FAN Discovery |<p>The table of fan status maintained by the environmental monitor.</p> |SNMP |fan.discovery |
+|PSU Discovery |<p>The table of power supply status maintained by the environmental monitor card.</p> |SNMP |psu.discovery |
+|Temperature Discovery |<p>Discovery of ciscoEnvMonTemperatureTable (ciscoEnvMonTemperatureDescr), a table of ambient temperature status</p><p>maintained by the environmental monitor.</p> |SNMP |temperature.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Fans |{#SENSOR_INFO}: Fan status |<p>MIB: CISCO-ENVMON-MIB</p> |SNMP |sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}] |
+|Power supply |{#SENSOR_INFO}: Power supply status |<p>MIB: CISCO-ENVMON-MIB</p> |SNMP |sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}] |
+|Temperature |{#SNMPVALUE}: Temperature |<p>MIB: CISCO-ENVMON-MIB</p><p>The current measurement of the test point being instrumented.</p> |SNMP |sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}] |
+|Temperature |{#SNMPVALUE}: Temperature status |<p>MIB: CISCO-ENVMON-MIB</p><p>The current state of the test point being instrumented.</p> |SNMP |sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#SENSOR_INFO}: Fan is in critical state |<p>Please check the fan unit</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"shutdown\"}")=1` |AVERAGE | |
+|{#SENSOR_INFO}: Fan is in warning state |<p>Please check the fan unit</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"notFunctioning\"}")=1` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Fan is in critical state</p> |
+|{#SENSOR_INFO}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"shutdown\"}")=1` |AVERAGE | |
+|{#SENSOR_INFO}: Power supply is in warning state |<p>Please check the power supply unit for errors</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"notFunctioning\"}")=1` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Power supply is in critical state</p> |
+|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"} or last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS} `<p>Recovery expression:</p>`max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3` |WARNING |<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}</p> |
+|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"} or last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS} or last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_DISASTER_STATUS} `<p>Recovery expression:</p>`max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3` |HIGH | |
+|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"} |<p>-</p> |`avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}`<p>Recovery expression:</p>`min(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/module/cisco_snmp/template_module_cisco_snmp.yaml b/templates/module/cisco_snmp/template_module_cisco_snmp.yaml
new file mode 100644
index 00000000000..2cbd0a01389
--- /dev/null
+++ b/templates/module/cisco_snmp/template_module_cisco_snmp.yaml
@@ -0,0 +1,804 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T10:32:49Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: 51af5cf9312b41d38ab22e02c9af6bbc
+ template: 'Cisco CISCO-ENVMON-MIB SNMP'
+ name: 'Cisco CISCO-ENVMON-MIB SNMP'
+ description: |
+ Template Cisco CISCO-ENVMON-MIB
+
+ MIBs used:
+ CISCO-ENVMON-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 31e5f90d88574fa0a35664e2c6b51e98
+ name: 'FAN Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SENSOR_INFO},1.3.6.1.4.1.9.9.13.1.4.1.2]'
+ key: fan.discovery
+ delay: 1h
+ description: 'The table of fan status maintained by the environmental monitor.'
+ item_prototypes:
+ -
+ uuid: 62a05225a1634d7486fab92cf100544e
+ name: '{#SENSOR_INFO}: Fan status'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.13.1.4.1.3.{#SNMPINDEX}'
+ key: 'sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}]'
+ delay: 3m
+ history: 2w
+ trends: 0d
+ description: 'MIB: CISCO-ENVMON-MIB'
+ valuemap:
+ name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
+ tags:
+ -
+ tag: component
+ value: fan
+ trigger_prototypes:
+ -
+ uuid: a9f5e9e2a65143298910e354e832bf2f
+ expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"shutdown\"}")=1'
+ name: '{#SENSOR_INFO}: Fan is in critical state'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: 'Please check the fan unit'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 58cf2c24afd74e5cb048557e8e52138e
+ expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"notFunctioning\"}")=1'
+ name: '{#SENSOR_INFO}: Fan is in warning state'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'Please check the fan unit'
+ dependencies:
+ -
+ name: '{#SENSOR_INFO}: Fan is in critical state'
+ expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"shutdown\"}")=1'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 932817396a5b47f29af28e439711ef59
+ name: 'PSU Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SENSOR_INFO},1.3.6.1.4.1.9.9.13.1.5.1.2]'
+ key: psu.discovery
+ delay: 1h
+ description: 'The table of power supply status maintained by the environmental monitor card.'
+ item_prototypes:
+ -
+ uuid: d500235d63ca41888585d267a7d82e2a
+ name: '{#SENSOR_INFO}: Power supply status'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.13.1.5.1.3.{#SNMPINDEX}'
+ key: 'sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}]'
+ delay: 3m
+ history: 2w
+ trends: 0d
+ description: 'MIB: CISCO-ENVMON-MIB'
+ valuemap:
+ name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
+ tags:
+ -
+ tag: component
+ value: power
+ trigger_prototypes:
+ -
+ uuid: 5796e1e85ea949d0b86ce83f5daae958
+ expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"shutdown\"}")=1'
+ name: '{#SENSOR_INFO}: Power supply is in critical state'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: 'Please check the power supply unit for errors'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 93892fed243f4f0b8c26ab67fa6e1800
+ expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"notFunctioning\"}")=1'
+ name: '{#SENSOR_INFO}: Power supply is in warning state'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'Please check the power supply unit for errors'
+ dependencies:
+ -
+ name: '{#SENSOR_INFO}: Power supply is in critical state'
+ expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"shutdown\"}")=1'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: e61bb682818b4f31a669acd31335160c
+ name: 'Temperature Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.13.1.3.1.2]'
+ key: temperature.discovery
+ delay: 1h
+ description: |
+ Discovery of ciscoEnvMonTemperatureTable (ciscoEnvMonTemperatureDescr), a table of ambient temperature status
+ maintained by the environmental monitor.
+ item_prototypes:
+ -
+ uuid: 72f0970a636d44278b75f30a1dabfeb8
+ name: '{#SNMPVALUE}: Temperature status'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.13.1.3.1.6.{#SNMPINDEX}'
+ key: 'sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}]'
+ delay: 3m
+ history: 2w
+ trends: 0d
+ description: |
+ MIB: CISCO-ENVMON-MIB
+ The current state of the test point being instrumented.
+ valuemap:
+ name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
+ tags:
+ -
+ tag: component
+ value: temperature
+ -
+ uuid: 4859221e53d7485485db1c9060d7f705
+ name: '{#SNMPVALUE}: Temperature'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.13.1.3.1.3.{#SNMPINDEX}'
+ key: 'sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}]'
+ delay: 3m
+ value_type: FLOAT
+ units: °C
+ description: |
+ MIB: CISCO-ENVMON-MIB
+ The current measurement of the test point being instrumented.
+ tags:
+ -
+ tag: component
+ value: temperature
+ trigger_prototypes:
+ -
+ uuid: 2bb01154728b47c69514f7399f3bfabc
+ expression: 'avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'min(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3'
+ name: '{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ trigger_prototypes:
+ -
+ uuid: f356f7fbc2de423db3bac09bc4683ae2
+ expression: |
+ avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}
+ or
+ last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS}
+ or
+ last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_DISASTER_STATUS}
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
+ name: '{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: HIGH
+ description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 2c151dd93b7f4096b9eb6c73c315ffec
+ expression: |
+ avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}
+ or
+ last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3'
+ name: '{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"}'
+ opdata: 'Current value: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
+ dependencies:
+ -
+ name: '{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
+ expression: |
+ avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}
+ or
+ last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS}
+ or
+ last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_DISASTER_STATUS}
+ recovery_expression: 'max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$FAN_CRIT_STATUS:"critical"}'
+ value: '3'
+ -
+ macro: '{$FAN_CRIT_STATUS:"shutdown"}'
+ value: '4'
+ -
+ macro: '{$FAN_WARN_STATUS:"notFunctioning"}'
+ value: '6'
+ -
+ macro: '{$FAN_WARN_STATUS:"warning"}'
+ value: '2'
+ -
+ macro: '{$PSU_CRIT_STATUS:"critical"}'
+ value: '3'
+ -
+ macro: '{$PSU_CRIT_STATUS:"shutdown"}'
+ value: '4'
+ -
+ macro: '{$PSU_WARN_STATUS:"notFunctioning"}'
+ value: '6'
+ -
+ macro: '{$PSU_WARN_STATUS:"warning"}'
+ value: '2'
+ -
+ macro: '{$TEMP_CRIT}'
+ value: '60'
+ -
+ macro: '{$TEMP_CRIT:"CPU"}'
+ value: '75'
+ -
+ macro: '{$TEMP_CRIT_LOW}'
+ value: '5'
+ -
+ macro: '{$TEMP_CRIT_STATUS}'
+ value: '3'
+ -
+ macro: '{$TEMP_DISASTER_STATUS}'
+ value: '4'
+ -
+ macro: '{$TEMP_WARN}'
+ value: '50'
+ -
+ macro: '{$TEMP_WARN:"CPU"}'
+ value: '70'
+ -
+ macro: '{$TEMP_WARN_STATUS}'
+ value: '2'
+ valuemaps:
+ -
+ uuid: 96da9a43fa60420696714c57d3e72f13
+ name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
+ mappings:
+ -
+ value: '1'
+ newvalue: normal
+ -
+ value: '2'
+ newvalue: warning
+ -
+ value: '3'
+ newvalue: critical
+ -
+ value: '4'
+ newvalue: shutdown
+ -
+ value: '5'
+ newvalue: notPresent
+ -
+ value: '6'
+ newvalue: notFunctioning
+ -
+ uuid: d7c122cde75447248d4b1613cdc25d5b
+ template: 'Cisco CISCO-MEMORY-POOL-MIB SNMP'
+ name: 'Cisco CISCO-MEMORY-POOL-MIB SNMP'
+ description: |
+ Template Cisco CISCO-MEMORY-POOL-MIB
+
+ MIBs used:
+ CISCO-MEMORY-POOL-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: d84cfe9db46d49c8971317f7e09d9537
+ name: 'Memory Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.48.1.1.1.2]'
+ key: memory.discovery
+ delay: 1h
+ description: |
+ Discovery of ciscoMemoryPoolTable, a table of memory pool monitoring entries.
+ http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html
+ item_prototypes:
+ -
+ uuid: a88a818dfdf743408698d7a45bc29edc
+ name: '{#SNMPVALUE}: Free memory'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.48.1.1.1.6.{#SNMPINDEX}'
+ key: 'vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}]'
+ history: 7d
+ units: B
+ description: |
+ MIB: CISCO-MEMORY-POOL-MIB
+ Indicates the number of bytes from the memory pool that are currently unused on the managed device. Note that the sum of ciscoMemoryPoolUsed and ciscoMemoryPoolFree is the total amount of memory in the pool
+ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 32d6bbb06c624f9e9a236fb53507948c
+ name: '{#SNMPVALUE}: Used memory'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.48.1.1.1.5.{#SNMPINDEX}'
+ key: 'vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]'
+ history: 7d
+ units: B
+ description: |
+ MIB: CISCO-MEMORY-POOL-MIB
+ Indicates the number of bytes from the memory pool that are currently in use by applications on the managed device.
+ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 5065203cb8244befadc54cdb004d4b40
+ name: '{#SNMPVALUE}: Memory utilization'
+ type: CALCULATED
+ key: 'vm.memory.util[vm.memory.util.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ params: 'last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}])/(last(//vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}])+last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]))*100'
+ description: 'Memory utilization in %'
+ tags:
+ -
+ tag: component
+ value: memory
+ trigger_prototypes:
+ -
+ uuid: 74c44bdc890f467cb1a8cdc175a54a76
+ expression: 'min(/Cisco CISCO-MEMORY-POOL-MIB SNMP/vm.memory.util[vm.memory.util.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}'
+ name: '{#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 754f4378d0fb43c288e891285efee8a5
+ name: '{#SNMPVALUE}: Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Cisco CISCO-MEMORY-POOL-MIB SNMP'
+ key: 'vm.memory.util[vm.memory.util.{#SNMPINDEX}]'
+ macros:
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ -
+ uuid: 3eadb8a2ad4a479cb59bfa6402deee3f
+ template: 'Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP'
+ name: 'Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP'
+ description: |
+ Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5
+
+ MIBs used:
+ CISCO-PROCESS-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 372b5656330f41d18ccf99ca89fa8504
+ name: 'CPU Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.109.1.1.1.1.5]'
+ key: cpu.discovery
+ delay: 1h
+ description: |
+ If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,
+ indexed with cpmCPUTotalIndex.
+ This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,
+ like different CPU chips, group of CPUs, or CPUs in different modules/cards.
+ In case of a single CPU, cpmCPUTotalTable has only one entry.
+ item_prototypes:
+ -
+ uuid: b7a375f679024cb990ae97933e5f77d6
+ name: '{#SNMPVALUE}: CPU utilization'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.109.1.1.1.1.5.{#SNMPINDEX}'
+ key: 'system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}]'
+ delay: 5m
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: CISCO-PROCESS-MIB
+ The overall CPU busy percentage in the last 5 minute
+ period. This object deprecates the avgBusy5 object from
+ the OLD-CISCO-SYSTEM-MIB. This object is deprecated
+ by cpmCPUTotal5minRev which has the changed range
+ of value (0..100).
+ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html
+ tags:
+ -
+ tag: component
+ value: cpu
+ trigger_prototypes:
+ -
+ uuid: be863abc1e3440a9bd35c4db77f83961
+ expression: 'min(/Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP/system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
+ name: '{#SNMPVALUE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 8e045ff24e564afc9a55d4bd08529d22
+ name: '{#SNMPVALUE}: CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP'
+ key: 'system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}]'
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ -
+ uuid: f934f5e71db642c689ed2f945f73ce6c
+ template: 'Cisco CISCO-PROCESS-MIB SNMP'
+ name: 'Cisco CISCO-PROCESS-MIB SNMP'
+ description: |
+ Template Cisco CISCO-PROCESS-MIB
+
+ MIBs used:
+ CISCO-PROCESS-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: dc4773499a1d419caa5c2c96bd4afb7b
+ name: 'CPU Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.109.1.1.1.1.5]'
+ key: cpu.discovery
+ delay: 1h
+ description: |
+ If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,
+ indexed with cpmCPUTotalIndex.
+ This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,
+ like different CPU chips, group of CPUs, or CPUs in different modules/cards.
+ In case of a single CPU, cpmCPUTotalTable has only one entry.
+ item_prototypes:
+ -
+ uuid: 884048f6fc414188b58341ecaca9aea3
+ name: '#{#SNMPINDEX}: CPU utilization'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.9.9.109.1.1.1.1.8.{#SNMPINDEX}'
+ key: 'system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}]'
+ delay: 5m
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: CISCO-PROCESS-MIB
+ The cpmCPUTotal5minRev MIB object provides a more accurate view of the performance of the router over time than the MIB objects cpmCPUTotal1minRev and cpmCPUTotal5secRev . These MIB objects are not accurate because they look at CPU at one minute and five second intervals, respectively. These MIBs enable you to monitor the trends and plan the capacity of your network. The recommended baseline rising threshold for cpmCPUTotal5minRev is 90 percent. Depending on the platform, some routers that run at 90 percent, for example, 2500s, can exhibit performance degradation versus a high-end router, for example, the 7500 series, which can operate fine.
+ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html
+ tags:
+ -
+ tag: component
+ value: cpu
+ trigger_prototypes:
+ -
+ uuid: 52d3b9d4d52e4f289221f4b5ade177d7
+ expression: 'min(/Cisco CISCO-PROCESS-MIB SNMP/system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
+ name: '#{#SNMPINDEX}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 6fed03a2555949178f96550fcdb449ca
+ name: '#{#SNMPINDEX}: CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Cisco CISCO-PROCESS-MIB SNMP'
+ key: 'system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}]'
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ -
+ uuid: 90c99055648f40df8517005a7670158c
+ template: 'Cisco Inventory SNMP'
+ name: 'Cisco Inventory SNMP'
+ description: |
+ Template Cisco Inventory
+
+ MIBs used:
+ ENTITY-MIB
+ SNMPv2-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: edb172996a954eb986c97bcfee052a36
+ name: 'Hardware model name'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.2.1.47.1.1.1.1.13.1
+ key: system.hw.model
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'MIB: ENTITY-MIB'
+ inventory_link: MODEL
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 3b54e3692fe643e99704767f9a58a1c2
+ name: 'Hardware serial number'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.2.1.47.1.1.1.1.11.1
+ key: system.hw.serialnumber
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'MIB: ENTITY-MIB'
+ inventory_link: SERIALNO_A
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 4100a7125272484c81c4f599eff82793
+ expression: 'last(/Cisco Inventory SNMP/system.hw.serialnumber,#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber,#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber))>0'
+ name: 'Device has been replaced (new serial number received)'
+ priority: INFO
+ description: 'Device serial number has changed. Ack to close'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 51b1c178adff415bbe36a4363d6e06c1
+ name: 'Operating system'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.2.1.1.1.0
+ key: 'system.sw.os[sysDescr.0]'
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'MIB: SNMPv2-MIB'
+ inventory_link: OS
+ preprocessing:
+ -
+ type: REGEX
+ parameters:
+ - 'Version (.+), RELEASE'
+ - \1
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ triggers:
+ -
+ uuid: e417e0edd4eb417d99816dd9cf4f20e9
+ expression: 'last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#1)<>last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#2) and length(last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0]))>0'
+ name: 'Operating system description has changed'
+ priority: INFO
+ description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ discovery_rules:
+ -
+ uuid: 0908cfd197214f6c8092bbd426ef83bf
+ name: 'Entity Serial Numbers Discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#ENT_CLASS},1.3.6.1.2.1.47.1.1.1.1.5,{#ENT_NAME},1.3.6.1.2.1.47.1.1.1.1.7,{#ENT_SN},1.3.6.1.2.1.47.1.1.1.1.11]'
+ key: entity_sn.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#ENT_SN}'
+ value: .+
+ formulaid: B
+ -
+ macro: '{#ENT_CLASS}'
+ value: ^3$
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: 3a6277e70ce6448b857bfc170ded8542
+ name: '{#ENT_NAME}: Hardware serial number'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}'
+ key: 'system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]'
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'MIB: ENTITY-MIB'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ trigger_prototypes:
+ -
+ uuid: ff15aaac7c4947b6a07a38dec4d1466d
+ expression: 'last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]))>0'
+ name: '{#ENT_NAME}: Device has been replaced (new serial number received)'
+ priority: INFO
+ description: 'Device serial number has changed. Ack to close'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 1b0025aaf71f47ec91d08c17a399c6a6
+ template: 'Cisco OLD-CISCO-CPU-MIB SNMP'
+ name: 'Cisco OLD-CISCO-CPU-MIB SNMP'
+ description: |
+ Template Cisco OLD-CISCO-CPU-MIB
+
+ MIBs used:
+ OLD-CISCO-CPU-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 1b8784537cc04a939b8ceb26a5d3b5a1
+ name: 'CPU utilization'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.9.2.1.58
+ key: 'system.cpu.util[avgBusy5]'
+ delay: 5m
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: OLD-CISCO-CPU-MIB
+ 5 minute exponentially-decayed moving average of the CPU busy percentage.
+ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 0833b9a8f2ba4c009ca038cc409236d8
+ expression: 'min(/Cisco OLD-CISCO-CPU-MIB SNMP/system.cpu.util[avgBusy5],5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ graphs:
+ -
+ uuid: c998de5517bd45f19719dbe7d6cb371e
+ name: 'CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Cisco OLD-CISCO-CPU-MIB SNMP'
+ key: 'system.cpu.util[avgBusy5]'
diff --git a/templates/module/linux/README.md b/templates/module/linux/README.md
new file mode 100644
index 00000000000..3703f1ea92a
--- /dev/null
+++ b/templates/module/linux/README.md
@@ -0,0 +1,357 @@
+
+# Linux CPU by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$LOAD_AVG_PER_CPU.MAX.WARN} |<p>Load per CPU considered sustainable. Tune if needed.</p> |`1.5` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |Number of CPUs |<p>-</p> |ZABBIX_PASSIVE |system.cpu.num<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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 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] |
+|CPU |CPU nice time |<p>The time the CPU has spent running users' processes that have been niced.</p> |ZABBIX_PASSIVE |system.cpu.util[,nice] |
+|CPU |CPU iowait time |<p>Amount of time the CPU has been waiting for I/O to complete.</p> |ZABBIX_PASSIVE |system.cpu.util[,iowait] |
+|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 |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> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m) |<p>Per CPU load average is too high. Your system may be slow to respond.</p> |`min(/Linux CPU by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg5])>0 and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg15])>0` |AVERAGE | |
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Linux CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING |<p>**Depends on**:</p><p>- Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux filesystems by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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)$` |
+|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^\s$` |
+|{$VFS.FS.INODE.PFREE.MIN.CRIT} |<p>-</p> |`10` |
+|{$VFS.FS.INODE.PFREE.MIN.WARN} |<p>-</p> |`20` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_PASSIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Filesystems |{#FSNAME}: Used space |<p>Used storage in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},used] |
+|Filesystems |{#FSNAME}: Total space |<p>Total space in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},total] |
+|Filesystems |{#FSNAME}: Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},pused] |
+|Filesystems |{#FSNAME}: Free inodes in % |<p>-</p> |ZABBIX_PASSIVE |vfs.fs.inode[{#FSNAME},pfree] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
+|{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
+|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}` |AVERAGE | |
+|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}` |WARNING |<p>**Depends on**:</p><p>- {#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux memory by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$MEMORY.AVAILABLE.MIN} |<p>This macro is used as a threshold in memory available trigger.</p> |`20M` |
+|{$MEMORY.UTIL.MAX} |<p>This macro is used as a threshold in memory utilization trigger.</p> |`90` |
+|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|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 |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] |
+|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |ZABBIX_PASSIVE |system.swap.size[,pfree] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Linux memory by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE |<p>**Depends on**:</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
+|Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2}) |<p>-</p> |`max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0` |AVERAGE | |
+|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`max(/Linux memory by Zabbix agent/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux block devices by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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.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` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Block devices discovery |<p>-</p> |ZABBIX_PASSIVE |vfs.dev.discovery<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#DEVTYPE} MATCHES_REGEX `disk`</p><p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Storage |{#DEVNAME}: Disk read rate |<p>r/s. The number (after merges) of read requests completed per second for the device.</p> |DEPENDENT |vfs.dev.read.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[0]`</p><p>- CHANGE_PER_SECOND</p> |
+|Storage |{#DEVNAME}: Disk write rate |<p>w/s. The number (after merges) of write requests completed per second for the device.</p> |DEPENDENT |vfs.dev.write.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[4]`</p><p>- CHANGE_PER_SECOND</p> |
+|Storage |{#DEVNAME}: Disk read request avg waiting time (r_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.read.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)` |
+|Storage |{#DEVNAME}: Disk write request avg waiting time (w_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.write.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)` |
+|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |DEPENDENT |vfs.dev.queue_size[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[10]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
+|Storage |{#DEVNAME}: Disk utilization |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.</p> |DEPENDENT |vfs.dev.util[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[9]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.1`</p> |
+|Zabbix raw items |{#DEVNAME}: Get stats |<p>Get contents of /sys/block/{#DEVNAME}/stat for disk stats.</p> |ZABBIX_PASSIVE |vfs.file.contents[/sys/block/{#DEVNAME}/stat]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return JSON.stringify(value.trim().split(/ +/));`</p> |
+|Zabbix raw items |{#DEVNAME}: Disk read time (rate) |<p>Rate of total read time counter. Used in r_await calculation</p> |DEPENDENT |vfs.dev.read.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[3]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
+|Zabbix raw items |{#DEVNAME}: Disk write time (rate) |<p>Rate of total write time counter. Used in w_await calculation</p> |DEPENDENT |vfs.dev.write.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[7]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Linux block devices by Zabbix agent/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux network interfaces by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
+|{$IF.UTIL.MAX} |<p>This macro is used as a threshold in interface utilization trigger.</p> |`90` |
+|{$IFCONTROL} |<p>-</p> |`1` |
+|{$NET.IF.IFNAME.MATCHES} |<p>-</p> |`^.*$` |
+|{$NET.IF.IFNAME.NOT_MATCHES} |<p>Filter out loopbacks, nulls, docker veth links and docker0 bridge by default</p> |`(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Network interface discovery |<p>Discovery of network interfaces.</p> |ZABBIX_PASSIVE |net.if.discovery<p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Network interfaces |Interface {#IFNAME}: Bits received |<p>-</p> |ZABBIX_PASSIVE |net.if.in["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}: Bits sent |<p>-</p> |ZABBIX_PASSIVE |net.if.out["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}: Outbound packets with errors |<p>-</p> |ZABBIX_PASSIVE |net.if.out["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Inbound packets with errors |<p>-</p> |ZABBIX_PASSIVE |net.if.in["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Outbound packets discarded |<p>-</p> |ZABBIX_PASSIVE |net.if.out["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Inbound packets discarded |<p>-</p> |ZABBIX_PASSIVE |net.if.in["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Operational status |<p>Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt</p> |ZABBIX_PASSIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> |
+|Network interfaces |Interface {#IFNAME}: Interface type |<p>Indicates the interface protocol type as a decimal value.</p><p>See include/uapi/linux/if_arp.h for all possible values.</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_PASSIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/type"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Network interfaces |Interface {#IFNAME}: Speed |<p>Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.</p><p>This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_PASSIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0`<p>Recovery expression:</p>`avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
+|Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}`<p>Recovery expression:</p>`max(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
+|Interface {#IFNAME}: Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))`<p>Recovery expression:</p>`last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
+|Interface {#IFNAME}: Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1) and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2) `<p>Recovery expression:</p>`(change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2) ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux generic by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$KERNEL.MAXFILES.MIN} |<p>-</p> |`256` |
+|{$KERNEL.MAXPROC.MIN} |<p>-</p> |`1024` |
+|{$SYSTEM.FUZZYTIME.MAX} |<p>-</p> |`60` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|General |System boot time |<p>-</p> |ZABBIX_PASSIVE |system.boottime<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+|General |System local time |<p>System local time of the host.</p> |ZABBIX_PASSIVE |system.localtime |
+|General |System name |<p>System host name.</p> |ZABBIX_PASSIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|General |System description |<p>The information as normally returned by 'uname -a'.</p> |ZABBIX_PASSIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|General |Number of logged in users |<p>Number of users who are currently logged in.</p> |ZABBIX_PASSIVE |system.users.num |
+|General |Maximum number of open file descriptors |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_PASSIVE |kernel.maxfiles<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|General |Maximum number of processes |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_PASSIVE |kernel.maxproc<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|General |Number of processes |<p>-</p> |ZABBIX_PASSIVE |proc.num |
+|General |Number of running processes |<p>-</p> |ZABBIX_PASSIVE |proc.num[,,run] |
+|Inventory |Operating system |<p>-</p> |ZABBIX_PASSIVE |system.sw.os<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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> |
+|Inventory |Software installed |<p>-</p> |ZABBIX_PASSIVE |system.sw.packages<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Security |Checksum of /etc/passwd |<p>-</p> |ZABBIX_PASSIVE |vfs.file.cksum[/etc/passwd,sha256]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+|Status |System uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_PASSIVE |system.uptime |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Linux generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
+|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
+|Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}` |INFO | |
+|Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}` |INFO |<p>**Depends on**:</p><p>- Getting closer to process limit (over 80% used)</p> |
+|Getting closer to process limit (over 80% used) |<p>-</p> |`last(/Linux generic by Zabbix agent/proc.num)/last(/Linux generic by Zabbix agent/kernel.maxproc)*100>80` |WARNING | |
+|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`last(/Linux generic by Zabbix agent/system.sw.os,#1)<>last(/Linux generic by Zabbix agent/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent/system.sw.os))>0` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
+|/etc/passwd has been changed |<p>-</p> |`last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2)` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Operating system description has changed</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
+|{HOST.NAME} has been restarted (uptime < 10m) |<p>The host uptime is less than 10 minutes</p> |`last(/Linux generic by Zabbix agent/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/module/linux/template_module_linux.yaml b/templates/module/linux/template_module_linux.yaml
new file mode 100644
index 00000000000..de34e2dd13b
--- /dev/null
+++ b/templates/module/linux/template_module_linux.yaml
@@ -0,0 +1,2205 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T08:32:18Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: 45486dbbf5bf49f28866fcb212731cf0
+ template: 'Linux block devices by Zabbix agent'
+ name: 'Linux block devices by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 4f3743bbc7ca4da89f833b72eb9e23b7
+ name: 'Block devices discovery'
+ key: vfs.dev.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#DEVTYPE}'
+ value: disk
+ formulaid: C
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.MATCHES}'
+ formulaid: B
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: 7d0ed5b91e844c5ba5bd31860f4eaee5
+ name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
+ type: DEPENDENT
+ key: 'vfs.dev.queue_size[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[10]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.001'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 92de75ec84994081831753c64c234b41
+ name: '{#DEVNAME}: Disk read request avg waiting time (r_await)'
+ type: CALCULATED
+ key: 'vfs.dev.read.await[{#DEVNAME}]'
+ history: 7d
+ value_type: FLOAT
+ units: '!ms'
+ params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)'
+ description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 8a00f63fdfc844d88941795ff0ca1e8b
+ name: '{#DEVNAME}: Disk read rate'
+ type: DEPENDENT
+ key: 'vfs.dev.read.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '!r/s'
+ description: 'r/s. The number (after merges) of read requests completed per second for the device.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[0]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 9f1253dfd045447fbe4769e00fdf4fc7
+ name: '{#DEVNAME}: Disk read time (rate)'
+ type: DEPENDENT
+ key: 'vfs.dev.read.time.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ description: 'Rate of total read time counter. Used in r_await calculation'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[3]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.001'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 00942e8bc61b423d84479cfc37b3f184
+ name: '{#DEVNAME}: Disk utilization'
+ type: DEPENDENT
+ key: 'vfs.dev.util[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[9]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.1'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 0edcba521a6348629740e5b80034cb28
+ name: '{#DEVNAME}: Disk write request avg waiting time (w_await)'
+ type: CALCULATED
+ key: 'vfs.dev.write.await[{#DEVNAME}]'
+ history: 7d
+ value_type: FLOAT
+ units: '!ms'
+ params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)'
+ description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: c9dcb1acf07441d2b6ea9eb520c96aff
+ name: '{#DEVNAME}: Disk write rate'
+ type: DEPENDENT
+ key: 'vfs.dev.write.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '!w/s'
+ description: 'w/s. The number (after merges) of write requests completed per second for the device.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[4]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 30c2ee8fd86a4d369d4fc0b2c713dec2
+ name: '{#DEVNAME}: Disk write time (rate)'
+ type: DEPENDENT
+ key: 'vfs.dev.write.time.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ description: 'Rate of total write time counter. Used in w_await calculation'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[7]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.001'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: e25a03160e3243b5a33dfd834055b6e4
+ name: '{#DEVNAME}: Get stats'
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Get contents of /sys/block/{#DEVNAME}/stat for disk stats.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return JSON.stringify(value.trim().split(/ +/));'
+ tags:
+ -
+ tag: component
+ value: raw
+ trigger_prototypes:
+ -
+ uuid: 3ac02c78c65f49bdae63669652236b7b
+ expression: 'min(/Linux block devices by Zabbix agent/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
+ name: '{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m)'
+ priority: WARNING
+ description: 'This trigger might indicate disk {#DEVNAME} saturation.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 96ca565847ac46ffb7456fbfa4513922
+ name: '{#DEVNAME}: Disk average waiting time'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux block devices by Zabbix agent'
+ key: 'vfs.dev.read.await[{#DEVNAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices by Zabbix agent'
+ key: 'vfs.dev.write.await[{#DEVNAME}]'
+ -
+ uuid: 15b73630b3224b5a87ef3631dfdfe566
+ name: '{#DEVNAME}: Disk read/write rates'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux block devices by Zabbix agent'
+ key: 'vfs.dev.read.rate[{#DEVNAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices by Zabbix agent'
+ key: 'vfs.dev.write.rate[{#DEVNAME}]'
+ -
+ uuid: 8f7b0b21edeb4bf6b340852a3ace455c
+ name: '{#DEVNAME}: Disk utilization and queue'
+ graph_items:
+ -
+ color: 1A7C11
+ yaxisside: RIGHT
+ item:
+ host: 'Linux block devices by Zabbix agent'
+ key: 'vfs.dev.queue_size[{#DEVNAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices by Zabbix agent'
+ key: 'vfs.dev.util[{#DEVNAME}]'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ macros:
+ -
+ macro: '{$VFS.DEV.DEVNAME.MATCHES}'
+ value: .+
+ description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ 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.DEV.READ.AWAIT.WARN}'
+ value: '20'
+ description: 'Disk read average response time (in ms) before the trigger would fire'
+ -
+ macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
+ value: '20'
+ description: 'Disk write average response time (in ms) before the trigger would fire'
+ -
+ uuid: d4e080814aad467dbf6b95c46b862c28
+ template: 'Linux CPU by Zabbix agent'
+ name: 'Linux CPU by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: c0c12ca155b042b2b5f33d9ced5f1cd2
+ name: 'Interrupts per second'
+ key: system.cpu.intr
+ history: 7d
+ value_type: FLOAT
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 9c7bd054537a449c84959c68850a232b
+ name: 'Load average (1m avg)'
+ key: 'system.cpu.load[all,avg1]'
+ history: 7d
+ value_type: FLOAT
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: dd912665ba1c4934af0bf3cb22cb925c
+ name: 'Load average (5m avg)'
+ key: 'system.cpu.load[all,avg5]'
+ history: 7d
+ value_type: FLOAT
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 9298150efe98434694bc3ef940e4da3f
+ name: 'Load average (15m avg)'
+ key: 'system.cpu.load[all,avg15]'
+ history: 7d
+ value_type: FLOAT
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: a735c884e70349f78c66233047f7afe6
+ name: 'Number of CPUs'
+ key: system.cpu.num
+ history: 7d
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: f3ec31faa3ca4be6a176bc47679d18f7
+ name: 'Context switches per second'
+ key: system.cpu.switches
+ history: 7d
+ value_type: FLOAT
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 57074f87ab8e410ea6b0cb4708ab627e
+ name: 'CPU utilization'
+ type: DEPENDENT
+ key: system.cpu.util
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU utilization in %'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //Calculate utilization
+ return (100 - value)
+ master_item:
+ key: 'system.cpu.util[,idle]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: d6099dae0c3a4252ab2af61104768170
+ expression: 'min(/Linux CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ dependencies:
+ -
+ name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
+ expression: |
+ min(/Linux CPU by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
+ and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg5])>0
+ and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg15])>0
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 8778c8da3e45497584428b512f278fb9
+ name: 'CPU guest time'
+ key: 'system.cpu.util[,guest]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 61e4250a2b0341f684ebc8adb568822f
+ name: 'CPU guest nice time'
+ key: 'system.cpu.util[,guest_nice]'
+ 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)'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 5cb0b9e7dacf4507bd0007e923f8a970
+ name: 'CPU idle time'
+ key: 'system.cpu.util[,idle]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent doing nothing.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 9e9fac69e7b646e2946987bdb3f36103
+ name: 'CPU interrupt time'
+ key: 'system.cpu.util[,interrupt]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The amount of time the CPU has been servicing hardware interrupts.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: c078212326f04fd8878eee4b63e3ef7e
+ name: 'CPU iowait time'
+ key: 'system.cpu.util[,iowait]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Amount of time the CPU has been waiting for I/O to complete.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: ca4c30b1c8a24edea59f6a2d76158f5f
+ name: 'CPU nice time'
+ key: 'system.cpu.util[,nice]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent running users'' processes that have been niced.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 6eab3a98207a4aa397083de9773560d2
+ name: 'CPU softirq time'
+ key: 'system.cpu.util[,softirq]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The amount of time the CPU has been servicing software interrupts.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: d540fcdaaebc47dbbc52f6b92331ae61
+ name: 'CPU steal time'
+ key: 'system.cpu.util[,steal]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The amount of CPU ''stolen'' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: a0e8576ca7cd47a8adf72bfcde1065be
+ name: 'CPU system time'
+ key: 'system.cpu.util[,system]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent running the kernel and its processes.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 3e37c91b2d304a5583f0578b99ec8eec
+ name: 'CPU user time'
+ key: 'system.cpu.util[,user]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent running users'' processes that are not niced.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ -
+ macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}'
+ value: '1.5'
+ description: 'Load per CPU considered sustainable. Tune if needed.'
+ -
+ uuid: fdcdd5810fba49928922a683d32aa76f
+ template: 'Linux filesystems by Zabbix agent'
+ name: 'Linux filesystems by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 1ec7965ad995437da2dc1f94749f3230
+ name: 'Mounted filesystem discovery'
+ key: vfs.fs.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of file systems of different types.'
+ item_prototypes:
+ -
+ uuid: 8d6496b8be814dc885a1efb42823ae4f
+ name: '{#FSNAME}: Free inodes in %'
+ key: 'vfs.fs.inode[{#FSNAME},pfree]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ uuid: 26adf86d6dd741b48007577091d5902c
+ expression: 'min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
+ opdata: 'Free inodes: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ It may become impossible to write to disk if there are no index nodes left.
+ As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 756b0126cc004f8d97f10384a4dc8587
+ expression: 'min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}'
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)'
+ opdata: 'Free inodes: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: |
+ It may become impossible to write to disk if there are no index nodes left.
+ As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
+ dependencies:
+ -
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
+ expression: 'min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: a39947b5a940441a961f685b430cd7e9
+ name: '{#FSNAME}: Space utilization'
+ key: 'vfs.fs.size[{#FSNAME},pused]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Space utilization in % for {#FSNAME}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: e6ce1925a65d4b1fa954ac55fcd39b04
+ name: '{#FSNAME}: Total space'
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ history: 7d
+ units: B
+ description: 'Total space in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: 74c773bffa8e41f2a3cd7abf0b710fcf
+ name: '{#FSNAME}: Used space'
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ history: 7d
+ units: B
+ description: 'Used storage in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ 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)
+ name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: capacity
+ -
+ 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)
+ name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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)
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: 3ccd5c1a0e15489c9b57030ee634b8e3
+ name: '{#FSNAME}: Disk space usage'
+ width: '600'
+ height: '340'
+ type: PIE
+ show_3d: 'YES'
+ graph_items:
+ -
+ color: '969696'
+ calc_fnc: LAST
+ type: GRAPH_SUM
+ item:
+ host: 'Linux filesystems by Zabbix agent'
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ -
+ sortorder: '1'
+ color: C80000
+ calc_fnc: LAST
+ item:
+ host: 'Linux filesystems by Zabbix agent'
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ macros:
+ -
+ macro: '{$VFS.FS.FSNAME.MATCHES}'
+ value: .+
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ value: ^(/dev|/sys|/run|/proc|.+/shm$)
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSTYPE.MATCHES}'
+ value: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}'
+ value: '10'
+ -
+ macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}'
+ value: '20'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.CRIT}'
+ value: '90'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.WARN}'
+ value: '80'
+ -
+ uuid: 38f973ee1556494fadeacb2f6b1ec987
+ template: 'Linux generic by Zabbix agent'
+ name: 'Linux generic by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 5dc4ebda1b9244e7a9f901209b78570f
+ name: 'Maximum number of open file descriptors'
+ key: kernel.maxfiles
+ delay: 1h
+ history: 7d
+ description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: abf2e035f1e54971a0795152f922271b
+ expression: 'last(/Linux generic by Zabbix agent/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}'
+ name: 'Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN})'
+ priority: INFO
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: a82525acd1bd4039860ad2d750476760
+ name: 'Maximum number of processes'
+ key: kernel.maxproc
+ delay: 1h
+ history: 7d
+ description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 079c2be2b0a44965a8e83cedba222b8d
+ expression: 'last(/Linux generic by Zabbix agent/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}'
+ name: 'Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN})'
+ priority: INFO
+ dependencies:
+ -
+ name: 'Getting closer to process limit (over 80% used)'
+ expression: 'last(/Linux generic by Zabbix agent/proc.num)/last(/Linux generic by Zabbix agent/kernel.maxproc)*100>80'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 0207b131fa26435ba6b5979c46719bc8
+ name: 'Number of processes'
+ key: proc.num
+ history: 7d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: fa98827fe6474bf692d6aba3273836f7
+ name: 'Number of running processes'
+ key: 'proc.num[,,run]'
+ history: 7d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 48c251895f234f4595c4133015c27a18
+ name: 'System boot time'
+ key: system.boottime
+ delay: 15m
+ history: 7d
+ units: unixtime
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: f744b8e0be46431e8088803b3a1b210d
+ name: 'System name'
+ key: system.hostname
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'System host name.'
+ inventory_link: NAME
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: eda29f0c8c55495ab93820caa26338bf
+ expression: 'last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0'
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ priority: INFO
+ description: 'System name has changed. Ack to close.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ tag: scope
+ value: security
+ -
+ uuid: ac41daaa287944f3b0429c6fb2bca09c
+ name: 'System local time'
+ key: system.localtime
+ history: 7d
+ units: unixtime
+ description: 'System local time of the host.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: cffb7209ce2a45bd868ac41c0680be56
+ expression: 'fuzzytime(/Linux generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
+ name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
+ priority: WARNING
+ description: 'The host system time is different from the Zabbix server time.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 2e6e1ac8eb724a47b6c50b6c352ee3f7
+ name: 'Operating system architecture'
+ key: system.sw.arch
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'Operating system architecture of the host.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: a40ad2e2bda3453b873d634e6a003dc2
+ name: 'Operating system'
+ key: system.sw.os
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ inventory_link: OS
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ triggers:
+ -
+ uuid: 2f043de71d2940d184aa02200e33c28a
+ expression: 'last(/Linux generic by Zabbix agent/system.sw.os,#1)<>last(/Linux generic by Zabbix agent/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent/system.sw.os))>0'
+ name: 'Operating system description has changed'
+ priority: INFO
+ description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ expression: 'last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 1097f843e7324a1fa0508544ddddd556
+ name: 'Software installed'
+ key: system.sw.packages
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: TEXT
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: b3a8feced15d4a09a8a2d8d1d8c9a546
+ name: 'System description'
+ key: system.uname
+ delay: 15m
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'The information as normally returned by ''uname -a''.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 0a49428e394c4431bf97aa8787637bff
+ name: 'System uptime'
+ key: system.uptime
+ delay: 30s
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 2b612f4d65f4444c8a0609362c48463b
+ expression: 'last(/Linux generic by Zabbix agent/system.uptime)<10m'
+ name: '{HOST.NAME} has been restarted (uptime < 10m)'
+ priority: WARNING
+ description: 'The host uptime is less than 10 minutes'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: c595adf482c04553a2477bc1d929bc8d
+ name: 'Number of logged in users'
+ key: system.users.num
+ history: 7d
+ description: 'Number of users who are currently logged in.'
+ tags:
+ -
+ tag: component
+ value: environment
+ -
+ uuid: a10cff7883a4433bb744ebc2264fa13d
+ name: 'Checksum of /etc/passwd'
+ key: 'vfs.file.cksum[/etc/passwd,sha256]'
+ delay: 15m
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: environment
+ triggers:
+ -
+ uuid: a07bba3d320c4979b68ac0bbfad900dc
+ expression: 'last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2)'
+ name: '/etc/passwd has been changed'
+ priority: INFO
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Operating system description has changed'
+ expression: 'last(/Linux generic by Zabbix agent/system.sw.os,#1)<>last(/Linux generic by Zabbix agent/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent/system.sw.os))>0'
+ -
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ expression: 'last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0'
+ tags:
+ -
+ tag: scope
+ value: security
+ macros:
+ -
+ macro: '{$KERNEL.MAXFILES.MIN}'
+ value: '256'
+ -
+ macro: '{$KERNEL.MAXPROC.MIN}'
+ value: '1024'
+ -
+ macro: '{$SYSTEM.FUZZYTIME.MAX}'
+ value: '60'
+ -
+ uuid: 06c211e947414638bd00e555e206d03d
+ template: 'Linux memory by Zabbix agent'
+ name: 'Linux memory by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: e65616ce708743a6a7b8fea2ec89620b
+ name: 'Free swap space'
+ key: 'system.swap.size[,free]'
+ history: 7d
+ units: B
+ description: 'The free space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: da85940246a044398668403af8ce0bb6
+ name: 'Free swap space in %'
+ key: 'system.swap.size[,pfree]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The free space of swap volume/file in percent.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 0067f617f90643d8b5721a659992db77
+ name: 'Total swap space'
+ key: 'system.swap.size[,total]'
+ history: 7d
+ units: B
+ description: 'The total space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: e9aa329aff2c443595cd77443a512a1a
+ name: 'Available memory'
+ key: 'vm.memory.size[available]'
+ history: 7d
+ units: B
+ description: '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.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 20299d21c1ee47a284f54e3b9c8ac919
+ name: 'Available memory in %'
+ key: 'vm.memory.size[pavailable]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: b2f541b33a32428aa7644825d54f706a
+ name: 'Total memory'
+ key: 'vm.memory.size[total]'
+ history: 7d
+ units: B
+ description: 'Total memory in Bytes'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: bb852083c6aa43119bfb1d0756d9f1f7
+ name: 'Memory utilization'
+ type: DEPENDENT
+ key: vm.memory.utilization
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Memory used percentage is calculated as (100-pavailable)'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100-value);'
+ master_item:
+ key: 'vm.memory.size[pavailable]'
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 804010cd02244ec5b47ba77bfa734228
+ expression: 'min(/Linux memory by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ dependencies:
+ -
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ expression: 'max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$MEMORY.AVAILABLE.MIN}'
+ value: 20M
+ description: 'This macro is used as a threshold in memory available trigger.'
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ description: 'This macro is used as a threshold in memory utilization trigger.'
+ -
+ macro: '{$SWAP.PFREE.MIN.WARN}'
+ value: '50'
+ -
+ uuid: 18ecfb2a7e754315bb8d7f71917153da
+ template: 'Linux network interfaces by Zabbix agent'
+ name: 'Linux network interfaces by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: aea284394a914ede923d0004369184cf
+ name: 'Network interface discovery'
+ key: net.if.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of network interfaces.'
+ item_prototypes:
+ -
+ uuid: 5a57cd0076d346ae953d0c85ff64ecaf
+ name: 'Interface {#IFNAME}: Inbound packets discarded'
+ key: 'net.if.in["{#IFNAME}",dropped]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: f0c78df653744f03aaef06f909525a3d
+ name: 'Interface {#IFNAME}: Inbound packets with errors'
+ key: 'net.if.in["{#IFNAME}",errors]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 544b545925344458ae3895198fa5b00a
+ name: 'Interface {#IFNAME}: Bits received'
+ key: 'net.if.in["{#IFNAME}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 3502455ff20742439521d5b9d2f015a3
+ name: 'Interface {#IFNAME}: Outbound packets discarded'
+ key: 'net.if.out["{#IFNAME}",dropped]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 0044c70afff64bf99ecec9173ef7a0f8
+ name: 'Interface {#IFNAME}: Outbound packets with errors'
+ key: 'net.if.out["{#IFNAME}",errors]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: efa9c1b34b86486c9260730316c7a67c
+ name: 'Interface {#IFNAME}: Bits sent'
+ key: 'net.if.out["{#IFNAME}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: f9d88bf4e5b245ed80870b50506e7db3
+ name: 'Interface {#IFNAME}: Operational status'
+ key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]'
+ history: 7d
+ trends: '0'
+ description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt'
+ valuemap:
+ name: ifOperStatus
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ var newvalue;
+ switch(value) {
+ case "unknown":
+ newvalue = 0;
+ break;
+ case "notpresent":
+ newvalue = 1;
+ break;
+ case "down":
+ newvalue = 2;
+ break;
+ case "lowerlayerdown":
+ newvalue = 3;
+ break;
+ case "testing":
+ newvalue = 4;
+ break;
+ case "dormant":
+ newvalue = 5;
+ break;
+ case "up":
+ newvalue = 6;
+ break; default:
+ newvalue = "Problem parsing interface operstate in JS";
+ }
+ return newvalue;
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: 4b06b63814d34a90abe971abcd97cf83
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ name: 'Interface {#IFNAME}: Link down'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ This trigger expression works as follows:
+ 1. Can be triggered if operations status is down.
+ 2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
+ 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)
+
+ WARNING: if closed manually - won't fire again on next poll, because of .diff.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ uuid: 4644f15077474647bc7104431cf1bb74
+ name: 'Interface {#IFNAME}: Speed'
+ key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]'
+ delay: 5m
+ history: 7d
+ trends: 0d
+ units: bps
+ description: |
+ Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.
+ This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).
+ Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1000000'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 09bb129b088d493990bb4fa381eacad8
+ name: 'Interface {#IFNAME}: Interface type'
+ key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]'
+ delay: 1h
+ history: 7d
+ trends: 0d
+ description: |
+ Indicates the interface protocol type as a decimal value.
+ See include/uapi/linux/if_arp.h for all possible values.
+ Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
+ valuemap:
+ name: 'Linux::Interface protocol types'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: 42ba7cc36b734d4a933ed4f7ceb8f3a4
+ expression: |
+ change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
+ and
+ (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1)
+ and
+ (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2)
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ (change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or
+ (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2)
+ name: 'Interface {#IFNAME}: Ethernet has changed to lower speed than it was before'
+ opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
+ priority: INFO
+ description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}: Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 678d795a043a4f5a84fc9690d0d29783
+ expression: |
+ (avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or
+ avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and
+ last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and
+ avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])
+ name: 'Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
+ opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'The network interface utilization is close to its estimated maximum bandwidth.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}: Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: b4da7325b41647ab997cf6906a9cba23
+ expression: |
+ min(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ or min(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ max(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ and max(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ name: 'Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
+ opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}: Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 4b1489e1d06a4443a4f379854936cfee
+ name: 'Interface {#IFNAME}: Network traffic'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux network interfaces by Zabbix agent'
+ key: 'net.if.in["{#IFNAME}"]'
+ -
+ sortorder: '1'
+ drawtype: BOLD_LINE
+ color: 2774A4
+ item:
+ host: 'Linux network interfaces by Zabbix agent'
+ key: 'net.if.out["{#IFNAME}"]'
+ -
+ sortorder: '2'
+ color: F63100
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent'
+ key: 'net.if.out["{#IFNAME}",errors]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent'
+ key: 'net.if.in["{#IFNAME}",errors]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent'
+ key: 'net.if.out["{#IFNAME}",dropped]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent'
+ key: 'net.if.in["{#IFNAME}",dropped]'
+ macros:
+ -
+ macro: '{$IF.ERRORS.WARN}'
+ value: '2'
+ -
+ macro: '{$IF.UTIL.MAX}'
+ value: '90'
+ description: 'This macro is used as a threshold in interface utilization trigger.'
+ -
+ macro: '{$IFCONTROL}'
+ value: '1'
+ -
+ macro: '{$NET.IF.IFNAME.MATCHES}'
+ value: '^.*$'
+ -
+ macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
+ description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
+ dashboards:
+ -
+ uuid: 1cbc445224b14af1b72f1580d7444ba5
+ name: 'Network interfaces'
+ pages:
+ -
+ widgets:
+ -
+ type: GRAPH_PROTOTYPE
+ width: '24'
+ height: '5'
+ fields:
+ -
+ type: INTEGER
+ name: source_type
+ value: '2'
+ -
+ type: INTEGER
+ name: columns
+ value: '1'
+ -
+ type: INTEGER
+ name: rows
+ value: '1'
+ -
+ type: GRAPH_PROTOTYPE
+ name: graphid
+ value:
+ name: 'Interface {#IFNAME}: Network traffic'
+ host: 'Linux network interfaces by Zabbix agent'
+ valuemaps:
+ -
+ uuid: 8513cf23b8d34952b92a31bbd82a31d3
+ name: ifOperStatus
+ mappings:
+ -
+ value: '0'
+ newvalue: unknown
+ -
+ value: '1'
+ newvalue: notpresent
+ -
+ value: '2'
+ newvalue: down
+ -
+ value: '3'
+ newvalue: lowerlayerdown
+ -
+ value: '4'
+ newvalue: testing
+ -
+ value: '5'
+ newvalue: dormant
+ -
+ value: '6'
+ newvalue: up
+ -
+ uuid: e2db25377a2b49c897bbb8b6c30831e2
+ name: 'Linux::Interface protocol types'
+ mappings:
+ -
+ value: '0'
+ newvalue: 'from KA9Q: NET/ROM pseudo'
+ -
+ value: '1'
+ newvalue: Ethernet
+ -
+ value: '2'
+ newvalue: 'Experimental Ethernet'
+ -
+ value: '3'
+ newvalue: 'AX.25 Level 2'
+ -
+ value: '4'
+ newvalue: 'PROnet token ring'
+ -
+ value: '5'
+ newvalue: Chaosnet
+ -
+ value: '6'
+ newvalue: 'IEEE 802.2 Ethernet/TR/TB'
+ -
+ value: '7'
+ newvalue: ARCnet
+ -
+ value: '8'
+ newvalue: APPLEtalk
+ -
+ value: '15'
+ newvalue: 'Frame Relay DLCI'
+ -
+ value: '19'
+ newvalue: ATM
+ -
+ value: '23'
+ newvalue: 'Metricom STRIP (new IANA id)'
+ -
+ value: '24'
+ newvalue: 'IEEE 1394 IPv4 - RFC 2734'
+ -
+ value: '27'
+ newvalue: EUI-64
+ -
+ value: '32'
+ newvalue: InfiniBand
+ -
+ value: '256'
+ newvalue: ARPHRD_SLIP
+ -
+ value: '257'
+ newvalue: ARPHRD_CSLIP
+ -
+ value: '258'
+ newvalue: ARPHRD_SLIP6
+ -
+ value: '259'
+ newvalue: ARPHRD_CSLIP6
+ -
+ value: '260'
+ newvalue: 'Notional KISS type'
+ -
+ value: '264'
+ newvalue: ARPHRD_ADAPT
+ -
+ value: '270'
+ newvalue: ARPHRD_ROSE
+ -
+ value: '271'
+ newvalue: 'CCITT X.25'
+ -
+ value: '272'
+ newvalue: 'Boards with X.25 in firmware'
+ -
+ value: '280'
+ newvalue: 'Controller Area Network'
+ -
+ value: '512'
+ newvalue: ARPHRD_PPP
+ -
+ value: '513'
+ newvalue: 'Cisco HDLC'
+ -
+ value: '516'
+ newvalue: LAPB
+ -
+ value: '517'
+ newvalue: 'Digital''s DDCMP protocol'
+ -
+ value: '518'
+ newvalue: 'Raw HDLC'
+ -
+ value: '519'
+ newvalue: 'Raw IP'
+ -
+ value: '768'
+ newvalue: 'IPIP tunnel'
+ -
+ value: '769'
+ newvalue: 'IP6IP6 tunnel'
+ -
+ value: '770'
+ newvalue: 'Frame Relay Access Device'
+ -
+ value: '771'
+ newvalue: 'SKIP vif'
+ -
+ value: '772'
+ newvalue: 'Loopback device'
+ -
+ value: '773'
+ newvalue: 'Localtalk device'
+ -
+ value: '774'
+ newvalue: 'Fiber Distributed Data Interface'
+ -
+ value: '775'
+ newvalue: 'AP1000 BIF'
+ -
+ value: '776'
+ newvalue: 'sit0 device - IPv6-in-IPv4'
+ -
+ value: '777'
+ newvalue: 'IP over DDP tunneller'
+ -
+ value: '778'
+ newvalue: 'GRE over IP'
+ -
+ value: '779'
+ newvalue: 'PIMSM register interface'
+ -
+ value: '780'
+ newvalue: 'High Performance Parallel Interface'
+ -
+ value: '781'
+ newvalue: 'Nexus 64Mbps Ash'
+ -
+ value: '782'
+ newvalue: 'Acorn Econet'
+ -
+ value: '783'
+ newvalue: Linux-IrDA
+ -
+ value: '784'
+ newvalue: 'Point to point fibrechannel'
+ -
+ value: '785'
+ newvalue: 'Fibrechannel arbitrated loop'
+ -
+ value: '786'
+ newvalue: 'Fibrechannel public loop'
+ -
+ value: '787'
+ newvalue: 'Fibrechannel fabric'
+ -
+ value: '800'
+ newvalue: 'Magic type ident for TR'
+ -
+ value: '801'
+ newvalue: 'IEEE 802.11'
+ -
+ value: '802'
+ newvalue: 'IEEE 802.11 + Prism2 header'
+ -
+ value: '803'
+ newvalue: 'IEEE 802.11 + radiotap header'
+ -
+ value: '804'
+ newvalue: ARPHRD_IEEE802154
+ -
+ value: '805'
+ newvalue: 'IEEE 802.15.4 network monitor'
+ -
+ value: '820'
+ newvalue: 'PhoNet media type'
+ -
+ value: '821'
+ newvalue: 'PhoNet pipe header'
+ -
+ value: '822'
+ newvalue: 'CAIF media type'
+ -
+ value: '823'
+ newvalue: 'GRE over IPv6'
+ -
+ value: '824'
+ newvalue: 'Netlink header'
+ -
+ value: '825'
+ newvalue: 'IPv6 over LoWPAN'
+ -
+ value: '826'
+ newvalue: 'Vsock monitor header'
+ triggers:
+ -
+ uuid: 613c30a98cf044b1b46a3d1d50f90eb8
+ expression: 'last(/Linux generic by Zabbix agent/proc.num)/last(/Linux generic by Zabbix agent/kernel.maxproc)*100>80'
+ name: 'Getting closer to process limit (over 80% used)'
+ opdata: '{ITEM.LASTVALUE1} active, {ITEM.LASTVALUE2} limit.'
+ priority: WARNING
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 6bf4726efad344529d3c8908053c6e6c
+ expression: 'max(/Linux memory by Zabbix agent/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent/system.swap.size[,total])>0'
+ 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'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Linux memory by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
+ -
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ expression: 'max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: 3800877e8b474aa2aa83c1ecc0523db6
+ expression: 'max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0'
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
+ priority: AVERAGE
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 0d6fc27f8a884510b2f31a5a0e653f70
+ expression: |
+ min(/Linux CPU by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
+ and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg5])>0
+ and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg15])>0
+ name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
+ opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}'
+ priority: AVERAGE
+ description: 'Per CPU load average is too high. Your system may be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ graphs:
+ -
+ uuid: 7036809e95be49b4959fefe8e89a5e90
+ name: 'CPU jumps'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: system.cpu.switches
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: system.cpu.intr
+ -
+ uuid: 345236549e004d4da84b47bc797d248e
+ name: 'CPU usage'
+ type: STACKED
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,system]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,user]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,nice]'
+ -
+ sortorder: '3'
+ color: A54F10
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,iowait]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,steal]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,interrupt]'
+ -
+ sortorder: '6'
+ color: AC8C14
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,softirq]'
+ -
+ sortorder: '7'
+ color: 611F27
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,guest]'
+ -
+ sortorder: '8'
+ color: F230E0
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.util[,guest_nice]'
+ -
+ uuid: 4c14e3706a3c4c48b1fabf7d8d0991a8
+ name: 'CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: system.cpu.util
+ -
+ uuid: b089fd66c95b4e8ca923820a13f8dd16
+ name: 'Memory usage'
+ ymin_type_1: FIXED
+ graph_items:
+ -
+ drawtype: BOLD_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux memory by Zabbix agent'
+ key: 'vm.memory.size[total]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux memory by Zabbix agent'
+ key: 'vm.memory.size[available]'
+ -
+ uuid: 83c385fe3aef4aa9b862ed4718e428d3
+ name: 'Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux memory by Zabbix agent'
+ key: vm.memory.utilization
+ -
+ uuid: 644864fece6e4c0c9484c57e24808691
+ name: Processes
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux generic by Zabbix agent'
+ key: proc.num
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux generic by Zabbix agent'
+ key: 'proc.num[,,run]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux generic by Zabbix agent'
+ key: kernel.maxproc
+ -
+ uuid: 71e4089be866400a9f0a520ba271c243
+ name: 'Swap usage'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux memory by Zabbix agent'
+ key: 'system.swap.size[,free]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux memory by Zabbix agent'
+ key: 'system.swap.size[,total]'
+ -
+ uuid: 479ffa370eef48caba68f06e63e73344
+ name: 'System load'
+ ymin_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.load[all,avg1]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.load[all,avg5]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: 'system.cpu.load[all,avg15]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Linux CPU by Zabbix agent'
+ key: system.cpu.num
diff --git a/templates/module/linux_active/README.md b/templates/module/linux_active/README.md
new file mode 100644
index 00000000000..a6343cc729f
--- /dev/null
+++ b/templates/module/linux_active/README.md
@@ -0,0 +1,357 @@
+
+# Linux CPU by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$LOAD_AVG_PER_CPU.MAX.WARN} |<p>Load per CPU considered sustainable. Tune if needed.</p> |`1.5` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |Number of CPUs |<p>-</p> |ZABBIX_ACTIVE |system.cpu.num<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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 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] |
+|CPU |CPU nice time |<p>The time the CPU has spent running users' processes that have been niced.</p> |ZABBIX_ACTIVE |system.cpu.util[,nice] |
+|CPU |CPU iowait time |<p>Amount of time the CPU has been waiting for I/O to complete.</p> |ZABBIX_ACTIVE |system.cpu.util[,iowait] |
+|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 |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> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m) |<p>Per CPU load average is too high. Your system may be slow to respond.</p> |`min(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg5])>0 and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg15])>0` |AVERAGE | |
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Linux CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING |<p>**Depends on**:</p><p>- Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux filesystems by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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)$` |
+|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^\s$` |
+|{$VFS.FS.INODE.PFREE.MIN.CRIT} |<p>-</p> |`10` |
+|{$VFS.FS.INODE.PFREE.MIN.WARN} |<p>-</p> |`20` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_ACTIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Filesystems |{#FSNAME}: Used space |<p>Used storage in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},used] |
+|Filesystems |{#FSNAME}: Total space |<p>Total space in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},total] |
+|Filesystems |{#FSNAME}: Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},pused] |
+|Filesystems |{#FSNAME}: Free inodes in % |<p>-</p> |ZABBIX_ACTIVE |vfs.fs.inode[{#FSNAME},pfree] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
+|{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
+|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}` |AVERAGE | |
+|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}` |WARNING |<p>**Depends on**:</p><p>- {#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux memory by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$MEMORY.AVAILABLE.MIN} |<p>This macro is used as a threshold in memory available trigger.</p> |`20M` |
+|{$MEMORY.UTIL.MAX} |<p>This macro is used as a threshold in memory utilization trigger.</p> |`90` |
+|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|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 |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] |
+|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |ZABBIX_ACTIVE |system.swap.size[,pfree] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Linux memory by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE |<p>**Depends on**:</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
+|Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2}) |<p>-</p> |`max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0` |AVERAGE | |
+|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`max(/Linux memory by Zabbix agent active/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent active/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux block devices by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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.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` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Block devices discovery |<p>-</p> |ZABBIX_ACTIVE |vfs.dev.discovery<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#DEVTYPE} MATCHES_REGEX `disk`</p><p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Storage |{#DEVNAME}: Disk read rate |<p>r/s. The number (after merges) of read requests completed per second for the device.</p> |DEPENDENT |vfs.dev.read.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[0]`</p><p>- CHANGE_PER_SECOND</p> |
+|Storage |{#DEVNAME}: Disk write rate |<p>w/s. The number (after merges) of write requests completed per second for the device.</p> |DEPENDENT |vfs.dev.write.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[4]`</p><p>- CHANGE_PER_SECOND</p> |
+|Storage |{#DEVNAME}: Disk read request avg waiting time (r_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.read.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)` |
+|Storage |{#DEVNAME}: Disk write request avg waiting time (w_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.write.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)` |
+|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |DEPENDENT |vfs.dev.queue_size[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[10]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
+|Storage |{#DEVNAME}: Disk utilization |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.</p> |DEPENDENT |vfs.dev.util[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[9]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.1`</p> |
+|Zabbix raw items |{#DEVNAME}: Get stats |<p>Get contents of /sys/block/{#DEVNAME}/stat for disk stats.</p> |ZABBIX_ACTIVE |vfs.file.contents[/sys/block/{#DEVNAME}/stat]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return JSON.stringify(value.trim().split(/ +/));`</p> |
+|Zabbix raw items |{#DEVNAME}: Disk read time (rate) |<p>Rate of total read time counter. Used in r_await calculation</p> |DEPENDENT |vfs.dev.read.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[3]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
+|Zabbix raw items |{#DEVNAME}: Disk write time (rate) |<p>Rate of total write time counter. Used in w_await calculation</p> |DEPENDENT |vfs.dev.write.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[7]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Linux block devices by Zabbix agent active/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent active/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux network interfaces by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
+|{$IF.UTIL.MAX} |<p>This macro is used as a threshold in interface utilization trigger.</p> |`90` |
+|{$IFCONTROL} |<p>-</p> |`1` |
+|{$NET.IF.IFNAME.MATCHES} |<p>-</p> |`^.*$` |
+|{$NET.IF.IFNAME.NOT_MATCHES} |<p>Filter out loopbacks, nulls, docker veth links and docker0 bridge by default</p> |`(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Network interface discovery |<p>Discovery of network interfaces.</p> |ZABBIX_ACTIVE |net.if.discovery<p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Network interfaces |Interface {#IFNAME}: Bits received |<p>-</p> |ZABBIX_ACTIVE |net.if.in["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}: Bits sent |<p>-</p> |ZABBIX_ACTIVE |net.if.out["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}: Outbound packets with errors |<p>-</p> |ZABBIX_ACTIVE |net.if.out["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Inbound packets with errors |<p>-</p> |ZABBIX_ACTIVE |net.if.in["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Outbound packets discarded |<p>-</p> |ZABBIX_ACTIVE |net.if.out["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Inbound packets discarded |<p>-</p> |ZABBIX_ACTIVE |net.if.in["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}: Operational status |<p>Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt</p> |ZABBIX_ACTIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> |
+|Network interfaces |Interface {#IFNAME}: Interface type |<p>Indicates the interface protocol type as a decimal value.</p><p>See include/uapi/linux/if_arp.h for all possible values.</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_ACTIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/type"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Network interfaces |Interface {#IFNAME}: Speed |<p>Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.</p><p>This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_ACTIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0`<p>Recovery expression:</p>`avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
+|Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}`<p>Recovery expression:</p>`max(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
+|Interface {#IFNAME}: Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))`<p>Recovery expression:</p>`last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
+|Interface {#IFNAME}: Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1) and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2) `<p>Recovery expression:</p>`(change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2) ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux generic by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$KERNEL.MAXFILES.MIN} |<p>-</p> |`256` |
+|{$KERNEL.MAXPROC.MIN} |<p>-</p> |`1024` |
+|{$SYSTEM.FUZZYTIME.MAX} |<p>-</p> |`60` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|General |System boot time |<p>-</p> |ZABBIX_ACTIVE |system.boottime<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+|General |System local time |<p>System local time of the host.</p> |ZABBIX_ACTIVE |system.localtime |
+|General |System name |<p>System host name.</p> |ZABBIX_ACTIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|General |System description |<p>The information as normally returned by 'uname -a'.</p> |ZABBIX_ACTIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
+|General |Number of logged in users |<p>Number of users who are currently logged in.</p> |ZABBIX_ACTIVE |system.users.num |
+|General |Maximum number of open file descriptors |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_ACTIVE |kernel.maxfiles<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|General |Maximum number of processes |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_ACTIVE |kernel.maxproc<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|General |Number of processes |<p>-</p> |ZABBIX_ACTIVE |proc.num |
+|General |Number of running processes |<p>-</p> |ZABBIX_ACTIVE |proc.num[,,run] |
+|Inventory |Operating system |<p>-</p> |ZABBIX_ACTIVE |system.sw.os<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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> |
+|Inventory |Software installed |<p>-</p> |ZABBIX_ACTIVE |system.sw.packages<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Security |Checksum of /etc/passwd |<p>-</p> |ZABBIX_ACTIVE |vfs.file.cksum[/etc/passwd,sha256]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+|Status |System uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_ACTIVE |system.uptime |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Linux generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
+|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
+|Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent active/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}` |INFO | |
+|Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent active/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}` |INFO |<p>**Depends on**:</p><p>- Getting closer to process limit (over 80% used)</p> |
+|Getting closer to process limit (over 80% used) |<p>-</p> |`last(/Linux generic by Zabbix agent active/proc.num)/last(/Linux generic by Zabbix agent active/kernel.maxproc)*100>80` |WARNING | |
+|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`last(/Linux generic by Zabbix agent active/system.sw.os,#1)<>last(/Linux generic by Zabbix agent active/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent active/system.sw.os))>0` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
+|/etc/passwd has been changed |<p>-</p> |`last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#2)` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Operating system description has changed</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
+|{HOST.NAME} has been restarted (uptime < 10m) |<p>The host uptime is less than 10 minutes</p> |`last(/Linux generic by Zabbix agent active/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/module/linux_active/template_module_linux_active.yaml b/templates/module/linux_active/template_module_linux_active.yaml
new file mode 100644
index 00000000000..25576172285
--- /dev/null
+++ b/templates/module/linux_active/template_module_linux_active.yaml
@@ -0,0 +1,2259 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T08:32:12Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: aa226119d3e94f53b9a2809f1d4ebaee
+ template: 'Linux block devices by Zabbix agent active'
+ name: 'Linux block devices by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 37d15facfc5f42f4ad1145f55d4bdb1e
+ name: 'Block devices discovery'
+ type: ZABBIX_ACTIVE
+ key: vfs.dev.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#DEVTYPE}'
+ value: disk
+ formulaid: C
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.MATCHES}'
+ formulaid: B
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: A
+ item_prototypes:
+ -
+ uuid: 5a9fb5097fb1425aafc718018ebd95f8
+ name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
+ type: DEPENDENT
+ key: 'vfs.dev.queue_size[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[10]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.001'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 4263e16baa044186947ad9f4ec12f6b4
+ name: '{#DEVNAME}: Disk read request avg waiting time (r_await)'
+ type: CALCULATED
+ key: 'vfs.dev.read.await[{#DEVNAME}]'
+ history: 7d
+ value_type: FLOAT
+ units: '!ms'
+ params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)'
+ description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 7a02e002d83f4e71bdcc031077738f2b
+ name: '{#DEVNAME}: Disk read rate'
+ type: DEPENDENT
+ key: 'vfs.dev.read.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '!r/s'
+ description: 'r/s. The number (after merges) of read requests completed per second for the device.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[0]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: ae4ae1c7ef2e434f875c8099ff3b101b
+ name: '{#DEVNAME}: Disk read time (rate)'
+ type: DEPENDENT
+ key: 'vfs.dev.read.time.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ description: 'Rate of total read time counter. Used in r_await calculation'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[3]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.001'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 708baac844f54ca2b91ba8ed9f624459
+ name: '{#DEVNAME}: Disk utilization'
+ type: DEPENDENT
+ key: 'vfs.dev.util[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[9]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.1'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: e36cbccc4d9e470f8078bd2e04c5c5da
+ name: '{#DEVNAME}: Disk write request avg waiting time (w_await)'
+ type: CALCULATED
+ key: 'vfs.dev.write.await[{#DEVNAME}]'
+ history: 7d
+ value_type: FLOAT
+ units: '!ms'
+ params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)'
+ description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: ef9afdff2799455e85a8477a307dd83f
+ name: '{#DEVNAME}: Disk write rate'
+ type: DEPENDENT
+ key: 'vfs.dev.write.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '!w/s'
+ description: 'w/s. The number (after merges) of write requests completed per second for the device.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[4]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 165825d4e5e442ad97d6455a117a7663
+ name: '{#DEVNAME}: Disk write time (rate)'
+ type: DEPENDENT
+ key: 'vfs.dev.write.time.rate[{#DEVNAME}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ description: 'Rate of total write time counter. Used in w_await calculation'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[7]'
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '0.001'
+ master_item:
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: ab92fd1578124197ba4dc8af11ebece4
+ name: '{#DEVNAME}: Get stats'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Get contents of /sys/block/{#DEVNAME}/stat for disk stats.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return JSON.stringify(value.trim().split(/ +/));'
+ tags:
+ -
+ tag: component
+ value: raw
+ trigger_prototypes:
+ -
+ uuid: af9c4b7070f94999a2a1569de0948822
+ expression: 'min(/Linux block devices by Zabbix agent active/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent active/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
+ name: '{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m)'
+ priority: WARNING
+ description: 'This trigger might indicate disk {#DEVNAME} saturation.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 8748136db91b499da7516cb6fde881fb
+ name: '{#DEVNAME}: Disk average waiting time'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux block devices by Zabbix agent active'
+ key: 'vfs.dev.read.await[{#DEVNAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices by Zabbix agent active'
+ key: 'vfs.dev.write.await[{#DEVNAME}]'
+ -
+ uuid: 00756c13228340d7b4483b796dc8f79f
+ name: '{#DEVNAME}: Disk read/write rates'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux block devices by Zabbix agent active'
+ key: 'vfs.dev.read.rate[{#DEVNAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices by Zabbix agent active'
+ key: 'vfs.dev.write.rate[{#DEVNAME}]'
+ -
+ uuid: 7cf1fd3334f543c8b44fb131890eb87e
+ name: '{#DEVNAME}: Disk utilization and queue'
+ graph_items:
+ -
+ color: 1A7C11
+ yaxisside: RIGHT
+ item:
+ host: 'Linux block devices by Zabbix agent active'
+ key: 'vfs.dev.queue_size[{#DEVNAME}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices by Zabbix agent active'
+ key: 'vfs.dev.util[{#DEVNAME}]'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ macros:
+ -
+ macro: '{$VFS.DEV.DEVNAME.MATCHES}'
+ value: .+
+ description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ 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.DEV.READ.AWAIT.WARN}'
+ value: '20'
+ description: 'Disk read average response time (in ms) before the trigger would fire'
+ -
+ macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
+ value: '20'
+ description: 'Disk write average response time (in ms) before the trigger would fire'
+ -
+ uuid: da53e44145304098b4c3ff749996e3e7
+ template: 'Linux CPU by Zabbix agent active'
+ name: 'Linux CPU by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 4ce91073d4a344a1bbbdb5f98a48ade4
+ name: 'Interrupts per second'
+ type: ZABBIX_ACTIVE
+ key: system.cpu.intr
+ history: 7d
+ value_type: FLOAT
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 028f6c4184fe4827816e47ec9ffded70
+ name: 'Load average (1m avg)'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.load[all,avg1]'
+ history: 7d
+ value_type: FLOAT
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 507ff2791866406caf0a90c698b0b37a
+ name: 'Load average (5m avg)'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.load[all,avg5]'
+ history: 7d
+ value_type: FLOAT
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 9502c5e47bd542ecbb8e2bfbf9020367
+ name: 'Load average (15m avg)'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.load[all,avg15]'
+ history: 7d
+ value_type: FLOAT
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: e522484fae9044c5bb364a8be14dfd39
+ name: 'Number of CPUs'
+ type: ZABBIX_ACTIVE
+ key: system.cpu.num
+ history: 7d
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 2524a63bea9d44858b4b0a068360a3ad
+ name: 'Context switches per second'
+ type: ZABBIX_ACTIVE
+ key: system.cpu.switches
+ history: 7d
+ value_type: FLOAT
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 91e6c4ff36eb4327a126a7f329792048
+ name: 'CPU utilization'
+ type: DEPENDENT
+ key: system.cpu.util
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU utilization in %'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //Calculate utilization
+ return (100 - value)
+ master_item:
+ key: 'system.cpu.util[,idle]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 685db9802cc74b5aab4d9744ca3ee32e
+ expression: 'min(/Linux CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ dependencies:
+ -
+ name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
+ expression: |
+ min(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
+ and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg5])>0
+ and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg15])>0
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 113b52c5d0cc4fec815d1a8e76fad4b8
+ name: 'CPU guest time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,guest]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: b642aa7ed2dc41738a58339898ed6180
+ name: 'CPU guest nice time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,guest_nice]'
+ 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)'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: b2f6d924272d4b84bf26cd497a85d24f
+ name: 'CPU idle time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,idle]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent doing nothing.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 4eae770bff5f404481f2c57673fc8b3d
+ name: 'CPU interrupt time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,interrupt]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The amount of time the CPU has been servicing hardware interrupts.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: e8d5b76517c946b18b7d55c9ff2c23cb
+ name: 'CPU iowait time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,iowait]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Amount of time the CPU has been waiting for I/O to complete.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: f67af9ba78054119806eb8ee6bbe6759
+ name: 'CPU nice time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,nice]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent running users'' processes that have been niced.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: c86a06e45ce449158e90ba1843fa73be
+ name: 'CPU softirq time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,softirq]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The amount of time the CPU has been servicing software interrupts.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 676c1243ad404ec7b4bbdfcf1a230c8f
+ name: 'CPU steal time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,steal]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The amount of CPU ''stolen'' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 768051f0019b4823a34cd1e7c03e507d
+ name: 'CPU system time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,system]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent running the kernel and its processes.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 28b99eefcae047fe8dee348ddbb96728
+ name: 'CPU user time'
+ type: ZABBIX_ACTIVE
+ key: 'system.cpu.util[,user]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The time the CPU has spent running users'' processes that are not niced.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ -
+ macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}'
+ value: '1.5'
+ description: 'Load per CPU considered sustainable. Tune if needed.'
+ -
+ uuid: c626d864a2894d29a9d661d6025536ff
+ template: 'Linux filesystems by Zabbix agent active'
+ name: 'Linux filesystems by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 39b800d6136b4f8a8e57bbccc2f0352f
+ name: 'Mounted filesystem discovery'
+ type: ZABBIX_ACTIVE
+ key: vfs.fs.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of file systems of different types.'
+ item_prototypes:
+ -
+ uuid: 27292d6abec04f0492bf50c39749c4ea
+ name: '{#FSNAME}: Free inodes in %'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.inode[{#FSNAME},pfree]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ uuid: 6785dec80d674c79a6b4c84a04165e25
+ expression: 'min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
+ opdata: 'Free inodes: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ It may become impossible to write to disk if there are no index nodes left.
+ As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 8a453a00627c4f1bbf0724dbdf4e760a
+ expression: 'min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}'
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)'
+ opdata: 'Free inodes: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: |
+ It may become impossible to write to disk if there are no index nodes left.
+ As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
+ dependencies:
+ -
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
+ expression: 'min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 9f94a00cd29a420185475690d2f049c5
+ name: '{#FSNAME}: Space utilization'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.size[{#FSNAME},pused]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Space utilization in % for {#FSNAME}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: bba48614f65c468c82a494f3f119a21d
+ name: '{#FSNAME}: Total space'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ history: 7d
+ units: B
+ description: 'Total space in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: 76bbffc4bd4a4ac3b3ff60ff27509372
+ name: '{#FSNAME}: Used space'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ history: 7d
+ units: B
+ description: 'Used storage in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ 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)
+ name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: capacity
+ -
+ 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)
+ name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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)
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: 361d0714ef994ffb8ee037ae7a952fce
+ name: '{#FSNAME}: Disk space usage'
+ width: '600'
+ height: '340'
+ type: PIE
+ show_3d: 'YES'
+ graph_items:
+ -
+ color: '969696'
+ calc_fnc: LAST
+ type: GRAPH_SUM
+ item:
+ host: 'Linux filesystems by Zabbix agent active'
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ -
+ sortorder: '1'
+ color: C80000
+ calc_fnc: LAST
+ item:
+ host: 'Linux filesystems by Zabbix agent active'
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ macros:
+ -
+ macro: '{$VFS.FS.FSNAME.MATCHES}'
+ value: .+
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ value: ^(/dev|/sys|/run|/proc|.+/shm$)
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSTYPE.MATCHES}'
+ value: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}'
+ value: '10'
+ -
+ macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}'
+ value: '20'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.CRIT}'
+ value: '90'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.WARN}'
+ value: '80'
+ -
+ uuid: 7e4dc41320fd48bd97549025f4c3bcc6
+ template: 'Linux generic by Zabbix agent active'
+ name: 'Linux generic by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 98a2a698cd784267a965d653fdbba456
+ name: 'Maximum number of open file descriptors'
+ type: ZABBIX_ACTIVE
+ key: kernel.maxfiles
+ delay: 1h
+ history: 7d
+ description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: fd194c5435c74dbdbefb396550497580
+ expression: 'last(/Linux generic by Zabbix agent active/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}'
+ name: 'Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN})'
+ priority: INFO
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 7778ab98754146ecbfd2735d9c322c97
+ name: 'Maximum number of processes'
+ type: ZABBIX_ACTIVE
+ key: kernel.maxproc
+ delay: 1h
+ history: 7d
+ description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 1ddbc55594d540f7b30239a4e87a3b97
+ expression: 'last(/Linux generic by Zabbix agent active/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}'
+ name: 'Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN})'
+ priority: INFO
+ dependencies:
+ -
+ name: 'Getting closer to process limit (over 80% used)'
+ expression: 'last(/Linux generic by Zabbix agent active/proc.num)/last(/Linux generic by Zabbix agent active/kernel.maxproc)*100>80'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 64268d5004a64e0ba737dcf4dd213913
+ name: 'Number of processes'
+ type: ZABBIX_ACTIVE
+ key: proc.num
+ history: 7d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 06e306520579482b8105d7421ad16da1
+ name: 'Number of running processes'
+ type: ZABBIX_ACTIVE
+ key: 'proc.num[,,run]'
+ history: 7d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 04989d7ca98246ce93405b25bd86aeda
+ name: 'System boot time'
+ type: ZABBIX_ACTIVE
+ key: system.boottime
+ delay: 15m
+ history: 7d
+ units: unixtime
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 40de32e4124b456faba499e00b1c7174
+ name: 'System name'
+ type: ZABBIX_ACTIVE
+ key: system.hostname
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'System host name.'
+ inventory_link: NAME
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 071532526e8842f8935bf9373a85b7da
+ expression: 'last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0'
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ priority: INFO
+ description: 'System name has changed. Ack to close.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ tag: scope
+ value: security
+ -
+ uuid: 510ed427b1284906824df3123b94a0bc
+ name: 'System local time'
+ type: ZABBIX_ACTIVE
+ key: system.localtime
+ history: 7d
+ units: unixtime
+ description: 'System local time of the host.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 350ceb73bee84b21b1f5c559e6697879
+ expression: 'fuzzytime(/Linux generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
+ name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
+ priority: WARNING
+ description: 'The host system time is different from the Zabbix server time.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 6f37348c05fa409e9189af3731296095
+ name: 'Operating system architecture'
+ type: ZABBIX_ACTIVE
+ key: system.sw.arch
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'Operating system architecture of the host.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 79d493ae03a64bdab89520c3dde0410c
+ name: 'Operating system'
+ type: ZABBIX_ACTIVE
+ key: system.sw.os
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ inventory_link: OS
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ triggers:
+ -
+ uuid: fc45ac0cfc7641f2a52b95830df3e880
+ expression: 'last(/Linux generic by Zabbix agent active/system.sw.os,#1)<>last(/Linux generic by Zabbix agent active/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent active/system.sw.os))>0'
+ name: 'Operating system description has changed'
+ priority: INFO
+ description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ expression: 'last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 42df39b3317a4bd6908686a491fd3d18
+ name: 'Software installed'
+ type: ZABBIX_ACTIVE
+ key: system.sw.packages
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: TEXT
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: d875142b4ea0442db59768be58c9d026
+ name: 'System description'
+ type: ZABBIX_ACTIVE
+ key: system.uname
+ delay: 15m
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'The information as normally returned by ''uname -a''.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 12h
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 2e5b3c8596df4aaebce704f3904630a7
+ name: 'System uptime'
+ type: ZABBIX_ACTIVE
+ key: system.uptime
+ delay: 30s
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 7b13d56caa094a8d95c0f4e948078366
+ expression: 'last(/Linux generic by Zabbix agent active/system.uptime)<10m'
+ name: '{HOST.NAME} has been restarted (uptime < 10m)'
+ priority: WARNING
+ description: 'The host uptime is less than 10 minutes'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: a58cfd080cfe44d9ae054754bbc69892
+ name: 'Number of logged in users'
+ type: ZABBIX_ACTIVE
+ key: system.users.num
+ history: 7d
+ description: 'Number of users who are currently logged in.'
+ tags:
+ -
+ tag: component
+ value: environment
+ -
+ uuid: 7cb47989debc4deba77394a5320a83e8
+ name: 'Checksum of /etc/passwd'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.file.cksum[/etc/passwd,sha256]'
+ delay: 15m
+ history: 7d
+ trends: '0'
+ value_type: CHAR
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: environment
+ triggers:
+ -
+ uuid: a49d7ca808c345ec8ef516fdc3b0d5ff
+ expression: 'last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#2)'
+ name: '/etc/passwd has been changed'
+ priority: INFO
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Operating system description has changed'
+ expression: 'last(/Linux generic by Zabbix agent active/system.sw.os,#1)<>last(/Linux generic by Zabbix agent active/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent active/system.sw.os))>0'
+ -
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ expression: 'last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0'
+ tags:
+ -
+ tag: scope
+ value: security
+ macros:
+ -
+ macro: '{$KERNEL.MAXFILES.MIN}'
+ value: '256'
+ -
+ macro: '{$KERNEL.MAXPROC.MIN}'
+ value: '1024'
+ -
+ macro: '{$SYSTEM.FUZZYTIME.MAX}'
+ value: '60'
+ -
+ uuid: 5f577b9e34a8444c920e8199170f7fe6
+ template: 'Linux memory by Zabbix agent active'
+ name: 'Linux memory by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 824d5c6e62c04f2d8b6e73aeca87be1e
+ name: 'Free swap space'
+ type: ZABBIX_ACTIVE
+ key: 'system.swap.size[,free]'
+ history: 7d
+ units: B
+ description: 'The free space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: f3b551caf6b44511a44f5ebb07ba5917
+ name: 'Free swap space in %'
+ type: ZABBIX_ACTIVE
+ key: 'system.swap.size[,pfree]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The free space of swap volume/file in percent.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 0b1a37ddf8db402491ac856980437a45
+ name: 'Total swap space'
+ type: ZABBIX_ACTIVE
+ key: 'system.swap.size[,total]'
+ history: 7d
+ units: B
+ description: 'The total space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 156ef93f80d7499198909fc3fbc84672
+ name: 'Available memory'
+ type: ZABBIX_ACTIVE
+ key: 'vm.memory.size[available]'
+ history: 7d
+ units: B
+ description: '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.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 79d2b01adaf14794826f78c860867fc5
+ name: 'Available memory in %'
+ type: ZABBIX_ACTIVE
+ key: 'vm.memory.size[pavailable]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: e1bc17b4c3d7499b954fe10e5feb35e1
+ name: 'Total memory'
+ type: ZABBIX_ACTIVE
+ key: 'vm.memory.size[total]'
+ history: 7d
+ units: B
+ description: 'Total memory in Bytes'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: bb6cff2714e94a05a73aea5760e168c6
+ name: 'Memory utilization'
+ type: DEPENDENT
+ key: vm.memory.utilization
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Memory used percentage is calculated as (100-pavailable)'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100-value);'
+ master_item:
+ key: 'vm.memory.size[pavailable]'
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 11bff052c18b424f9d89b53e0faa2b21
+ expression: 'min(/Linux memory by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ dependencies:
+ -
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ expression: 'max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$MEMORY.AVAILABLE.MIN}'
+ value: 20M
+ description: 'This macro is used as a threshold in memory available trigger.'
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ description: 'This macro is used as a threshold in memory utilization trigger.'
+ -
+ macro: '{$SWAP.PFREE.MIN.WARN}'
+ value: '50'
+ -
+ uuid: fac8b6986be24a8c91f7b0b15439bccf
+ template: 'Linux network interfaces by Zabbix agent active'
+ name: 'Linux network interfaces by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 37a61365e2f34811a389f37aafc04169
+ name: 'Network interface discovery'
+ type: ZABBIX_ACTIVE
+ key: net.if.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of network interfaces.'
+ item_prototypes:
+ -
+ uuid: 62c1ecd956cb496b9d5257dad026add5
+ name: 'Interface {#IFNAME}: Inbound packets discarded'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.in["{#IFNAME}",dropped]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 5b771b290bb847be89bd7729709b7277
+ name: 'Interface {#IFNAME}: Inbound packets with errors'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.in["{#IFNAME}",errors]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: bd9652a4c1dd45eaa31807bdf9a84a79
+ name: 'Interface {#IFNAME}: Bits received'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.in["{#IFNAME}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: f5c36654948041bfb45878117781b02f
+ name: 'Interface {#IFNAME}: Outbound packets discarded'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.out["{#IFNAME}",dropped]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: af4d99f8a7604fdfaaa3190469ddf9ec
+ name: 'Interface {#IFNAME}: Outbound packets with errors'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.out["{#IFNAME}",errors]'
+ delay: 3m
+ history: 7d
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 9cd8c1068368472383c468145c5aecba
+ name: 'Interface {#IFNAME}: Bits sent'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.out["{#IFNAME}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: b38858cf52f945599ca475b635aab285
+ name: 'Interface {#IFNAME}: Operational status'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]'
+ history: 7d
+ trends: '0'
+ description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt'
+ valuemap:
+ name: ifOperStatus
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ var newvalue;
+ switch(value) {
+ case "unknown":
+ newvalue = 0;
+ break;
+ case "notpresent":
+ newvalue = 1;
+ break;
+ case "down":
+ newvalue = 2;
+ break;
+ case "lowerlayerdown":
+ newvalue = 3;
+ break;
+ case "testing":
+ newvalue = 4;
+ break;
+ case "dormant":
+ newvalue = 5;
+ break;
+ case "up":
+ newvalue = 6;
+ break; default:
+ newvalue = "Problem parsing interface operstate in JS";
+ }
+ return newvalue;
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: acaf449feee44624995b9c3d0673cedc
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ name: 'Interface {#IFNAME}: Link down'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ This trigger expression works as follows:
+ 1. Can be triggered if operations status is down.
+ 2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
+ 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)
+
+ WARNING: if closed manually - won't fire again on next poll, because of .diff.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ uuid: 7b3413b3321a4756b8f369a9633a393e
+ name: 'Interface {#IFNAME}: Speed'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]'
+ delay: 5m
+ history: 7d
+ trends: 0d
+ units: bps
+ description: |
+ Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.
+ This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).
+
+ Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1000000'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 1506d09010fc48378b35b434e0eb18c1
+ name: 'Interface {#IFNAME}: Interface type'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]'
+ delay: 1h
+ history: 7d
+ trends: 0d
+ description: |
+ Indicates the interface protocol type as a decimal value.
+ See include/uapi/linux/if_arp.h for all possible values.
+ Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
+ valuemap:
+ name: 'Linux::Interface protocol types'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: 6ce7c1f3b54641bb87684f9c5336d1da
+ expression: |
+ change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
+ and
+ (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1)
+ and
+ (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2)
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ (change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or
+ (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2)
+ name: 'Interface {#IFNAME}: Ethernet has changed to lower speed than it was before'
+ opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
+ priority: INFO
+ description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}: Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 57ff0d15e1634b88920cb6ddccd804c7
+ expression: |
+ (avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or
+ avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and
+ last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and
+ avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])
+ name: 'Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
+ opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'The network interface utilization is close to its estimated maximum bandwidth.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}: Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: b0b3cce08e924447845859391bdf9045
+ expression: |
+ min(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ or min(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ max(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ and max(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ name: 'Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
+ opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}: Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
+ recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 97e93dc9e93f4e299dee1d1424180c6a
+ name: 'Interface {#IFNAME}: Network traffic'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux network interfaces by Zabbix agent active'
+ key: 'net.if.in["{#IFNAME}"]'
+ -
+ sortorder: '1'
+ drawtype: BOLD_LINE
+ color: 2774A4
+ item:
+ host: 'Linux network interfaces by Zabbix agent active'
+ key: 'net.if.out["{#IFNAME}"]'
+ -
+ sortorder: '2'
+ color: F63100
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent active'
+ key: 'net.if.out["{#IFNAME}",errors]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent active'
+ key: 'net.if.in["{#IFNAME}",errors]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent active'
+ key: 'net.if.out["{#IFNAME}",dropped]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ yaxisside: RIGHT
+ item:
+ host: 'Linux network interfaces by Zabbix agent active'
+ key: 'net.if.in["{#IFNAME}",dropped]'
+ macros:
+ -
+ macro: '{$IF.ERRORS.WARN}'
+ value: '2'
+ -
+ macro: '{$IF.UTIL.MAX}'
+ value: '90'
+ description: 'This macro is used as a threshold in interface utilization trigger.'
+ -
+ macro: '{$IFCONTROL}'
+ value: '1'
+ -
+ macro: '{$NET.IF.IFNAME.MATCHES}'
+ value: '^.*$'
+ -
+ macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
+ description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
+ dashboards:
+ -
+ uuid: 4c72409900b84a29bfcfd02648535a2b
+ name: 'Network interfaces'
+ pages:
+ -
+ widgets:
+ -
+ type: GRAPH_PROTOTYPE
+ width: '24'
+ height: '5'
+ fields:
+ -
+ type: INTEGER
+ name: source_type
+ value: '2'
+ -
+ type: INTEGER
+ name: columns
+ value: '1'
+ -
+ type: INTEGER
+ name: rows
+ value: '1'
+ -
+ type: GRAPH_PROTOTYPE
+ name: graphid
+ value:
+ name: 'Interface {#IFNAME}: Network traffic'
+ host: 'Linux network interfaces by Zabbix agent active'
+ valuemaps:
+ -
+ uuid: 9bc9524635a349409e244ad5215c80c1
+ name: ifOperStatus
+ mappings:
+ -
+ value: '0'
+ newvalue: unknown
+ -
+ value: '1'
+ newvalue: notpresent
+ -
+ value: '2'
+ newvalue: down
+ -
+ value: '3'
+ newvalue: lowerlayerdown
+ -
+ value: '4'
+ newvalue: testing
+ -
+ value: '5'
+ newvalue: dormant
+ -
+ value: '6'
+ newvalue: up
+ -
+ uuid: 8f709b791d1342a48615632e86969c92
+ name: 'Linux::Interface protocol types'
+ mappings:
+ -
+ value: '0'
+ newvalue: 'from KA9Q: NET/ROM pseudo'
+ -
+ value: '1'
+ newvalue: Ethernet
+ -
+ value: '2'
+ newvalue: 'Experimental Ethernet'
+ -
+ value: '3'
+ newvalue: 'AX.25 Level 2'
+ -
+ value: '4'
+ newvalue: 'PROnet token ring'
+ -
+ value: '5'
+ newvalue: Chaosnet
+ -
+ value: '6'
+ newvalue: 'IEEE 802.2 Ethernet/TR/TB'
+ -
+ value: '7'
+ newvalue: ARCnet
+ -
+ value: '8'
+ newvalue: APPLEtalk
+ -
+ value: '15'
+ newvalue: 'Frame Relay DLCI'
+ -
+ value: '19'
+ newvalue: ATM
+ -
+ value: '23'
+ newvalue: 'Metricom STRIP (new IANA id)'
+ -
+ value: '24'
+ newvalue: 'IEEE 1394 IPv4 - RFC 2734'
+ -
+ value: '27'
+ newvalue: EUI-64
+ -
+ value: '32'
+ newvalue: InfiniBand
+ -
+ value: '256'
+ newvalue: ARPHRD_SLIP
+ -
+ value: '257'
+ newvalue: ARPHRD_CSLIP
+ -
+ value: '258'
+ newvalue: ARPHRD_SLIP6
+ -
+ value: '259'
+ newvalue: ARPHRD_CSLIP6
+ -
+ value: '260'
+ newvalue: 'Notional KISS type'
+ -
+ value: '264'
+ newvalue: ARPHRD_ADAPT
+ -
+ value: '270'
+ newvalue: ARPHRD_ROSE
+ -
+ value: '271'
+ newvalue: 'CCITT X.25'
+ -
+ value: '272'
+ newvalue: 'Boards with X.25 in firmware'
+ -
+ value: '280'
+ newvalue: 'Controller Area Network'
+ -
+ value: '512'
+ newvalue: ARPHRD_PPP
+ -
+ value: '513'
+ newvalue: 'Cisco HDLC'
+ -
+ value: '516'
+ newvalue: LAPB
+ -
+ value: '517'
+ newvalue: 'Digital''s DDCMP protocol'
+ -
+ value: '518'
+ newvalue: 'Raw HDLC'
+ -
+ value: '519'
+ newvalue: 'Raw IP'
+ -
+ value: '768'
+ newvalue: 'IPIP tunnel'
+ -
+ value: '769'
+ newvalue: 'IP6IP6 tunnel'
+ -
+ value: '770'
+ newvalue: 'Frame Relay Access Device'
+ -
+ value: '771'
+ newvalue: 'SKIP vif'
+ -
+ value: '772'
+ newvalue: 'Loopback device'
+ -
+ value: '773'
+ newvalue: 'Localtalk device'
+ -
+ value: '774'
+ newvalue: 'Fiber Distributed Data Interface'
+ -
+ value: '775'
+ newvalue: 'AP1000 BIF'
+ -
+ value: '776'
+ newvalue: 'sit0 device - IPv6-in-IPv4'
+ -
+ value: '777'
+ newvalue: 'IP over DDP tunneller'
+ -
+ value: '778'
+ newvalue: 'GRE over IP'
+ -
+ value: '779'
+ newvalue: 'PIMSM register interface'
+ -
+ value: '780'
+ newvalue: 'High Performance Parallel Interface'
+ -
+ value: '781'
+ newvalue: 'Nexus 64Mbps Ash'
+ -
+ value: '782'
+ newvalue: 'Acorn Econet'
+ -
+ value: '783'
+ newvalue: Linux-IrDA
+ -
+ value: '784'
+ newvalue: 'Point to point fibrechannel'
+ -
+ value: '785'
+ newvalue: 'Fibrechannel arbitrated loop'
+ -
+ value: '786'
+ newvalue: 'Fibrechannel public loop'
+ -
+ value: '787'
+ newvalue: 'Fibrechannel fabric'
+ -
+ value: '800'
+ newvalue: 'Magic type ident for TR'
+ -
+ value: '801'
+ newvalue: 'IEEE 802.11'
+ -
+ value: '802'
+ newvalue: 'IEEE 802.11 + Prism2 header'
+ -
+ value: '803'
+ newvalue: 'IEEE 802.11 + radiotap header'
+ -
+ value: '804'
+ newvalue: ARPHRD_IEEE802154
+ -
+ value: '805'
+ newvalue: 'IEEE 802.15.4 network monitor'
+ -
+ value: '820'
+ newvalue: 'PhoNet media type'
+ -
+ value: '821'
+ newvalue: 'PhoNet pipe header'
+ -
+ value: '822'
+ newvalue: 'CAIF media type'
+ -
+ value: '823'
+ newvalue: 'GRE over IPv6'
+ -
+ value: '824'
+ newvalue: 'Netlink header'
+ -
+ value: '825'
+ newvalue: 'IPv6 over LoWPAN'
+ -
+ value: '826'
+ newvalue: 'Vsock monitor header'
+ triggers:
+ -
+ uuid: e15f1c71f77b4c86b8ae71469b2f297e
+ expression: 'last(/Linux generic by Zabbix agent active/proc.num)/last(/Linux generic by Zabbix agent active/kernel.maxproc)*100>80'
+ name: 'Getting closer to process limit (over 80% used)'
+ opdata: '{ITEM.LASTVALUE1} active, {ITEM.LASTVALUE2} limit.'
+ priority: WARNING
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: dea1c2fccd8f4e52bedd85fe23db7228
+ expression: 'max(/Linux memory by Zabbix agent active/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent active/system.swap.size[,total])>0'
+ 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'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Linux memory by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
+ -
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ expression: 'max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: 1ba414b62eef4ca6b198f00a4cdd2bde
+ expression: 'max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0'
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
+ priority: AVERAGE
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 813c4c7139a3497dbb6b9b977eb51842
+ expression: |
+ min(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
+ and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg5])>0
+ and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg15])>0
+ name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
+ opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}'
+ priority: AVERAGE
+ description: 'Per CPU load average is too high. Your system may be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ graphs:
+ -
+ uuid: c82ee8589e5a4aa0b5e2a94293cefada
+ name: 'CPU jumps'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: system.cpu.switches
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: system.cpu.intr
+ -
+ uuid: 2b52abbb5839463093fcd894f1252ff7
+ name: 'CPU usage'
+ type: STACKED
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,system]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,user]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,nice]'
+ -
+ sortorder: '3'
+ color: A54F10
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,iowait]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,steal]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,interrupt]'
+ -
+ sortorder: '6'
+ color: AC8C14
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,softirq]'
+ -
+ sortorder: '7'
+ color: 611F27
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,guest]'
+ -
+ sortorder: '8'
+ color: F230E0
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.util[,guest_nice]'
+ -
+ uuid: 0ef46c547fb84b47857d6fc0a3e1d1b6
+ name: 'CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: system.cpu.util
+ -
+ uuid: a4654a31b6664d02bf8ec0a4ac4d968b
+ name: 'Memory usage'
+ ymin_type_1: FIXED
+ graph_items:
+ -
+ drawtype: BOLD_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux memory by Zabbix agent active'
+ key: 'vm.memory.size[total]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux memory by Zabbix agent active'
+ key: 'vm.memory.size[available]'
+ -
+ uuid: ead8371cd5194410820f03d0a5732233
+ name: 'Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux memory by Zabbix agent active'
+ key: vm.memory.utilization
+ -
+ uuid: c96b7c45ae7c4ab3a544cbbd4a0e374c
+ name: Processes
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux generic by Zabbix agent active'
+ key: proc.num
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux generic by Zabbix agent active'
+ key: 'proc.num[,,run]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux generic by Zabbix agent active'
+ key: kernel.maxproc
+ -
+ uuid: d3169f2fa1b341e3a7527a305814a0ab
+ name: 'Swap usage'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux memory by Zabbix agent active'
+ key: 'system.swap.size[,free]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux memory by Zabbix agent active'
+ key: 'system.swap.size[,total]'
+ -
+ uuid: aa2447f0256d4985af78af8e1cf7e7bd
+ name: 'System load'
+ ymin_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.load[all,avg1]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.load[all,avg5]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: 'system.cpu.load[all,avg15]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Linux CPU by Zabbix agent active'
+ key: system.cpu.num
diff --git a/templates/module/linux_snmp_snmp/README.md b/templates/module/linux_snmp_snmp/README.md
new file mode 100644
index 00000000000..26072ac5b43
--- /dev/null
+++ b/templates/module/linux_snmp_snmp/README.md
@@ -0,0 +1,231 @@
+
+# Linux memory SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$MEMORY.AVAILABLE.MIN} |<p>-</p> |`20M` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|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 |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> |
+|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |CALCULATED |system.swap.pfree[snmp]<p>**Expression**:</p>`last(//system.swap.free[memAvailSwap.0])/last(//system.swap.total[memTotalSwap.0])*100` |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Linux memory SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX}` |AVERAGE |<p>**Depends on**:</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
+|Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2}) |<p>-</p> |`max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0` |AVERAGE | |
+|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`max(/Linux memory SNMP/system.swap.pfree[snmp],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory SNMP/system.swap.total[memTotalSwap.0])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: 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.
+
+# Linux block devices SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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]*)` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Block devices discovery |<p>Block devices are discovered from UCD-DISKIO-MIB::diskIOTable (http://net-snmp.sourceforge.net/docs/mibs/ucdDiskIOMIB.html#diskIOTable)</p> |SNMP |vfs.dev.discovery[snmp]<p>**Filter**:</p>AND <p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Storage |{#DEVNAME}: Disk read rate |<p>MIB: UCD-DISKIO-MIB</p><p>The number of read accesses from this device since boot.</p> |SNMP |vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Storage |{#DEVNAME}: Disk write rate |<p>MIB: UCD-DISKIO-MIB</p><p>The number of write accesses from this device since boot.</p> |SNMP |vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Storage |{#DEVNAME}: Disk utilization |<p>MIB: UCD-DISKIO-MIB</p><p>The 1 minute average load of disk (%)</p> |SNMP |vfs.dev.util[diskIOLA1.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux CPU SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$LOAD_AVG_PER_CPU.MAX.WARN} |<p>Load per CPU considered sustainable. Tune if needed.</p> |`1.5` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU discovery |<p>This discovery will create set of per core CPU metrics from UCD-SNMP-MIB, using {#CPU.COUNT} in preprocessing. That's the only reason why LLD is used.</p> |DEPENDENT |cpu.discovery[snmp]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |Load average (1m avg) |<p>MIB: UCD-SNMP-MIB</p> |SNMP |system.cpu.load.avg1[laLoad.1] |
+|CPU |Load average (5m avg) |<p>MIB: UCD-SNMP-MIB</p> |SNMP |system.cpu.load.avg5[laLoad.2] |
+|CPU |Load average (15m avg) |<p>MIB: UCD-SNMP-MIB</p> |SNMP |system.cpu.load.avg15[laLoad.3] |
+|CPU |Number of CPUs |<p>MIB: HOST-RESOURCES-MIB</p><p>Count the number of CPU cores by counting number of cores discovered in hrProcessorTable using LLD</p> |SNMP |system.cpu.num[snmp]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//count the number of cores return JSON.parse(value).length; `</p> |
+|CPU |Interrupts per second |<p>-</p> |SNMP |system.cpu.intr[ssRawInterrupts.0]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|CPU |Context switches per second |<p>-</p> |SNMP |system.cpu.switches[ssRawContexts.0]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|CPU |CPU idle time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent doing nothing.</p> |SNMP |system.cpu.idle[ssCpuRawIdle.{#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 system time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent running the kernel and its processes.</p> |SNMP |system.cpu.system[ssCpuRawSystem.{#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 user time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent running users' processes that are not niced.</p> |SNMP |system.cpu.user[ssCpuRawUser.{#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 steal time |<p>MIB: UCD-SNMP-MIB</p><p>The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).</p> |SNMP |system.cpu.steal[ssCpuRawSteal.{#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 softirq time |<p>MIB: UCD-SNMP-MIB</p><p>The amount of time the CPU has been servicing software interrupts.</p> |SNMP |system.cpu.softirq[ssCpuRawSoftIRQ.{#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 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> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m) |<p>Per CPU load average is too high. Your system may be slow to respond.</p> |`min(/Linux CPU SNMP/system.cpu.load.avg1[laLoad.1],5m)/last(/Linux CPU SNMP/system.cpu.num[snmp])>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux CPU SNMP/system.cpu.load.avg5[laLoad.2])>0 and last(/Linux CPU SNMP/system.cpu.load.avg15[laLoad.3])>0` |AVERAGE | |
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Linux CPU SNMP/system.cpu.util[snmp,{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Linux filesystems SNMP
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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)$` |
+|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^\s$` |
+|{$VFS.FS.INODE.PFREE.MIN.CRIT} |<p>-</p> |`10` |
+|{$VFS.FS.INODE.PFREE.MIN.WARN} |<p>-</p> |`20` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Mounted filesystem discovery |<p>HOST-RESOURCES-MIB::hrStorage discovery with storage filter</p> |SNMP |vfs.fs.discovery[snmp]<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|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` |
+|Storage |{#FSNAME}: Free inodes in % |<p>MIB: UCD-SNMP-MIB</p><p>If having problems collecting this item make sure access to UCD-SNMP-MIB is allowed.</p> |SNMP |vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100-value);`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
+|{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
+|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}` |AVERAGE | |
+|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}` |WARNING |<p>**Depends on**:</p><p>- {#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
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
new file mode 100644
index 00000000000..d4b79c5d209
--- /dev/null
+++ b/templates/module/linux_snmp_snmp/template_module_linux_snmp_snmp.yaml
@@ -0,0 +1,1270 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T08:32:23Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: 8278f5e79ef2420cab500a147cc72009
+ template: 'Linux block devices SNMP'
+ name: 'Linux block devices SNMP'
+ description: |
+ MIBs used:
+ UCD-DISKIO-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: a85f20bbf86045438460bf439422aaec
+ name: 'Block devices discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#DEVNAME},1.3.6.1.4.1.2021.13.15.1.1.2]'
+ key: 'vfs.dev.discovery[snmp]'
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Block devices are discovered from UCD-DISKIO-MIB::diskIOTable (http://net-snmp.sourceforge.net/docs/mibs/ucdDiskIOMIB.html#diskIOTable)'
+ item_prototypes:
+ -
+ uuid: ed71e7a243594c3bb0c2055b5cfb6f62
+ name: '{#DEVNAME}: Disk read rate'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.13.15.1.1.5.{#SNMPINDEX}'
+ key: 'vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '!r/s'
+ description: |
+ MIB: UCD-DISKIO-MIB
+ The number of read accesses from this device since boot.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 5e96a297e7e54c0ba4607949c854edc8
+ name: '{#DEVNAME}: Disk utilization'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.13.15.1.1.9.{#SNMPINDEX}'
+ key: 'vfs.dev.util[diskIOLA1.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-DISKIO-MIB
+ The 1 minute average load of disk (%)
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: a060b61ad4f24be299c0a9b2582dda87
+ name: '{#DEVNAME}: Disk write rate'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.13.15.1.1.6.{#SNMPINDEX}'
+ key: 'vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '!w/s'
+ description: |
+ MIB: UCD-DISKIO-MIB
+ The number of write accesses from this device since boot.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ graph_prototypes:
+ -
+ uuid: 15f4080e061d4b86a253709d56f444a5
+ name: '{#DEVNAME}: Disk read/write rates'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux block devices SNMP'
+ key: 'vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux block devices SNMP'
+ key: 'vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}]'
+ macros:
+ -
+ macro: '{$VFS.DEV.DEVNAME.MATCHES}'
+ value: .+
+ description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ 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'
+ -
+ uuid: f55b1b1c10a44fe8aef0631f6f41b86d
+ template: 'Linux CPU SNMP'
+ name: 'Linux CPU SNMP'
+ description: |
+ MIBs used:
+ HOST-RESOURCES-MIB
+ UCD-SNMP-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: cf935e4e2f224ce5a9d09662df90e5b2
+ name: 'Interrupts per second'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.59.0
+ key: 'system.cpu.intr[ssRawInterrupts.0]'
+ history: 7d
+ value_type: FLOAT
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 335279fa524d48089d99ffba47017a0f
+ name: 'Load average (1m avg)'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.10.1.3["index","1.3.6.1.4.1.2021.10.1.2", "Load-1"]'
+ key: 'system.cpu.load.avg1[laLoad.1]'
+ history: 7d
+ value_type: FLOAT
+ description: 'MIB: UCD-SNMP-MIB'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 74a03675fdba49969d7286d718edc4e8
+ name: 'Load average (5m avg)'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.10.1.3["index","1.3.6.1.4.1.2021.10.1.2", "Load-5"]'
+ key: 'system.cpu.load.avg5[laLoad.2]'
+ history: 7d
+ value_type: FLOAT
+ description: 'MIB: UCD-SNMP-MIB'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: d774c8d00aab4158b856feda354fcef6
+ name: 'Load average (15m avg)'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.10.1.3["index","1.3.6.1.4.1.2021.10.1.2", "Load-15"]'
+ key: 'system.cpu.load.avg15[laLoad.3]'
+ history: 7d
+ value_type: FLOAT
+ description: 'MIB: UCD-SNMP-MIB'
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 20dbc1d9ed25400983eadb6e9d6f1f04
+ name: 'Number of CPUs'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.25.3.3.1.1]'
+ key: 'system.cpu.num[snmp]'
+ history: 7d
+ description: |
+ MIB: HOST-RESOURCES-MIB
+ Count the number of CPU cores by counting number of cores discovered in hrProcessorTable using LLD
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //count the number of cores
+ return JSON.parse(value).length;
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 2e52405bed144bd392ba386d8d8fa752
+ name: 'Context switches per second'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.60.0
+ key: 'system.cpu.switches[ssRawContexts.0]'
+ history: 7d
+ value_type: FLOAT
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: cpu
+ discovery_rules:
+ -
+ uuid: bb04cfa331214963b311d7b397cb3c12
+ name: 'CPU discovery'
+ type: DEPENDENT
+ key: 'cpu.discovery[snmp]'
+ delay: '0'
+ description: 'This discovery will create set of per core CPU metrics from UCD-SNMP-MIB, using {#CPU.COUNT} in preprocessing. That''s the only reason why LLD is used.'
+ item_prototypes:
+ -
+ uuid: 7cb1bdc138a041039b229804e5f55676
+ name: 'CPU guest time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.65.0
+ key: 'system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ Guest time (time spent running a virtual CPU for a guest operating system)
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 47939519397147e7be84d1d3223e8111
+ name: 'CPU guest nice time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.66.0
+ key: 'system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ 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)
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: b20769f44f8247e1a6a5908ff084ff81
+ name: 'CPU idle time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.53.0
+ key: 'system.cpu.idle[ssCpuRawIdle.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The time the CPU has spent doing nothing.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 7da67bc8887a4d36abba6b041a72f221
+ name: 'CPU interrupt time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.56.0
+ key: 'system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The amount of time the CPU has been servicing hardware interrupts.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: ce41593112f1497884643f7f99075f4b
+ name: 'CPU iowait time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.54.0
+ key: 'system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ Amount of time the CPU has been waiting for I/O to complete.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 80c42f533f3d40529a1451ecdbaf3d62
+ name: 'CPU nice time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.51.0
+ key: 'system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The time the CPU has spent running users' processes that have been niced.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 1c121eeb3f864dd68569efff6ab79ac8
+ name: 'CPU softirq time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.61.0
+ key: 'system.cpu.softirq[ssCpuRawSoftIRQ.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The amount of time the CPU has been servicing software interrupts.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: b98feceb5d1b4dafbbbbc80d3f9598f9
+ name: 'CPU steal time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.64.0
+ key: 'system.cpu.steal[ssCpuRawSteal.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 0b45abb043f14f23bd8d71f0bca70c06
+ name: 'CPU system time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.52.0
+ key: 'system.cpu.system[ssCpuRawSystem.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The time the CPU has spent running the kernel and its processes.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 295af9e607aa46c4886a49905137b7ad
+ name: 'CPU user time'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.11.50.0
+ key: 'system.cpu.user[ssCpuRawUser.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ The time the CPU has spent running users' processes that are not niced.
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //to get utilization in %, divide by N, where N is number of cores.
+ return value/{#CPU.COUNT}
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: aa01918c9d864f498cc211772103ba27
+ name: 'CPU utilization'
+ type: DEPENDENT
+ key: 'system.cpu.util[snmp,{#SNMPINDEX}]'
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU utilization in %'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //Calculate utilization
+ return (100 - value)
+ master_item:
+ key: 'system.cpu.idle[ssCpuRawIdle.{#SNMPINDEX}]'
+ tags:
+ -
+ tag: component
+ value: cpu
+ trigger_prototypes:
+ -
+ uuid: 305450aac4ce4170a3a7942f6b092593
+ expression: 'min(/Linux CPU SNMP/system.cpu.util[snmp,{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graph_prototypes:
+ -
+ uuid: 1ed285cca7774aad9335101f373eb642
+ name: 'CPU usage{#SINGLETON}'
+ type: STACKED
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.system[ssCpuRawSystem.{#SNMPINDEX}]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.user[ssCpuRawUser.{#SNMPINDEX}]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}]'
+ -
+ sortorder: '3'
+ color: A54F10
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.steal[ssCpuRawSteal.{#SNMPINDEX}]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}]'
+ -
+ sortorder: '6'
+ color: AC8C14
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.softirq[ssCpuRawSoftIRQ.{#SNMPINDEX}]'
+ -
+ sortorder: '7'
+ color: 611F27
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]'
+ -
+ sortorder: '8'
+ color: F230E0
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]'
+ -
+ uuid: 27556abf8985458f9d300ab5981f6e96
+ name: 'CPU utilization{#SINGLETON}'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.util[snmp,{#SNMPINDEX}]'
+ master_item:
+ key: 'system.cpu.num[snmp]'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ //count the number of CPU cores
+ return JSON.stringify([{"{#CPU.COUNT}": value, "{#SNMPINDEX}": 0, "{#SINGLETON}":""}])
+ macros:
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ -
+ macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}'
+ value: '1.5'
+ description: 'Load per CPU considered sustainable. Tune if needed.'
+ -
+ uuid: cbaf0383cb934294ac53a28ddfd49434
+ template: 'Linux filesystems SNMP'
+ name: 'Linux filesystems SNMP'
+ description: |
+ MIBs used:
+ HOST-RESOURCES-MIB
+ UCD-SNMP-MIB
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: c55b2f96bd50421482dfcc230e6de01e
+ name: 'Mounted filesystem discovery'
+ type: SNMP_AGENT
+ snmp_oid: 'discovery[{#FSNAME},1.3.6.1.2.1.25.2.3.1.3,{#FSTYPE},1.3.6.1.2.1.25.2.3.1.2,{#ALLOC_UNITS},1.3.6.1.2.1.25.2.3.1.4]'
+ key: 'vfs.fs.discovery[snmp]'
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'HOST-RESOURCES-MIB::hrStorage discovery with storage filter'
+ item_prototypes:
+ -
+ uuid: 5c0b2605afe84c288207c04b9946dfbf
+ name: '{#FSNAME}: Free inodes in %'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.4.1.2021.9.1.10["index","1.3.6.1.4.1.2021.9.1.2", "{#FSNAME}"]'
+ key: 'vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ MIB: UCD-SNMP-MIB
+ If having problems collecting this item make sure access to UCD-SNMP-MIB is allowed.
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100-value);'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ uuid: 377f4ffa529f4b0690a11228f4021294
+ expression: 'min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
+ opdata: 'Free inodes: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ It may become impossible to write to disk if there are no index nodes left.
+ As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 5f80199affa44ed7a6b875c49ca00aa7
+ expression: 'min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}'
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)'
+ opdata: 'Free inodes: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: |
+ It may become impossible to write to disk if there are no index nodes left.
+ As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
+ dependencies:
+ -
+ name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
+ expression: 'min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 3cc99f32a3a44b2a94c2bab5f2765c8e
+ name: '{#FSNAME}: Space utilization'
+ type: CALCULATED
+ key: 'vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ params: '(last(//vfs.fs.used[hrStorageUsed.{#SNMPINDEX}])/last(//vfs.fs.total[hrStorageSize.{#SNMPINDEX}]))*100'
+ description: 'Space utilization in % for {#FSNAME}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: 9e9b2eb864164eebb4825ba0331b0b95
+ name: '{#FSNAME}: Total space'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.2.1.25.2.3.1.5.{#SNMPINDEX}'
+ key: 'vfs.fs.total[hrStorageSize.{#SNMPINDEX}]'
+ history: 7d
+ units: B
+ description: |
+ MIB: HOST-RESOURCES-MIB
+ The size of the storage represented by this entry, in units of hrStorageAllocationUnits.
+ 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.
+ 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.
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '{#ALLOC_UNITS}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: 2cfbdae09907476ea6d73af86338f279
+ name: '{#FSNAME}: Used space'
+ type: SNMP_AGENT
+ snmp_oid: '1.3.6.1.2.1.25.2.3.1.6.{#SNMPINDEX}'
+ key: 'vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]'
+ history: 7d
+ units: B
+ description: |
+ MIB: HOST-RESOURCES-MIB
+ The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '{#ALLOC_UNITS}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ 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)
+ name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: capacity
+ -
+ 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)
+ name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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)
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: f1000d7a017f4954a32103b345ae4fdf
+ name: '{#FSNAME}: Disk space usage'
+ width: '600'
+ height: '340'
+ type: PIE
+ show_3d: 'YES'
+ graph_items:
+ -
+ color: '969696'
+ calc_fnc: LAST
+ type: GRAPH_SUM
+ item:
+ host: 'Linux filesystems SNMP'
+ key: 'vfs.fs.total[hrStorageSize.{#SNMPINDEX}]'
+ -
+ sortorder: '1'
+ color: C80000
+ calc_fnc: LAST
+ item:
+ host: 'Linux filesystems SNMP'
+ key: 'vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]'
+ macros:
+ -
+ macro: '{$VFS.FS.FSNAME.MATCHES}'
+ value: .+
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ value: ^(/dev|/sys|/run|/proc|.+/shm$)
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSTYPE.MATCHES}'
+ value: '.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
+ -
+ macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}'
+ value: '10'
+ -
+ macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}'
+ value: '20'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.CRIT}'
+ value: '90'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.WARN}'
+ value: '80'
+ -
+ uuid: 443e4897fb0a4eef9d4624a3baa8f174
+ template: 'Linux memory SNMP'
+ name: 'Linux memory SNMP'
+ description: |
+ MIBs used:
+ UCD-SNMP-MIB
+
+ Known Issues:
+
+ Description: 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.
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 286b7a7da5bc46349d98d40e0fa87bb3
+ name: 'Free swap space'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.4.4.0
+ key: 'system.swap.free[memAvailSwap.0]'
+ history: 7d
+ units: B
+ description: |
+ MIB: UCD-SNMP-MIB
+ The amount of swap space currently unused or available.
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1024'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 95b96317790d467c8f2c3acbe4f508a2
+ name: 'Free swap space in %'
+ type: CALCULATED
+ key: 'system.swap.pfree[snmp]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ params: 'last(//system.swap.free[memAvailSwap.0])/last(//system.swap.total[memTotalSwap.0])*100'
+ description: 'The free space of swap volume/file in percent.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 7e3c9bc424684af8b16852548145d240
+ name: 'Total swap space'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.4.3.0
+ key: 'system.swap.total[memTotalSwap.0]'
+ history: 7d
+ units: B
+ description: |
+ MIB: UCD-SNMP-MIB
+ The total amount of swap space configured for this host.
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1024'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: d2f2a3127c83459696bb7496de04830b
+ name: 'Available memory'
+ type: CALCULATED
+ key: 'vm.memory.available[snmp]'
+ history: 7d
+ units: B
+ params: 'last(//vm.memory.free[memAvailReal.0])+last(//vm.memory.buffers[memBuffer.0])+last(//vm.memory.cached[memCached.0])'
+ description: '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.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 81c8a8aa72144ec99c0723bd1c7efde0
+ name: 'Memory (buffers)'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.4.14.0
+ key: 'vm.memory.buffers[memBuffer.0]'
+ history: 7d
+ units: B
+ description: |
+ MIB: UCD-SNMP-MIB
+ Memory used by kernel buffers (Buffers in /proc/meminfo)
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1024'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: a74e6bc72c8c45f2b01ee1b50ce64fdc
+ name: 'Memory (cached)'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.4.15.0
+ key: 'vm.memory.cached[memCached.0]'
+ history: 7d
+ units: B
+ description: |
+ MIB: UCD-SNMP-MIB
+ Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1024'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: b13aae9bb13c432998688f8c3230ddb2
+ name: 'Free memory'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.4.6.0
+ key: 'vm.memory.free[memAvailReal.0]'
+ history: 7d
+ units: B
+ description: 'MIB: UCD-SNMP-MIB'
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1024'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 849c5cd7aec94ed48c6a0a321b54d801
+ name: 'Total memory'
+ type: SNMP_AGENT
+ snmp_oid: 1.3.6.1.4.1.2021.4.5.0
+ key: 'vm.memory.total[memTotalReal.0]'
+ history: 7d
+ units: B
+ description: |
+ MIB: UCD-SNMP-MIB
+ Total memory in Bytes
+ preprocessing:
+ -
+ type: MULTIPLIER
+ parameters:
+ - '1024'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: ac10ac53a99e464bbf0c5894d4297cfc
+ name: 'Memory utilization'
+ type: CALCULATED
+ key: 'vm.memory.util[snmp]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ params: '(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'
+ description: '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.'
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 38e4d31ccb594ba1a041c47633887ef6
+ expression: 'min(/Linux memory SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX}'
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ dependencies:
+ -
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ expression: 'max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$MEMORY.AVAILABLE.MIN}'
+ value: 20M
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ -
+ macro: '{$SWAP.PFREE.MIN.WARN}'
+ value: '50'
+ triggers:
+ -
+ uuid: 12324c6e7b564c858406702148b43bc4
+ expression: 'max(/Linux memory SNMP/system.swap.pfree[snmp],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory SNMP/system.swap.total[memTotalSwap.0])>0'
+ 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'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Linux memory SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX}'
+ -
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ expression: 'max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: 687586e62f4b4191aa95ba1ba74c7787
+ expression: 'max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0'
+ name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
+ opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
+ priority: AVERAGE
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 4e08b6e41268476292ac92da123bd8d7
+ expression: |
+ min(/Linux CPU SNMP/system.cpu.load.avg1[laLoad.1],5m)/last(/Linux CPU SNMP/system.cpu.num[snmp])>{$LOAD_AVG_PER_CPU.MAX.WARN}
+ and last(/Linux CPU SNMP/system.cpu.load.avg5[laLoad.2])>0
+ and last(/Linux CPU SNMP/system.cpu.load.avg15[laLoad.3])>0
+ name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
+ opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}'
+ priority: AVERAGE
+ description: 'Per CPU load average is too high. Your system may be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ graphs:
+ -
+ uuid: 1b06aa0505e94191bce3bf15d41ad113
+ name: 'CPU jumps'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.switches[ssRawContexts.0]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.intr[ssRawInterrupts.0]'
+ -
+ uuid: 6af175b5899946c5bae1e7ab4e8f0635
+ name: 'Memory usage'
+ ymin_type_1: FIXED
+ graph_items:
+ -
+ drawtype: BOLD_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux memory SNMP'
+ key: 'vm.memory.total[memTotalReal.0]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Linux memory SNMP'
+ key: 'vm.memory.available[snmp]'
+ -
+ uuid: edd17c68085b4a328c24ebd8d37fd30c
+ name: 'Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Linux memory SNMP'
+ key: 'vm.memory.util[snmp]'
+ -
+ uuid: 24bd0481e30a49a78410fef4e1470546
+ name: 'Swap usage'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux memory SNMP'
+ key: 'system.swap.free[memAvailSwap.0]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux memory SNMP'
+ key: 'system.swap.total[memTotalSwap.0]'
+ -
+ uuid: 1ec155ff28e14859b26e9804e96c7fb8
+ name: 'System load'
+ ymin_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.load.avg1[laLoad.1]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.load.avg5[laLoad.2]'
+ -
+ sortorder: '2'
+ color: F63100
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.load.avg15[laLoad.3]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Linux CPU SNMP'
+ key: 'system.cpu.num[snmp]'
diff --git a/templates/module/windows_agent/README.md b/templates/module/windows_agent/README.md
new file mode 100644
index 00000000000..a246c241680
--- /dev/null
+++ b/templates/module/windows_agent/README.md
@@ -0,0 +1,399 @@
+
+# Windows CPU by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.INTERRUPT.CRIT.MAX} |<p>The critical threshold of the % Interrupt Time counter.</p> |`50` |
+|{$CPU.PRIV.CRIT.MAX} |<p>The threshold of the % Privileged Time counter.</p> |`30` |
+|{$CPU.QUEUE.CRIT.MAX} |<p>The threshold of the Processor Queue Length counter.</p> |`3` |
+|{$CPU.UTIL.CRIT} |<p>The critical threshold of the CPU utilization in %.</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|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"] |
+|CPU |CPU DPC time |<p>Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure</p><p>calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a</p><p>component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is</p><p>sustained, there may be a processor bottleneck or an application or hardware related issue that can</p><p>significantly diminish overall system performance.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% DPC Time"] |
+|CPU |CPU user time |<p>The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing</p><p>in User mode.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% User Time"] |
+|CPU |Number of cores |<p>The number of logical processors available on the computer.</p> |ZABBIX_PASSIVE |wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] |
+|CPU |CPU queue length |<p>The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue</p><p>and are waiting to be executed.</p> |ZABBIX_PASSIVE |perf_counter_en["\System\Processor Queue Length"] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+|CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m) |<p>"The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."</p><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> |`min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
+|CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m) |<p>The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.</p> |`min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
+|CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m) |<p>The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.</p> |`min(/Windows CPU by Zabbix agent/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows memory by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$MEM.PAGE_SEC.CRIT.MAX} |<p>The warning threshold of the Memory Pages/sec counter.</p> |`1000` |
+|{$MEM.PAGE_TABLE_CRIT.MIN} |<p>The warning threshold of the Free System Page Table Entries counter.</p> |`5000` |
+|{$MEMORY.UTIL.MAX} |<p>The warning threshold of the Memory util item.</p> |`90` |
+|{$SWAP.PFREE.MIN.WARN} |<p>The warning threshold of the minimum free swap.</p> |`20` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|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 |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> |
+|Memory |Used swap space in % |<p>The used space of swap volume/file in percent.</p> |ZABBIX_PASSIVE |perf_counter_en["\Paging file(_Total)\% Usage"] |
+|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_PASSIVE |system.swap.size[,total] |
+|Memory |Free system page table entries |<p>This indicates the number of page table entries not currently in use by the system. If the number is less</p><p>than 5,000, there may well be a memory leak or you running out of memory.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Free System Page Table Entries"] |
+|Memory |Memory page faults per second |<p>Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages</p><p>faulted per second because only one page is faulted in each fault operation, hence this is also equal</p><p>to the number of page fault operations. This counter includes both hard faults (those that require</p><p>disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most</p><p>processors can handle large numbers of soft faults without significant consequence. However, hard faults,</p><p>which require disk access, can cause significant delays.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Page Faults/sec"] |
+|Memory |Memory pages per second |<p>This measures the rate at which pages are read from or written to disk to resolve hard page faults.</p><p>If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Pages/sec"] |
+|Memory |Memory pool non-paged |<p>This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects</p><p>that cannot be written to disk but instead must remain in physical memory as long as they are allocated.</p><p>There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).</p><p>A typical Event ID 2019 is recorded in the system event log.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Pool Nonpaged Bytes"] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`min(/Windows memory by Zabbix agent/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
+|Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m) |<p>The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.</p> |`max(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
+|The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m) |<p>The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |`min(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows filesystems by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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> |`.*` |
+|{$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> |`.*` |
+|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>The critical threshold of the filesystem utilization in percent.</p> |`90` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>The warning threshold of the filesystem utilization in percent.</p> |`80` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_PASSIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p><p>- {#FSDRIVETYPE} MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.MATCHES}`</p><p>- {#FSDRIVETYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Filesystems |{#FSLABEL}({#FSNAME}): Used space |<p>Used storage in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},used] |
+|Filesystems |{#FSLABEL}({#FSNAME}): Total space |<p>Total space in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},total] |
+|Filesystems |{#FSLABEL}({#FSNAME}): Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},pused] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
+|{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows physical disks by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$VFS.DEV.DEVNAME.MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`_Total` |
+|{$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` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Physical disks discovery |<p>Discovery of installed physical disks.</p> |ZABBIX_PASSIVE |perf_instance_en.discovery[PhysicalDisk]<p>**Preprocessing**:</p><p>- STR_REPLACE: `{#INSTANCE} {#DEVNAME}`</p><p>**Filter**:</p>AND <p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Storage |{#DEVNAME}: Disk read rate |<p>Rate of read operations on the disk.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] |
+|Storage |{#DEVNAME}: Disk write rate |<p>Rate of write operations on the disk.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] |
+|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] |
+|Storage |{#DEVNAME}: Disk utilization by idle time |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
+|Storage |{#DEVNAME}: Disk read request avg waiting time |<p>The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] |
+|Storage |{#DEVNAME}: Disk write request avg waiting time |<p>The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] |
+|Storage |{#DEVNAME}: Average disk read queue length |<p>Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] |
+|Storage |{#DEVNAME}: Average disk write queue length |<p>Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m) |<p>The disk appears to be under heavy load</p> |`min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m</p><p>- {#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)</p> |
+|{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
+|{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows generic by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$SYSTEM.FUZZYTIME.MAX} |<p>The threshold for difference of system time in seconds.</p> |`60` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|General |System local time |<p>System local time of the host.</p> |ZABBIX_PASSIVE |system.localtime |
+|General |System name |<p>System host name.</p> |ZABBIX_PASSIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|General |System description |<p>System description of the host.</p> |ZABBIX_PASSIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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> |
+|Status |Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_PASSIVE |system.uptime |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Windows generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
+|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Windows generic by Zabbix agent/system.hostname,#1)<>last(/Windows generic by Zabbix agent/system.hostname,#2) and length(last(/Windows generic by Zabbix agent/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
+|Host has been restarted (uptime < 10m) |<p>The device uptime is less than 10 minutes.</p> |`last(/Windows generic by Zabbix agent/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows network by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
+|{$IF.UTIL.MAX} |<p>-</p> |`90` |
+|{$IFCONTROL} |<p>-</p> |`1` |
+|{$NET.IF.IFALIAS.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$NET.IF.IFALIAS.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
+|{$NET.IF.IFDESCR.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$NET.IF.IFDESCR.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
+|{$NET.IF.IFNAME.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$NET.IF.IFNAME.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Network interfaces discovery |<p>Discovery of installed network interfaces.</p> |DEPENDENT |net.if.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p><p>- {#IFDESCR} MATCHES_REGEX `{$NET.IF.IFDESCR.MATCHES}`</p><p>- {#IFDESCR} NOT_MATCHES_REGEX `{$NET.IF.IFDESCR.NOT_MATCHES}`</p><p>- {#IFALIAS} MATCHES_REGEX `{$NET.IF.IFALIAS.MATCHES}`</p><p>- {#IFALIAS} NOT_MATCHES_REGEX `{$NET.IF.IFALIAS.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>Incoming traffic on the network interface.</p> |ZABBIX_PASSIVE |net.if.in["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits sent |<p>Outgoing traffic on the network interface.</p> |ZABBIX_PASSIVE |net.if.out["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded |<p>The number of incoming packets dropped on the network interface.</p> |ZABBIX_PASSIVE |net.if.in["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded |<p>The number of outgoing packets dropped on the network interface.</p> |ZABBIX_PASSIVE |net.if.out["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors |<p>The number of incoming packets with errors on the network interface.</p> |ZABBIX_PASSIVE |net.if.in["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors |<p>The number of outgoing packets with errors on the network interface.</p> |ZABBIX_PASSIVE |net.if.out["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Speed |<p>Estimated bandwidth of the network interface if any.</p> |DEPENDENT |net.if.speed["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].Speed.first()`</p><p>⛔️ON_FAIL: `CUSTOM_VALUE -> 0`</p><p>- JAVASCRIPT: `return (value=='9223372036854775807' ? 0 : value) `</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Interface type |<p>The type of the network interface.</p> |DEPENDENT |net.if.type["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>The operational status of the network interface.</p> |DEPENDENT |net.if.status["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Zabbix raw items |Network interfaces WMI get |<p>Raw data of win32_networkadapter.</p> |ZABBIX_PASSIVE |wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) or avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])) and last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0`<p>Recovery expression:</p>`avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) and avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
+|Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} `<p>Recovery expression:</p>`max(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
+|Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])<0 and last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
+|Interface {#IFNAME}({#IFALIAS}): Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.</p><p> No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))`<p>Recovery expression:</p>`last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows services by Zabbix agent
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+Special version of services template that is required for Windows OS.
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$SERVICE.NAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^.*$` |
+|{$SERVICE.NAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$` |
+|{$SERVICE.STARTUPNAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:automatic|automatic delayed)$` |
+|{$SERVICE.STARTUPNAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:manual|disabled)$` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Windows services discovery |<p>Discovery of Windows services of different types as defined in template's macros.</p> |ZABBIX_PASSIVE |service.discovery<p>**Filter**:</p>AND <p>- {#SERVICE.NAME} MATCHES_REGEX `{$SERVICE.NAME.MATCHES}`</p><p>- {#SERVICE.NAME} NOT_MATCHES_REGEX `{$SERVICE.NAME.NOT_MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} MATCHES_REGEX `{$SERVICE.STARTUPNAME.MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} NOT_MATCHES_REGEX `{$SERVICE.STARTUPNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Services |State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) |<p>-</p> |ZABBIX_PASSIVE |service.info["{#SERVICE.NAME}",state] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) |<p>The service has a state other than "Running" for the last three times.</p> |`min(/Windows services by Zabbix agent/service.info["{#SERVICE.NAME}",state],#3)<>0` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/module/windows_agent/template_module_windows_agent.yaml b/templates/module/windows_agent/template_module_windows_agent.yaml
new file mode 100644
index 00000000000..4164a5a9ca4
--- /dev/null
+++ b/templates/module/windows_agent/template_module_windows_agent.yaml
@@ -0,0 +1,1904 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T09:16:44Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: e358504d59404f688e236444dd82d2c3
+ template: 'Windows CPU by Zabbix agent'
+ name: 'Windows CPU by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 8362346c013546f39f8140061f7b3f01
+ name: 'CPU DPC time'
+ key: 'perf_counter_en["\Processor Information(_total)\% DPC Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure
+ calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a
+ component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is
+ sustained, there may be a processor bottleneck or an application or hardware related issue that can
+ significantly diminish overall system performance.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 609619e2b6364d9e90bef828610b23f8
+ name: 'CPU interrupt time'
+ key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
+ hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
+ devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
+ lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
+ hardware failure. This should never be higher than 20%.
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 3f6cca07bc6c48f0b21fee3aeb89bf6b
+ expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
+ name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
+ priority: WARNING
+ description: |
+ "The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."
+ The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
+ hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
+ devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
+ lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
+ hardware failure. This should never be higher than 20%.
+ dependencies:
+ -
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: eb5144d1e3cb4417ae0abcdeca10e0ed
+ name: 'CPU privileged time'
+ key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent
+ executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt
+ Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode
+ functions of the Windows® Operating System.
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 999464a5a73540d3b7b7cd86efa5488e
+ expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}'
+ name: 'CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m)'
+ priority: WARNING
+ description: 'The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.'
+ dependencies:
+ -
+ name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
+ -
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 5611c125bf01479fadc2e59db073cc9c
+ name: 'CPU user time'
+ key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing
+ in User mode.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 8ee61e8919984a3d9a7125fd4fe7c397
+ name: 'Context switches per second'
+ key: 'perf_counter_en["\System\Context Switches/sec"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.
+ 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.
+ 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.
+ 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.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 1a2b85fb8355459e9c5c723164d09d41
+ name: 'CPU queue length'
+ key: 'perf_counter_en["\System\Processor Queue Length"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue
+ and are waiting to be executed.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 177e472955434cb19dadb06c0f34eb31
+ name: 'CPU utilization'
+ key: system.cpu.util
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU utilization in %'
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: afd1711dca1542a5bec9091cbae2bcf0
+ expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: d6b17d211ed746aaabac591a3dad5813
+ name: 'Number of cores'
+ key: 'wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]'
+ history: 7d
+ description: 'The number of logical processors available on the computer.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ macros:
+ -
+ macro: '{$CPU.INTERRUPT.CRIT.MAX}'
+ value: '50'
+ description: 'The critical threshold of the % Interrupt Time counter.'
+ -
+ macro: '{$CPU.PRIV.CRIT.MAX}'
+ value: '30'
+ description: 'The threshold of the % Privileged Time counter.'
+ -
+ macro: '{$CPU.QUEUE.CRIT.MAX}'
+ value: '3'
+ description: 'The threshold of the Processor Queue Length counter.'
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ description: 'The critical threshold of the CPU utilization in %.'
+ -
+ uuid: cb28abff977b4b6eb34665ff2218163b
+ template: 'Windows filesystems by Zabbix agent'
+ name: 'Windows filesystems by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: f603eb3367ad4326a1f1ec7b9c14c07a
+ name: 'Mounted filesystem discovery'
+ key: vfs.fs.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.MATCHES}'
+ formulaid: E
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: F
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#FSDRIVETYPE}'
+ value: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#FSDRIVETYPE}'
+ value: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of file systems of different types.'
+ item_prototypes:
+ -
+ uuid: 84c999eefbdd43319d0b992aff43f3c5
+ name: '{#FSLABEL}({#FSNAME}): Space utilization'
+ key: 'vfs.fs.size[{#FSNAME},pused]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Space utilization in % for {#FSNAME}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: a1661dae47c640be9cfa9e807e125ff3
+ name: '{#FSLABEL}({#FSNAME}): Total space'
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ history: 7d
+ units: B
+ description: 'Total space in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: ed0c1057b2704ab098847ae62fec9064
+ name: '{#FSLABEL}({#FSNAME}): Used space'
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ history: 7d
+ units: B
+ description: 'Used storage in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ 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)
+ 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})'
+ priority: AVERAGE
+ 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 will be full in less than 24 hours.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ 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)
+ name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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)
+ tags:
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: 78d604a4bde244c38bcfbabd7ef5e09d
+ name: '{#FSLABEL}({#FSNAME}): Disk space usage'
+ width: '600'
+ height: '340'
+ type: PIE
+ show_3d: 'YES'
+ graph_items:
+ -
+ color: '969696'
+ calc_fnc: LAST
+ type: GRAPH_SUM
+ item:
+ host: 'Windows filesystems by Zabbix agent'
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ -
+ sortorder: '1'
+ color: C80000
+ calc_fnc: LAST
+ item:
+ host: 'Windows filesystems by Zabbix agent'
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ macros:
+ -
+ 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.'
+ -
+ macro: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSNAME.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ value: '^(?:/dev|/sys|/run|/proc|.+/shm$)'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSTYPE.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.CRIT}'
+ value: '90'
+ description: 'The critical threshold of the filesystem utilization in percent.'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.WARN}'
+ value: '80'
+ description: 'The warning threshold of the filesystem utilization in percent.'
+ -
+ uuid: 95c4026f8ade4fa7b72f8140fc152aea
+ template: 'Windows generic by Zabbix agent'
+ name: 'Windows generic by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 1245fca060fb424897387d56d29fe030
+ name: 'Number of threads'
+ key: 'perf_counter_en["\System\Threads"]'
+ history: 7d
+ description: 'The number of threads used by all running processes.'
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 8401ea3152ea45269eeb6cc7fa70f1aa
+ name: 'Number of processes'
+ key: 'proc.num[]'
+ history: 7d
+ description: 'The number of processes.'
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 78ae4dbd2d894819a36a7d3d00f2e508
+ name: 'System name'
+ key: system.hostname
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'System host name.'
+ inventory_link: NAME
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 13c5f9c0f7f645cc9dde522ff20a1860
+ expression: 'last(/Windows generic by Zabbix agent/system.hostname,#1)<>last(/Windows generic by Zabbix agent/system.hostname,#2) and length(last(/Windows generic by Zabbix agent/system.hostname))>0'
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ priority: INFO
+ description: 'System name has changed. Ack to close.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 25454c401bea41a4b3c49da3165f3d3d
+ name: 'System local time'
+ key: system.localtime
+ history: 7d
+ units: unixtime
+ description: 'System local time of the host.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 3144a1b15227479e9ea4ce858faea74b
+ expression: 'fuzzytime(/Windows generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
+ name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
+ priority: WARNING
+ description: 'The host system time is different from the Zabbix server time.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 5ed680dff3154af58e7adc0571a6ee9d
+ name: 'Operating system architecture'
+ key: system.sw.arch
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'Operating system architecture of the host.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 76ef3297b4b740bfaf891e039f7d4dff
+ name: 'System description'
+ key: system.uname
+ delay: 15m
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'System description of the host.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: 24411175d64f48a195ee4a2323d8e799
+ name: Uptime
+ key: system.uptime
+ delay: 30s
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: d24a0366e99c4e31815bbbaa3af71ac6
+ expression: 'last(/Windows generic by Zabbix agent/system.uptime)<10m'
+ name: 'Host has been restarted (uptime < 10m)'
+ priority: WARNING
+ description: 'The device uptime is less than 10 minutes.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ macros:
+ -
+ macro: '{$SYSTEM.FUZZYTIME.MAX}'
+ value: '60'
+ description: 'The threshold for difference of system time in seconds.'
+ -
+ uuid: 539b4b98f6fb4e12bbdf3bcdb85df2d1
+ template: 'Windows memory by Zabbix agent'
+ name: 'Windows memory by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: dbbd157ca9464e858bcfbf9a88cac775
+ name: 'Cache bytes'
+ key: 'perf_counter_en["\Memory\Cache Bytes"]'
+ history: 7d
+ units: B
+ description: |
+ Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,
+ Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays
+ the last observed value only; it is not an average.
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: bea4109baa6e425eaa7b8cb3bbb1c01a
+ name: 'Free system page table entries'
+ key: 'perf_counter_en["\Memory\Free System Page Table Entries"]'
+ history: 7d
+ description: |
+ This indicates the number of page table entries not currently in use by the system. If the number is less
+ than 5,000, there may well be a memory leak or you running out of memory.
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 5055a8fdc127479cbe97fdfd849831ea
+ expression: 'max(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}'
+ name: 'Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m)'
+ priority: WARNING
+ description: 'The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: c54782d0e8384d9cba8fe79af050e7ac
+ name: 'Memory page faults per second'
+ key: 'perf_counter_en["\Memory\Page Faults/sec"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages
+ faulted per second because only one page is faulted in each fault operation, hence this is also equal
+ to the number of page fault operations. This counter includes both hard faults (those that require
+ disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most
+ processors can handle large numbers of soft faults without significant consequence. However, hard faults,
+ which require disk access, can cause significant delays.
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 1ce3e64002424f29b73a5159152ae529
+ name: 'Memory pages per second'
+ key: 'perf_counter_en["\Memory\Pages/sec"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ This measures the rate at which pages are read from or written to disk to resolve hard page faults.
+ If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 045574e4dd814b7e97d292b134f0a755
+ expression: 'min(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}'
+ name: 'The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m)'
+ priority: WARNING
+ description: 'The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: b4ae2ff5830b47f882744f5fbcfcca05
+ name: 'Memory pool non-paged'
+ key: 'perf_counter_en["\Memory\Pool Nonpaged Bytes"]'
+ history: 7d
+ units: B
+ description: |
+ This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects
+ that cannot be written to disk but instead must remain in physical memory as long as they are allocated.
+ There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).
+ A typical Event ID 2019 is recorded in the system event log.
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: d24566c5c0fc4c219f521a1d4ae18546
+ name: 'Used swap space in %'
+ key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The used space of swap volume/file in percent.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 3b8acdfa9b744fb595590daa370b16a9
+ name: 'Free swap space'
+ type: CALCULATED
+ key: system.swap.free
+ history: 7d
+ units: B
+ params: 'last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])'
+ description: 'The free space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 88eb59f25fde40a49f3b35f576fab29d
+ name: 'Free swap space in %'
+ type: DEPENDENT
+ key: system.swap.pfree
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The free space of swap volume/file in percent.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100 - value)'
+ master_item:
+ key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 711aae9de25e43728bfc9c26f06c800a
+ name: 'Total swap space'
+ key: 'system.swap.size[,total]'
+ history: 7d
+ units: B
+ description: 'The total space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 35f397ade625477eba0b557a58113761
+ name: 'Total memory'
+ key: 'vm.memory.size[total]'
+ history: 7d
+ units: B
+ description: 'Total memory in Bytes'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 69f61ded5de04623be01a77e160a41e6
+ name: 'Used memory'
+ key: 'vm.memory.size[used]'
+ history: 7d
+ units: B
+ description: 'Used memory in Bytes'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 97295c0987bd44f1af578a2e37f469f4
+ name: 'Memory utilization'
+ type: CALCULATED
+ key: vm.memory.util
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
+ description: 'Memory utilization in %'
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 2766be7a10d444be9893dcdfab75f3be
+ expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$MEM.PAGE_SEC.CRIT.MAX}'
+ value: '1000'
+ description: 'The warning threshold of the Memory Pages/sec counter.'
+ -
+ macro: '{$MEM.PAGE_TABLE_CRIT.MIN}'
+ value: '5000'
+ description: 'The warning threshold of the Free System Page Table Entries counter.'
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ description: 'The warning threshold of the Memory util item.'
+ -
+ macro: '{$SWAP.PFREE.MIN.WARN}'
+ value: '20'
+ description: 'The warning threshold of the minimum free swap.'
+ -
+ uuid: 6ad6a4d1e677461ca6d1d5b2dcaba6d2
+ template: 'Windows network by Zabbix agent'
+ name: 'Windows network by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 52d75ac9adc347959053860a7e0ac199
+ name: 'Network interfaces WMI get'
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Raw data of win32_networkadapter.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: raw
+ discovery_rules:
+ -
+ uuid: e4ea554f9a1c4d3db0233c8babdf9bc1
+ name: 'Network interfaces discovery'
+ type: DEPENDENT
+ key: net.if.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.MATCHES}'
+ formulaid: E
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: F
+ -
+ macro: '{#IFDESCR}'
+ value: '{$NET.IF.IFDESCR.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#IFDESCR}'
+ value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#IFALIAS}'
+ value: '{$NET.IF.IFALIAS.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#IFALIAS}'
+ value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of installed network interfaces.'
+ item_prototypes:
+ -
+ uuid: 9e9fdb17beee45ef9bc0eac67c512da4
+ name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
+ key: 'net.if.in["{#IFGUID}",dropped]'
+ delay: 3m
+ history: 7d
+ description: 'The number of incoming packets dropped on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 29d94ac228794aa9a89a4147014c35d1
+ name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
+ key: 'net.if.in["{#IFGUID}",errors]'
+ delay: 3m
+ history: 7d
+ description: 'The number of incoming packets with errors on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 18cb6d1cde06482a8adb10e78576b512
+ name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
+ key: 'net.if.in["{#IFGUID}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ description: 'Incoming traffic on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: e3065d25674045938470ce2e10fbd6c0
+ name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
+ key: 'net.if.out["{#IFGUID}",dropped]'
+ delay: 3m
+ history: 7d
+ description: 'The number of outgoing packets dropped on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: b3472a08272143bead7b9dc366b4992f
+ name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
+ key: 'net.if.out["{#IFGUID}",errors]'
+ delay: 3m
+ history: 7d
+ description: 'The number of outgoing packets with errors on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 2e208f1d9ca949f582f24015350395b6
+ name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
+ key: 'net.if.out["{#IFGUID}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ description: 'Outgoing traffic on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: db8d1c51fdcc4cffbff0c8974b5233f9
+ name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
+ type: DEPENDENT
+ key: 'net.if.speed["{#IFGUID}"]'
+ delay: '0'
+ history: 7d
+ trends: 0d
+ units: bps
+ description: 'Estimated bandwidth of the network interface if any.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[?(@.GUID == "{#IFGUID}")].Speed.first()'
+ error_handler: CUSTOM_VALUE
+ error_handler_params: '0'
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (value==''9223372036854775807'' ? 0 : value)'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: efe5e7b10dbe4b5c8f86a60e6611c22f
+ name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
+ type: DEPENDENT
+ key: 'net.if.status["{#IFGUID}"]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ description: 'The operational status of the network interface.'
+ valuemap:
+ name: 'Win32_NetworkAdapter::NetConnectionStatus'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: 36effba3975c408aba50096464719479
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ This trigger expression works as follows:
+ 1. Can be triggered if operations status is down.
+ 2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.
+ No new trigger will be fired if this interface is down.
+ 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).
+
+ WARNING: if closed manually - won't fire again on next poll, because of .diff.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ uuid: 9ea1818be4d7423fb7799b9cf1546491
+ name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
+ type: DEPENDENT
+ key: 'net.if.type["{#IFGUID}"]'
+ delay: '0'
+ history: 7d
+ trends: 0d
+ description: 'The type of the network interface.'
+ valuemap:
+ name: 'Win32_NetworkAdapter::AdapterTypeId'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: 81cea5af79844f298849ca5ef6cde4b3
+ expression: |
+ change(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])<0 and
+ last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0 and
+ last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2
+ name: 'Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
+ opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
+ priority: INFO
+ description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
+ recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: c0e8e89730f04d92b26dd5da215894e1
+ expression: |
+ (avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) or
+ avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])) and
+ last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) and
+ avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])
+ name: 'Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
+ opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'The network interface utilization is close to its estimated maximum bandwidth.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
+ recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 2a59eec0032a41e48e2443507cbd173d
+ expression: |
+ min(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ or min(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ max(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ and max(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ name: 'Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
+ opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
+ recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: availability
+ graph_prototypes:
+ -
+ uuid: 08ea837e8c2448018cff873dacd95dcb
+ name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Windows network by Zabbix agent'
+ key: 'net.if.in["{#IFGUID}"]'
+ -
+ sortorder: '1'
+ drawtype: BOLD_LINE
+ color: 2774A4
+ item:
+ host: 'Windows network by Zabbix agent'
+ key: 'net.if.out["{#IFGUID}"]'
+ -
+ sortorder: '2'
+ color: F63100
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent'
+ key: 'net.if.out["{#IFGUID}",errors]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent'
+ key: 'net.if.in["{#IFGUID}",errors]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent'
+ key: 'net.if.out["{#IFGUID}",dropped]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent'
+ key: 'net.if.in["{#IFGUID}",dropped]'
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ output = JSON.parse(value).map(function(net){
+ return {
+ "{#IFNAME}": net.Name,
+ "{#IFDESCR}": net.Description,
+ "{#IFALIAS}": net.NetConnectionID,
+ "{#IFGUID}": net.GUID
+ }})
+ return JSON.stringify({"data": output})
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ macros:
+ -
+ macro: '{$IF.ERRORS.WARN}'
+ value: '2'
+ -
+ macro: '{$IF.UTIL.MAX}'
+ value: '90'
+ -
+ macro: '{$IFCONTROL}'
+ value: '1'
+ -
+ macro: '{$NET.IF.IFALIAS.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
+ value: CHANGE_THIS
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFDESCR.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
+ value: CHANGE_THIS
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFNAME.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ value: Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ dashboards:
+ -
+ uuid: 9ddc1ce7e9ea4d7dba8e282366084f3b
+ name: 'Network interfaces'
+ pages:
+ -
+ widgets:
+ -
+ type: GRAPH_PROTOTYPE
+ width: '24'
+ height: '5'
+ fields:
+ -
+ type: INTEGER
+ name: source_type
+ value: '2'
+ -
+ type: INTEGER
+ name: columns
+ value: '1'
+ -
+ type: INTEGER
+ name: rows
+ value: '1'
+ -
+ type: GRAPH_PROTOTYPE
+ name: graphid
+ value:
+ name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
+ host: 'Windows network by Zabbix agent'
+ valuemaps:
+ -
+ uuid: dd37c51d4ded48ceb449fa633dd707e2
+ name: 'Win32_NetworkAdapter::AdapterTypeId'
+ mappings:
+ -
+ value: '0'
+ newvalue: 'Ethernet 802.3'
+ -
+ value: '1'
+ newvalue: 'Token Ring 802.5'
+ -
+ value: '2'
+ newvalue: 'Fiber Distributed Data Interface (FDDI)'
+ -
+ value: '3'
+ newvalue: 'Wide Area Network (WAN)'
+ -
+ value: '4'
+ newvalue: LocalTalk
+ -
+ value: '5'
+ newvalue: 'Ethernet using DIX header format'
+ -
+ value: '6'
+ newvalue: ARCNET
+ -
+ value: '7'
+ newvalue: 'ARCNET (878.2)'
+ -
+ value: '8'
+ newvalue: ATM
+ -
+ value: '9'
+ newvalue: Wireless
+ -
+ value: '10'
+ newvalue: 'Infrared Wireless'
+ -
+ value: '11'
+ newvalue: Bpc
+ -
+ value: '12'
+ newvalue: CoWan
+ -
+ value: '13'
+ newvalue: '1394'
+ -
+ uuid: 3265d77e34ba44f688b7aaceeeccda6b
+ name: 'Win32_NetworkAdapter::NetConnectionStatus'
+ mappings:
+ -
+ value: '0'
+ newvalue: Disconnected
+ -
+ value: '1'
+ newvalue: Connecting
+ -
+ value: '2'
+ newvalue: Connected
+ -
+ value: '3'
+ newvalue: Disconnecting
+ -
+ value: '4'
+ newvalue: 'Hardware Not Present'
+ -
+ value: '5'
+ newvalue: 'Hardware Disabled'
+ -
+ value: '6'
+ newvalue: 'Hardware Malfunction'
+ -
+ value: '7'
+ newvalue: 'Media Disconnected'
+ -
+ value: '8'
+ newvalue: Authenticating
+ -
+ value: '9'
+ newvalue: 'Authentication Succeeded'
+ -
+ value: '10'
+ newvalue: 'Authentication Failed'
+ -
+ value: '11'
+ newvalue: 'Invalid Address'
+ -
+ value: '12'
+ newvalue: 'Credentials Required'
+ -
+ uuid: 4026647be95a47de98b0f09dc36ce72f
+ template: 'Windows physical disks by Zabbix agent'
+ name: 'Windows physical disks by Zabbix agent'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: d03f20ec394e4725a5dfdceecb79c8bd
+ name: 'Physical disks discovery'
+ key: 'perf_instance_en.discovery[PhysicalDisk]'
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of installed physical disks.'
+ item_prototypes:
+ -
+ uuid: 44d9353d47274309bb3edaa34b7b3470
+ name: '{#DEVNAME}: Disk utilization by idle time'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100 - value)'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ trigger_prototypes:
+ -
+ uuid: c194f813f0c5417aaac56875b955637a
+ expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}'
+ name: '{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m)'
+ priority: WARNING
+ description: 'The disk appears to be under heavy load'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
+ expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
+ -
+ name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
+ expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 8122d6fd46a54d5f8b23c4b21a333959
+ name: '{#DEVNAME}: Average disk read queue length'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
+ history: 7d
+ value_type: FLOAT
+ description: 'Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: f6896b69665d4a9bb160b23a322919d4
+ name: '{#DEVNAME}: Disk read request avg waiting time'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
+ history: 7d
+ value_type: FLOAT
+ units: s
+ description: 'The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ trigger_prototypes:
+ -
+ uuid: d96338f9104a4eb4bc7725a5736c96d0
+ expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
+ name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
+ priority: WARNING
+ description: 'This trigger might indicate disk {#DEVNAME} saturation.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 704680610f6a42dc9373db929a3d0d53
+ name: '{#DEVNAME}: Disk write request avg waiting time'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
+ history: 7d
+ value_type: FLOAT
+ units: s
+ description: 'The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ trigger_prototypes:
+ -
+ uuid: 205acd9a37424bd78618ebdc197f251f
+ expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
+ name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
+ priority: WARNING
+ description: 'This trigger might indicate disk {#DEVNAME} saturation.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 9f5d1cdb629847ad97e0fa0804883e91
+ name: '{#DEVNAME}: Average disk write queue length'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
+ history: 7d
+ value_type: FLOAT
+ description: 'Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 3565ad70600d4c8aa5ebbbebd3f67270
+ name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
+ history: 7d
+ value_type: FLOAT
+ description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 3485202f1e6b42ce8099ce6d6347a994
+ name: '{#DEVNAME}: Disk read rate'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
+ history: 7d
+ value_type: FLOAT
+ units: '!r/s'
+ description: 'Rate of read operations on the disk.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 66e312629db1460c8b215d34d29f7418
+ name: '{#DEVNAME}: Disk write rate'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
+ history: 7d
+ value_type: FLOAT
+ units: '!w/s'
+ description: 'Rate of write operations on the disk.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ graph_prototypes:
+ -
+ uuid: 5fcd9dc53cd34e4981bf5e48a88951a0
+ name: '{#DEVNAME}: Disk average queue length'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
+ -
+ uuid: 6561058a9cd748728bb46d8d04a5b74b
+ name: '{#DEVNAME}: Disk average waiting time'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
+ -
+ uuid: 83dee3e21b2f4b3c8c7552f87ebec81c
+ name: '{#DEVNAME}: Disk read/write rates'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
+ -
+ uuid: d3b5ccf4530447c2aee84fb23a6934d0
+ name: '{#DEVNAME}: Disk utilization and queue'
+ graph_items:
+ -
+ color: 1A7C11
+ yaxisside: RIGHT
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
+ preprocessing:
+ -
+ type: STR_REPLACE
+ parameters:
+ - '{#INSTANCE}'
+ - '{#DEVNAME}'
+ macros:
+ -
+ macro: '{$VFS.DEV.DEVNAME.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ value: _Total
+ description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.DEV.READ.AWAIT.WARN}'
+ value: '0.02'
+ description: 'Disk read average response time (in s) before the trigger would fire.'
+ -
+ macro: '{$VFS.DEV.UTIL.MAX.WARN}'
+ value: '95'
+ description: 'The warning threshold of disk time utilization in percent.'
+ -
+ macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
+ value: '0.02'
+ description: 'Disk write average response time (in s) before the trigger would fire.'
+ -
+ uuid: dfd6f32510a840c29f9cb4b974977770
+ template: 'Windows services by Zabbix agent'
+ name: 'Windows services by Zabbix agent'
+ description: |
+ Template Services OS Windows
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: d4fb5efff5494013b452e5a47ac265f5
+ name: 'Windows services discovery'
+ key: service.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#SERVICE.NAME}'
+ value: '{$SERVICE.NAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#SERVICE.NAME}'
+ value: '{$SERVICE.NAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ -
+ macro: '{#SERVICE.STARTUPNAME}'
+ value: '{$SERVICE.STARTUPNAME.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#SERVICE.STARTUPNAME}'
+ value: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ description: 'Discovery of Windows services of different types as defined in template''s macros.'
+ item_prototypes:
+ -
+ uuid: 934d8e7f237d42739e880803f02f0da9
+ name: 'State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME})'
+ key: 'service.info["{#SERVICE.NAME}",state]'
+ history: 7d
+ valuemap:
+ name: 'Windows service state'
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ tag: name
+ value: '{#SERVICE.DISPLAYNAME}'
+ -
+ tag: service
+ value: '{#SERVICE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: 9fab20eab61d48c09682fe5c142cc917
+ expression: 'min(/Windows services by Zabbix agent/service.info["{#SERVICE.NAME}",state],#3)<>0'
+ name: '"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME})'
+ priority: AVERAGE
+ description: 'The service has a state other than "Running" for the last three times.'
+ tags:
+ -
+ tag: scope
+ value: notice
+ macros:
+ -
+ macro: '{$SERVICE.NAME.MATCHES}'
+ value: '^.*$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$SERVICE.NAME.NOT_MATCHES}'
+ value: '^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$SERVICE.STARTUPNAME.MATCHES}'
+ value: '^(?:automatic|automatic delayed)$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
+ value: '^(?:manual|disabled)$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ valuemaps:
+ -
+ uuid: 5d9a045df1df48daaa6752bd75f1681d
+ name: 'Windows service state'
+ mappings:
+ -
+ value: '0'
+ newvalue: Running
+ -
+ value: '1'
+ newvalue: Paused
+ -
+ value: '2'
+ newvalue: 'Start pending'
+ -
+ value: '3'
+ newvalue: 'Pause pending'
+ -
+ value: '4'
+ newvalue: 'Continue pending'
+ -
+ value: '5'
+ newvalue: 'Stop pending'
+ -
+ value: '6'
+ newvalue: Stopped
+ -
+ value: '7'
+ newvalue: Unknown
+ -
+ value: '255'
+ newvalue: 'No such service'
+ triggers:
+ -
+ uuid: cc301d844a7b42e79756d1bc74adf307
+ expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}'
+ name: 'CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m)'
+ priority: WARNING
+ description: 'The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.'
+ dependencies:
+ -
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: b2a97432e79e4a999324d3fde7dacdeb
+ expression: 'min(/Windows memory by Zabbix agent/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent/system.swap.size[,total])>0'
+ 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'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graphs:
+ -
+ uuid: e3029427b9124e30a9aa06000219f572
+ name: 'CPU jumps'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows CPU by Zabbix agent'
+ key: 'perf_counter_en["\System\Context Switches/sec"]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows CPU by Zabbix agent'
+ key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
+ -
+ uuid: 0b520e68348e4c17983672c5ca4dffb1
+ name: 'CPU usage'
+ type: STACKED
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows CPU by Zabbix agent'
+ key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows CPU by Zabbix agent'
+ key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
+ -
+ uuid: d7543150b21e4678a29ca1072c8660df
+ name: 'CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Windows CPU by Zabbix agent'
+ key: system.cpu.util
+ -
+ uuid: 61a375b6875641bf93145be801809ece
+ name: 'Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Windows memory by Zabbix agent'
+ key: vm.memory.util
+ -
+ uuid: 8891c435d3df489ea18847abb82054ca
+ name: 'Swap usage'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows memory by Zabbix agent'
+ key: system.swap.free
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows memory by Zabbix agent'
+ key: 'system.swap.size[,total]'
diff --git a/templates/module/windows_agent_active/README.md b/templates/module/windows_agent_active/README.md
new file mode 100644
index 00000000000..c05e32c7092
--- /dev/null
+++ b/templates/module/windows_agent_active/README.md
@@ -0,0 +1,399 @@
+
+# Windows CPU by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.INTERRUPT.CRIT.MAX} |<p>The critical threshold of the % Interrupt Time counter.</p> |`50` |
+|{$CPU.PRIV.CRIT.MAX} |<p>The threshold of the % Privileged Time counter.</p> |`30` |
+|{$CPU.QUEUE.CRIT.MAX} |<p>The threshold of the Processor Queue Length counter.</p> |`3` |
+|{$CPU.UTIL.CRIT} |<p>The critical threshold of the CPU utilization in %.</p> |`90` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|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"] |
+|CPU |CPU DPC time |<p>Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure</p><p>calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a</p><p>component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is</p><p>sustained, there may be a processor bottleneck or an application or hardware related issue that can</p><p>significantly diminish overall system performance.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% DPC Time"] |
+|CPU |CPU user time |<p>The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing</p><p>in User mode.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% User Time"] |
+|CPU |Number of cores |<p>The number of logical processors available on the computer.</p> |ZABBIX_ACTIVE |wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] |
+|CPU |CPU queue length |<p>The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue</p><p>and are waiting to be executed.</p> |ZABBIX_ACTIVE |perf_counter_en["\System\Processor Queue Length"] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING | |
+|CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m) |<p>"The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."</p><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> |`min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
+|CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m) |<p>The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.</p> |`min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
+|CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m) |<p>The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.</p> |`min(/Windows CPU by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows memory by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$MEM.PAGE_SEC.CRIT.MAX} |<p>The warning threshold of the Memory Pages/sec counter.</p> |`1000` |
+|{$MEM.PAGE_TABLE_CRIT.MIN} |<p>The warning threshold of the Free System Page Table Entries counter.</p> |`5000` |
+|{$MEMORY.UTIL.MAX} |<p>The warning threshold of the Memory util item.</p> |`90` |
+|{$SWAP.PFREE.MIN.WARN} |<p>The warning threshold of the minimum free swap.</p> |`20` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|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 |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> |
+|Memory |Used swap space in % |<p>The used space of swap volume/file in percent.</p> |ZABBIX_ACTIVE |perf_counter_en["\Paging file(_Total)\% Usage"] |
+|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_ACTIVE |system.swap.size[,total] |
+|Memory |Free system page table entries |<p>This indicates the number of page table entries not currently in use by the system. If the number is less</p><p>than 5,000, there may well be a memory leak or you running out of memory.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Free System Page Table Entries"] |
+|Memory |Memory page faults per second |<p>Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages</p><p>faulted per second because only one page is faulted in each fault operation, hence this is also equal</p><p>to the number of page fault operations. This counter includes both hard faults (those that require</p><p>disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most</p><p>processors can handle large numbers of soft faults without significant consequence. However, hard faults,</p><p>which require disk access, can cause significant delays.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Page Faults/sec"] |
+|Memory |Memory pages per second |<p>This measures the rate at which pages are read from or written to disk to resolve hard page faults.</p><p>If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Pages/sec"] |
+|Memory |Memory pool non-paged |<p>This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects</p><p>that cannot be written to disk but instead must remain in physical memory as long as they are allocated.</p><p>There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).</p><p>A typical Event ID 2019 is recorded in the system event log.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Pool Nonpaged Bytes"] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`min(/Windows memory by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent active/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
+|Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m) |<p>The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.</p> |`max(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
+|The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m) |<p>The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |`min(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows filesystems by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$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> |`.*` |
+|{$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> |`.*` |
+|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>The critical threshold of the filesystem utilization in percent.</p> |`90` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>The warning threshold of the filesystem utilization in percent.</p> |`80` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_ACTIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p><p>- {#FSDRIVETYPE} MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.MATCHES}`</p><p>- {#FSDRIVETYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Filesystems |{#FSLABEL}({#FSNAME}): Used space |<p>Used storage in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},used] |
+|Filesystems |{#FSLABEL}({#FSNAME}): Total space |<p>Total space in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},total] |
+|Filesystems |{#FSLABEL}({#FSNAME}): Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},pused] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p>Second condition should be one of the following:</p><p>- The disk free space is less than 5G.</p><p>- The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
+|{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p>Second condition should be one of the following:</p><p>- The disk free space is less than 10G.</p><p>- The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows physical disks by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$VFS.DEV.DEVNAME.MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`_Total` |
+|{$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` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Physical disks discovery |<p>Discovery of installed physical disks.</p> |ZABBIX_ACTIVE |perf_instance_en.discovery[PhysicalDisk]<p>**Preprocessing**:</p><p>- STR_REPLACE: `{#INSTANCE} {#DEVNAME}`</p><p>**Filter**:</p>AND <p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Storage |{#DEVNAME}: Disk read rate |<p>Rate of read operations on the disk.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] |
+|Storage |{#DEVNAME}: Disk write rate |<p>Rate of write operations on the disk.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] |
+|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] |
+|Storage |{#DEVNAME}: Disk utilization by idle time |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
+|Storage |{#DEVNAME}: Disk read request avg waiting time |<p>The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] |
+|Storage |{#DEVNAME}: Disk write request avg waiting time |<p>The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] |
+|Storage |{#DEVNAME}: Average disk read queue length |<p>Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] |
+|Storage |{#DEVNAME}: Average disk write queue length |<p>Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m) |<p>The disk appears to be under heavy load</p> |`min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m</p><p>- {#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)</p> |
+|{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
+|{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows generic by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$SYSTEM.FUZZYTIME.MAX} |<p>The threshold for difference of system time in seconds.</p> |`60` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|General |System local time |<p>System local time of the host.</p> |ZABBIX_ACTIVE |system.localtime |
+|General |System name |<p>System host name.</p> |ZABBIX_ACTIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|General |System description |<p>System description of the host.</p> |ZABBIX_ACTIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|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> |
+|Status |Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_ACTIVE |system.uptime |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Windows generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
+|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Windows generic by Zabbix agent active/system.hostname,#1)<>last(/Windows generic by Zabbix agent active/system.hostname,#2) and length(last(/Windows generic by Zabbix agent active/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
+|Host has been restarted (uptime < 10m) |<p>The device uptime is less than 10 minutes.</p> |`last(/Windows generic by Zabbix agent active/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows network by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
+|{$IF.UTIL.MAX} |<p>-</p> |`90` |
+|{$IFCONTROL} |<p>-</p> |`1` |
+|{$NET.IF.IFALIAS.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$NET.IF.IFALIAS.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
+|{$NET.IF.IFDESCR.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$NET.IF.IFDESCR.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
+|{$NET.IF.IFNAME.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
+|{$NET.IF.IFNAME.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Network interfaces discovery |<p>Discovery of installed network interfaces.</p> |DEPENDENT |net.if.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p><p>- {#IFDESCR} MATCHES_REGEX `{$NET.IF.IFDESCR.MATCHES}`</p><p>- {#IFDESCR} NOT_MATCHES_REGEX `{$NET.IF.IFDESCR.NOT_MATCHES}`</p><p>- {#IFALIAS} MATCHES_REGEX `{$NET.IF.IFALIAS.MATCHES}`</p><p>- {#IFALIAS} NOT_MATCHES_REGEX `{$NET.IF.IFALIAS.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>Incoming traffic on the network interface.</p> |ZABBIX_ACTIVE |net.if.in["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits sent |<p>Outgoing traffic on the network interface.</p> |ZABBIX_ACTIVE |net.if.out["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded |<p>The number of incoming packets dropped on the network interface.</p> |ZABBIX_ACTIVE |net.if.in["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded |<p>The number of outgoing packets dropped on the network interface.</p> |ZABBIX_ACTIVE |net.if.out["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors |<p>The number of incoming packets with errors on the network interface.</p> |ZABBIX_ACTIVE |net.if.in["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors |<p>The number of outgoing packets with errors on the network interface.</p> |ZABBIX_ACTIVE |net.if.out["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Speed |<p>Estimated bandwidth of the network interface if any.</p> |DEPENDENT |net.if.speed["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].Speed.first()`</p><p>⛔️ON_FAIL: `CUSTOM_VALUE -> 0`</p><p>- JAVASCRIPT: `return (value=='9223372036854775807' ? 0 : value) `</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Interface type |<p>The type of the network interface.</p> |DEPENDENT |net.if.type["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>The operational status of the network interface.</p> |DEPENDENT |net.if.status["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Zabbix raw items |Network interfaces WMI get |<p>Raw data of win32_networkadapter.</p> |ZABBIX_ACTIVE |wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) or avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])) and last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0`<p>Recovery expression:</p>`avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) and avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
+|Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} `<p>Recovery expression:</p>`max(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
+|Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])<0 and last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
+|Interface {#IFNAME}({#IFALIAS}): Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.</p><p> No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))`<p>Recovery expression:</p>`last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Windows services by Zabbix agent active
+
+## Overview
+
+For Zabbix version: 6.0 and higher
+Special version of services template that is required for Windows OS.
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$SERVICE.NAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^.*$` |
+|{$SERVICE.NAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$` |
+|{$SERVICE.STARTUPNAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:automatic|automatic delayed)$` |
+|{$SERVICE.STARTUPNAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:manual|disabled)$` |
+
+## Template links
+
+There are no template links in this template.
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Windows services discovery |<p>Discovery of Windows services of different types as defined in template's macros.</p> |ZABBIX_ACTIVE |service.discovery<p>**Filter**:</p>AND <p>- {#SERVICE.NAME} MATCHES_REGEX `{$SERVICE.NAME.MATCHES}`</p><p>- {#SERVICE.NAME} NOT_MATCHES_REGEX `{$SERVICE.NAME.NOT_MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} MATCHES_REGEX `{$SERVICE.STARTUPNAME.MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} NOT_MATCHES_REGEX `{$SERVICE.STARTUPNAME.NOT_MATCHES}`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Services |State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) |<p>-</p> |ZABBIX_ACTIVE |service.info["{#SERVICE.NAME}",state] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) |<p>The service has a state other than "Running" for the last three times.</p> |`min(/Windows services by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
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
new file mode 100644
index 00000000000..894891a247b
--- /dev/null
+++ b/templates/module/windows_agent_active/template_module_windows_agent_active.yaml
@@ -0,0 +1,1950 @@
+zabbix_export:
+ version: '6.0'
+ date: '2022-02-04T09:16:51Z'
+ groups:
+ -
+ uuid: 57b7ae836ca64446ba2c296389c009b7
+ name: Templates/Modules
+ templates:
+ -
+ uuid: 296cb27ad93b4063b77aaf1a8339d40c
+ template: 'Windows CPU by Zabbix agent active'
+ name: 'Windows CPU by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 94cedfa2390f4e509456222a69207023
+ name: 'CPU DPC time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Processor Information(_total)\% DPC Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure
+ calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a
+ component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is
+ sustained, there may be a processor bottleneck or an application or hardware related issue that can
+ significantly diminish overall system performance.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 9c3ee1744a604a41b90dcec49effaff7
+ name: 'CPU interrupt time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
+ hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
+ devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
+ lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
+ hardware failure. This should never be higher than 20%.
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: cbcd8d6c2eab4f18be5a40c2128e1b76
+ expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
+ name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
+ priority: WARNING
+ description: |
+ "The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."
+ The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
+ hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
+ devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
+ lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
+ hardware failure. This should never be higher than 20%.
+ dependencies:
+ -
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 49073e4ccf964d349945824888ec46b0
+ name: 'CPU privileged time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent
+ executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt
+ Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode
+ functions of the Windows® Operating System.
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 150f35f3b43c48eb995a1e8f1211e9b3
+ expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}'
+ name: 'CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m)'
+ priority: WARNING
+ description: 'The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.'
+ dependencies:
+ -
+ name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
+ -
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: bebffbf027bb48feba459e7f344d67f2
+ name: 'CPU user time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: |
+ The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing
+ in User mode.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 8d1d279c74324690a1ee37dbc90a7f88
+ name: 'Context switches per second'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\System\Context Switches/sec"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.
+ 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.
+ 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.
+ 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.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: b7a1b8f5c4664195921d459a60f09d57
+ name: 'CPU queue length'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\System\Processor Queue Length"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue
+ and are waiting to be executed.
+ tags:
+ -
+ tag: component
+ value: cpu
+ -
+ uuid: 6f3c6b7312be445eb54e0851447a879e
+ name: 'CPU utilization'
+ type: ZABBIX_ACTIVE
+ key: system.cpu.util
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'CPU utilization in %'
+ tags:
+ -
+ tag: component
+ value: cpu
+ triggers:
+ -
+ uuid: 5f1bdb9eb4c44e8a8f33afee709b0667
+ expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ opdata: 'Current utilization: {ITEM.LASTVALUE1}'
+ priority: WARNING
+ description: 'CPU utilization is too high. The system might be slow to respond.'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: cb071eb5cc82471c83e88b9125c2832a
+ name: 'Number of cores'
+ type: ZABBIX_ACTIVE
+ key: 'wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]'
+ history: 7d
+ description: 'The number of logical processors available on the computer.'
+ tags:
+ -
+ tag: component
+ value: cpu
+ macros:
+ -
+ macro: '{$CPU.INTERRUPT.CRIT.MAX}'
+ value: '50'
+ description: 'The critical threshold of the % Interrupt Time counter.'
+ -
+ macro: '{$CPU.PRIV.CRIT.MAX}'
+ value: '30'
+ description: 'The threshold of the % Privileged Time counter.'
+ -
+ macro: '{$CPU.QUEUE.CRIT.MAX}'
+ value: '3'
+ description: 'The threshold of the Processor Queue Length counter.'
+ -
+ macro: '{$CPU.UTIL.CRIT}'
+ value: '90'
+ description: 'The critical threshold of the CPU utilization in %.'
+ -
+ uuid: 1b04ac025fcf474cb97e6c8c95855eeb
+ template: 'Windows filesystems by Zabbix agent active'
+ name: 'Windows filesystems by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: c6af2bf05ad2458babf0a3533d6c36f3
+ name: 'Mounted filesystem discovery'
+ type: ZABBIX_ACTIVE
+ key: vfs.fs.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.MATCHES}'
+ formulaid: E
+ -
+ macro: '{#FSTYPE}'
+ value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: F
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#FSNAME}'
+ value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#FSDRIVETYPE}'
+ value: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#FSDRIVETYPE}'
+ value: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of file systems of different types.'
+ item_prototypes:
+ -
+ uuid: 6d3c76d7f4644e07a351aacc0c2b0651
+ name: '{#FSLABEL}({#FSNAME}): Space utilization'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.size[{#FSNAME},pused]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'Space utilization in % for {#FSNAME}'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: 4ca1e75a143f4b1c9cb1b1e9d0d02286
+ name: '{#FSLABEL}({#FSNAME}): Total space'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ history: 7d
+ units: B
+ description: 'Total space in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ -
+ uuid: c221010d5aef4bb182681092d0df3586
+ name: '{#FSLABEL}({#FSNAME}): Used space'
+ type: ZABBIX_ACTIVE
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ history: 7d
+ units: B
+ description: 'Used storage in Bytes'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: filesystem
+ value: '{#FSNAME}'
+ trigger_prototypes:
+ -
+ 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)
+ 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})'
+ priority: AVERAGE
+ 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 will be full in less than 24 hours.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ 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)
+ name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
+ 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:"{#FSNAME}"}.
+ 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.
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
+ 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)
+ tags:
+ -
+ tag: scope
+ value: capacity
+ graph_prototypes:
+ -
+ uuid: 112006f664834dcf932373b57900425c
+ name: '{#FSLABEL}({#FSNAME}): Disk space usage'
+ width: '600'
+ height: '340'
+ type: PIE
+ show_3d: 'YES'
+ graph_items:
+ -
+ color: '969696'
+ calc_fnc: LAST
+ type: GRAPH_SUM
+ item:
+ host: 'Windows filesystems by Zabbix agent active'
+ key: 'vfs.fs.size[{#FSNAME},total]'
+ -
+ sortorder: '1'
+ color: C80000
+ calc_fnc: LAST
+ item:
+ host: 'Windows filesystems by Zabbix agent active'
+ key: 'vfs.fs.size[{#FSNAME},used]'
+ macros:
+ -
+ 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.'
+ -
+ macro: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSNAME.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
+ value: '^(?:/dev|/sys|/run|/proc|.+/shm$)'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSTYPE.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
+ value: ^\s$
+ description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.CRIT}'
+ value: '90'
+ description: 'The critical threshold of the filesystem utilization in percent.'
+ -
+ macro: '{$VFS.FS.PUSED.MAX.WARN}'
+ value: '80'
+ description: 'The warning threshold of the filesystem utilization in percent.'
+ -
+ uuid: 6dd37a415f4c40aa960d7ba91b6b5143
+ template: 'Windows generic by Zabbix agent active'
+ name: 'Windows generic by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 09ff6e03432f4db58e5f43697d0333e8
+ name: 'Number of threads'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\System\Threads"]'
+ history: 7d
+ description: 'The number of threads used by all running processes.'
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 665093a48f39404e9ae3221657a5e962
+ name: 'Number of processes'
+ type: ZABBIX_ACTIVE
+ key: 'proc.num[]'
+ history: 7d
+ description: 'The number of processes.'
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 73b821a638a74e6d86be642952d2d6fe
+ name: 'System name'
+ type: ZABBIX_ACTIVE
+ key: system.hostname
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'System host name.'
+ inventory_link: NAME
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 2f5aa644755c4d18a3eafc74bde2d3ad
+ expression: 'last(/Windows generic by Zabbix agent active/system.hostname,#1)<>last(/Windows generic by Zabbix agent active/system.hostname,#2) and length(last(/Windows generic by Zabbix agent active/system.hostname))>0'
+ name: 'System name has changed (new name: {ITEM.VALUE})'
+ priority: INFO
+ description: 'System name has changed. Ack to close.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 78f2089b58f54042ac70fd9ac3b2aa7e
+ name: 'System local time'
+ type: ZABBIX_ACTIVE
+ key: system.localtime
+ history: 7d
+ units: unixtime
+ description: 'System local time of the host.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: ed8075fd5332427ca0f9b56d55f4912b
+ expression: 'fuzzytime(/Windows generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
+ name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
+ priority: WARNING
+ description: 'The host system time is different from the Zabbix server time.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ -
+ uuid: 0522b89bdee248c5aad6ff77d9a68311
+ name: 'Operating system architecture'
+ type: ZABBIX_ACTIVE
+ key: system.sw.arch
+ delay: 1h
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'Operating system architecture of the host.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: os
+ -
+ uuid: 383c3f59afee455d8981fe85e46c94dd
+ name: 'System description'
+ type: ZABBIX_ACTIVE
+ key: system.uname
+ delay: 15m
+ history: 2w
+ trends: '0'
+ value_type: CHAR
+ description: 'System description of the host.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ uuid: e5342587828d40ed8feafdccdd6d92e3
+ name: Uptime
+ type: ZABBIX_ACTIVE
+ key: system.uptime
+ delay: 30s
+ history: 2w
+ trends: 0d
+ units: uptime
+ description: 'System uptime in ''N days, hh:mm:ss'' format.'
+ tags:
+ -
+ tag: component
+ value: system
+ triggers:
+ -
+ uuid: 13f9c722d9664d988a97a1c8123ad17a
+ expression: 'last(/Windows generic by Zabbix agent active/system.uptime)<10m'
+ name: 'Host has been restarted (uptime < 10m)'
+ priority: WARNING
+ description: 'The device uptime is less than 10 minutes.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: notice
+ macros:
+ -
+ macro: '{$SYSTEM.FUZZYTIME.MAX}'
+ value: '60'
+ description: 'The threshold for difference of system time in seconds.'
+ -
+ uuid: e6535f54a0554463889fb8c65db11250
+ template: 'Windows memory by Zabbix agent active'
+ name: 'Windows memory by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 50610f9c46a848bdbdc08ed5b9c2a156
+ name: 'Cache bytes'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Memory\Cache Bytes"]'
+ history: 7d
+ units: B
+ description: |
+ Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,
+ Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays
+ the last observed value only; it is not an average.
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 6faf395b5bb14456a33e6689b7618613
+ name: 'Free system page table entries'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Memory\Free System Page Table Entries"]'
+ history: 7d
+ description: |
+ This indicates the number of page table entries not currently in use by the system. If the number is less
+ than 5,000, there may well be a memory leak or you running out of memory.
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 24fd9695799846b3ba812f8ec6148972
+ expression: 'max(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}'
+ name: 'Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m)'
+ priority: WARNING
+ description: 'The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: 9529c721229841f78362b4759cf2a910
+ name: 'Memory page faults per second'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Memory\Page Faults/sec"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages
+ faulted per second because only one page is faulted in each fault operation, hence this is also equal
+ to the number of page fault operations. This counter includes both hard faults (those that require
+ disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most
+ processors can handle large numbers of soft faults without significant consequence. However, hard faults,
+ which require disk access, can cause significant delays.
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: f6c50f669f59467e9c5dca1c54f11ba6
+ name: 'Memory pages per second'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Memory\Pages/sec"]'
+ history: 7d
+ value_type: FLOAT
+ description: |
+ This measures the rate at which pages are read from or written to disk to resolve hard page faults.
+ If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: 655191afccad4673a641808be5500b46
+ expression: 'min(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}'
+ name: 'The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m)'
+ priority: WARNING
+ description: 'The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: 46dbc910c830421f9a95e0da1e467b39
+ name: 'Memory pool non-paged'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Memory\Pool Nonpaged Bytes"]'
+ history: 7d
+ units: B
+ description: |
+ This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects
+ that cannot be written to disk but instead must remain in physical memory as long as they are allocated.
+ There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).
+ A typical Event ID 2019 is recorded in the system event log.
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 81b54eadc3c546858982dc8cf9228dd4
+ name: 'Used swap space in %'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The used space of swap volume/file in percent.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 2eec55a22cf74c16b06eb6f9028637f8
+ name: 'Free swap space'
+ type: CALCULATED
+ key: system.swap.free
+ history: 7d
+ units: B
+ params: 'last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])'
+ description: 'The free space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 5f86e2a308a342769cb5bf91da3976ef
+ name: 'Free swap space in %'
+ type: DEPENDENT
+ key: system.swap.pfree
+ delay: '0'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'The free space of swap volume/file in percent.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100 - value)'
+ master_item:
+ key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: 9a73bfe24f884eea9bb9a13042b6dbfd
+ name: 'Total swap space'
+ type: ZABBIX_ACTIVE
+ key: 'system.swap.size[,total]'
+ history: 7d
+ units: B
+ description: 'The total space of swap volume/file in bytes.'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ tag: component
+ value: storage
+ -
+ uuid: b6b897e08b0f4dd1b858304d5456ab86
+ name: 'Total memory'
+ type: ZABBIX_ACTIVE
+ key: 'vm.memory.size[total]'
+ history: 7d
+ units: B
+ description: 'Total memory in Bytes'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 7b6b29a6d984476785e77b9604874ed5
+ name: 'Used memory'
+ type: ZABBIX_ACTIVE
+ key: 'vm.memory.size[used]'
+ history: 7d
+ units: B
+ description: 'Used memory in Bytes'
+ tags:
+ -
+ tag: component
+ value: memory
+ -
+ uuid: 5731f496327c422e8fb33a1db6412d74
+ name: 'Memory utilization'
+ type: CALCULATED
+ key: vm.memory.util
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
+ description: 'Memory utilization in %'
+ tags:
+ -
+ tag: component
+ value: memory
+ triggers:
+ -
+ uuid: df816288349743ad9b2015dda9066abb
+ expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ priority: AVERAGE
+ description: 'The system is running out of free memory.'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ tag: scope
+ value: performance
+ macros:
+ -
+ macro: '{$MEM.PAGE_SEC.CRIT.MAX}'
+ value: '1000'
+ description: 'The warning threshold of the Memory Pages/sec counter.'
+ -
+ macro: '{$MEM.PAGE_TABLE_CRIT.MIN}'
+ value: '5000'
+ description: 'The warning threshold of the Free System Page Table Entries counter.'
+ -
+ macro: '{$MEMORY.UTIL.MAX}'
+ value: '90'
+ description: 'The warning threshold of the Memory util item.'
+ -
+ macro: '{$SWAP.PFREE.MIN.WARN}'
+ value: '20'
+ description: 'The warning threshold of the minimum free swap.'
+ -
+ uuid: 792cb76a1a6340d8acb36d8802d22c00
+ template: 'Windows network by Zabbix agent active'
+ name: 'Windows network by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ items:
+ -
+ uuid: 7c115b04b8904cc187aa3c8bbf456a57
+ name: 'Network interfaces WMI get'
+ type: ZABBIX_ACTIVE
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ history: '0'
+ trends: '0'
+ value_type: TEXT
+ description: 'Raw data of win32_networkadapter.'
+ preprocessing:
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ tags:
+ -
+ tag: component
+ value: raw
+ discovery_rules:
+ -
+ uuid: 876e793097d949e49d23b6c4e7df4988
+ name: 'Network interfaces discovery'
+ type: DEPENDENT
+ key: net.if.discovery
+ delay: '0'
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.MATCHES}'
+ formulaid: E
+ -
+ macro: '{#IFNAME}'
+ value: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: F
+ -
+ macro: '{#IFDESCR}'
+ value: '{$NET.IF.IFDESCR.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#IFDESCR}'
+ value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ -
+ macro: '{#IFALIAS}'
+ value: '{$NET.IF.IFALIAS.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#IFALIAS}'
+ value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of installed network interfaces.'
+ item_prototypes:
+ -
+ uuid: a1c5afacb66f4c9abf4f8e901f42cb64
+ name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.in["{#IFGUID}",dropped]'
+ delay: 3m
+ history: 7d
+ description: 'The number of incoming packets dropped on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 3ee5bf3e405c4de2856bfaa729b0f469
+ name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.in["{#IFGUID}",errors]'
+ delay: 3m
+ history: 7d
+ description: 'The number of incoming packets with errors on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: ea8b2a4901254965b40e57f7bdf1ea3f
+ name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.in["{#IFGUID}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ description: 'Incoming traffic on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 8feffdee85e2486191de0968ec7918b7
+ name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.out["{#IFGUID}",dropped]'
+ delay: 3m
+ history: 7d
+ description: 'The number of outgoing packets dropped on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 84d1943e15c046f894bf0219288671e4
+ name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.out["{#IFGUID}",errors]'
+ delay: 3m
+ history: 7d
+ description: 'The number of outgoing packets with errors on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: fb0785a7e7e54743bef715fb60dbe890
+ name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
+ type: ZABBIX_ACTIVE
+ key: 'net.if.out["{#IFGUID}"]'
+ delay: 3m
+ history: 7d
+ units: bps
+ description: 'Outgoing traffic on the network interface.'
+ preprocessing:
+ -
+ type: CHANGE_PER_SECOND
+ parameters:
+ - ''
+ -
+ type: MULTIPLIER
+ parameters:
+ - '8'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 27bf112e7c1f4652aa326fa240215e41
+ name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
+ type: DEPENDENT
+ key: 'net.if.speed["{#IFGUID}"]'
+ delay: '0'
+ history: 7d
+ trends: 0d
+ units: bps
+ description: 'Estimated bandwidth of the network interface if any.'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[?(@.GUID == "{#IFGUID}")].Speed.first()'
+ error_handler: CUSTOM_VALUE
+ error_handler_params: '0'
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (value==''9223372036854775807'' ? 0 : value)'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ -
+ uuid: 44fd303ebab348ceb99c74599c587cb4
+ name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
+ type: DEPENDENT
+ key: 'net.if.status["{#IFGUID}"]'
+ delay: '0'
+ history: 7d
+ trends: '0'
+ description: 'The operational status of the network interface.'
+ valuemap:
+ name: 'Win32_NetworkAdapter::NetConnectionStatus'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: d2af1fae64c940f2b2b923e159b836e6
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ opdata: 'Current state: {ITEM.LASTVALUE1}'
+ priority: AVERAGE
+ description: |
+ This trigger expression works as follows:
+ 1. Can be triggered if operations status is down.
+ 2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.
+ No new trigger will be fired if this interface is down.
+ 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).
+
+ WARNING: if closed manually - won't fire again on next poll, because of .diff.
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: availability
+ -
+ uuid: 14f7982f0a1a49799646fe4685df7db8
+ name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
+ type: DEPENDENT
+ key: 'net.if.type["{#IFGUID}"]'
+ delay: '0'
+ history: 7d
+ trends: 0d
+ description: 'The type of the network interface.'
+ valuemap:
+ name: 'Win32_NetworkAdapter::AdapterTypeId'
+ preprocessing:
+ -
+ type: JSONPATH
+ parameters:
+ - '$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()'
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1d
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ tags:
+ -
+ tag: component
+ value: network
+ -
+ tag: description
+ value: '{#IFALIAS}'
+ -
+ tag: interface
+ value: '{#IFNAME}'
+ trigger_prototypes:
+ -
+ uuid: d2629ca744034cf7b92a39d7f847195a
+ expression: |
+ change(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])<0 and
+ last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 and
+ last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2
+ name: 'Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
+ opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
+ priority: INFO
+ description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
+ recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: capacity
+ -
+ uuid: 3bdd014bdaf04f0885816cbf1da11309
+ expression: |
+ (avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) or
+ avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])) and
+ last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) and
+ avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])
+ name: 'Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
+ opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'The network interface utilization is close to its estimated maximum bandwidth.'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
+ recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: e29c3aa283d74838b45040394a3eabe1
+ expression: |
+ min(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ or min(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
+ recovery_mode: RECOVERY_EXPRESSION
+ recovery_expression: |
+ max(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ and max(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
+ name: 'Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
+ opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
+ priority: WARNING
+ description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
+ expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
+ recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
+ tags:
+ -
+ tag: scope
+ value: availability
+ graph_prototypes:
+ -
+ uuid: 5042d069d9364413bc594f2a22a31cb6
+ name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Windows network by Zabbix agent active'
+ key: 'net.if.in["{#IFGUID}"]'
+ -
+ sortorder: '1'
+ drawtype: BOLD_LINE
+ color: 2774A4
+ item:
+ host: 'Windows network by Zabbix agent active'
+ key: 'net.if.out["{#IFGUID}"]'
+ -
+ sortorder: '2'
+ color: F63100
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent active'
+ key: 'net.if.out["{#IFGUID}",errors]'
+ -
+ sortorder: '3'
+ color: A54F10
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent active'
+ key: 'net.if.in["{#IFGUID}",errors]'
+ -
+ sortorder: '4'
+ color: FC6EA3
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent active'
+ key: 'net.if.out["{#IFGUID}",dropped]'
+ -
+ sortorder: '5'
+ color: 6C59DC
+ yaxisside: RIGHT
+ item:
+ host: 'Windows network by Zabbix agent active'
+ key: 'net.if.in["{#IFGUID}",dropped]'
+ master_item:
+ key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - |
+ output = JSON.parse(value).map(function(net){
+ return {
+ "{#IFNAME}": net.Name,
+ "{#IFDESCR}": net.Description,
+ "{#IFALIAS}": net.NetConnectionID,
+ "{#IFGUID}": net.GUID
+ }})
+ return JSON.stringify({"data": output})
+ -
+ type: DISCARD_UNCHANGED_HEARTBEAT
+ parameters:
+ - 1h
+ macros:
+ -
+ macro: '{$IF.ERRORS.WARN}'
+ value: '2'
+ -
+ macro: '{$IF.UTIL.MAX}'
+ value: '90'
+ -
+ macro: '{$IFCONTROL}'
+ value: '1'
+ -
+ macro: '{$NET.IF.IFALIAS.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
+ value: CHANGE_THIS
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFDESCR.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
+ value: CHANGE_THIS
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFNAME.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
+ value: Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer
+ description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
+ dashboards:
+ -
+ uuid: 1f4737b4a5364b35a8358dccedf6a492
+ name: 'Network interfaces'
+ pages:
+ -
+ widgets:
+ -
+ type: GRAPH_PROTOTYPE
+ width: '24'
+ height: '5'
+ fields:
+ -
+ type: INTEGER
+ name: source_type
+ value: '2'
+ -
+ type: INTEGER
+ name: columns
+ value: '1'
+ -
+ type: INTEGER
+ name: rows
+ value: '1'
+ -
+ type: GRAPH_PROTOTYPE
+ name: graphid
+ value:
+ name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
+ host: 'Windows network by Zabbix agent active'
+ valuemaps:
+ -
+ uuid: 7300d3f66dec4f90bcd6889d206db89f
+ name: 'Win32_NetworkAdapter::AdapterTypeId'
+ mappings:
+ -
+ value: '0'
+ newvalue: 'Ethernet 802.3'
+ -
+ value: '1'
+ newvalue: 'Token Ring 802.5'
+ -
+ value: '2'
+ newvalue: 'Fiber Distributed Data Interface (FDDI)'
+ -
+ value: '3'
+ newvalue: 'Wide Area Network (WAN)'
+ -
+ value: '4'
+ newvalue: LocalTalk
+ -
+ value: '5'
+ newvalue: 'Ethernet using DIX header format'
+ -
+ value: '6'
+ newvalue: ARCNET
+ -
+ value: '7'
+ newvalue: 'ARCNET (878.2)'
+ -
+ value: '8'
+ newvalue: ATM
+ -
+ value: '9'
+ newvalue: Wireless
+ -
+ value: '10'
+ newvalue: 'Infrared Wireless'
+ -
+ value: '11'
+ newvalue: Bpc
+ -
+ value: '12'
+ newvalue: CoWan
+ -
+ value: '13'
+ newvalue: '1394'
+ -
+ uuid: a1e647b6b26547bfbc044d213150c71b
+ name: 'Win32_NetworkAdapter::NetConnectionStatus'
+ mappings:
+ -
+ value: '0'
+ newvalue: Disconnected
+ -
+ value: '1'
+ newvalue: Connecting
+ -
+ value: '2'
+ newvalue: Connected
+ -
+ value: '3'
+ newvalue: Disconnecting
+ -
+ value: '4'
+ newvalue: 'Hardware Not Present'
+ -
+ value: '5'
+ newvalue: 'Hardware Disabled'
+ -
+ value: '6'
+ newvalue: 'Hardware Malfunction'
+ -
+ value: '7'
+ newvalue: 'Media Disconnected'
+ -
+ value: '8'
+ newvalue: Authenticating
+ -
+ value: '9'
+ newvalue: 'Authentication Succeeded'
+ -
+ value: '10'
+ newvalue: 'Authentication Failed'
+ -
+ value: '11'
+ newvalue: 'Invalid Address'
+ -
+ value: '12'
+ newvalue: 'Credentials Required'
+ -
+ uuid: 222cf73cb40941f6be62db0540524e5e
+ template: 'Windows physical disks by Zabbix agent active'
+ name: 'Windows physical disks by Zabbix agent active'
+ description: 'Template tooling version used: 0.41'
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 355a9297d1fb4cb0b587e40ef152dc0f
+ name: 'Physical disks discovery'
+ type: ZABBIX_ACTIVE
+ key: 'perf_instance_en.discovery[PhysicalDisk]'
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#DEVNAME}'
+ value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ description: 'Discovery of installed physical disks.'
+ item_prototypes:
+ -
+ uuid: 7d6ab9b1b76041869d7818652b5c5b0e
+ name: '{#DEVNAME}: Disk utilization by idle time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
+ history: 7d
+ value_type: FLOAT
+ units: '%'
+ description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.'
+ preprocessing:
+ -
+ type: JAVASCRIPT
+ parameters:
+ - 'return (100 - value)'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ trigger_prototypes:
+ -
+ uuid: 6baacd2fab15466ab3b12dcfb7e2980a
+ expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}'
+ name: '{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m)'
+ priority: WARNING
+ description: 'The disk appears to be under heavy load'
+ manual_close: 'YES'
+ dependencies:
+ -
+ name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
+ expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
+ -
+ name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
+ expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: ee3e17e348f84f8bb4eb9675cb0ef045
+ name: '{#DEVNAME}: Average disk read queue length'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
+ history: 7d
+ value_type: FLOAT
+ description: 'Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 83bc066220ec47bb898351e8d20fb81d
+ name: '{#DEVNAME}: Disk read request avg waiting time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
+ history: 7d
+ value_type: FLOAT
+ units: s
+ description: 'The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ trigger_prototypes:
+ -
+ uuid: 32f7d131336348178069bbafbdabcfee
+ expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
+ name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
+ priority: WARNING
+ description: 'This trigger might indicate disk {#DEVNAME} saturation.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 9f906bcb67f847b7bfbca098659063d4
+ name: '{#DEVNAME}: Disk write request avg waiting time'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
+ history: 7d
+ value_type: FLOAT
+ units: s
+ description: 'The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ trigger_prototypes:
+ -
+ uuid: d7116046921d441dba5830140f8bf433
+ expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
+ name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
+ priority: WARNING
+ description: 'This trigger might indicate disk {#DEVNAME} saturation.'
+ manual_close: 'YES'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 584f4a8fba0b4e3cba7f37cba42cd97c
+ name: '{#DEVNAME}: Average disk write queue length'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
+ history: 7d
+ value_type: FLOAT
+ description: 'Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 1201592953094d48af20a0e420bfa846
+ name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
+ history: 7d
+ value_type: FLOAT
+ description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: e0f052d64ea544b09dfe619cb91f28c8
+ name: '{#DEVNAME}: Disk read rate'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
+ history: 7d
+ value_type: FLOAT
+ units: '!r/s'
+ description: 'Rate of read operations on the disk.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ -
+ uuid: 33e5e9eccad84737bf428fc54b25fc5c
+ name: '{#DEVNAME}: Disk write rate'
+ type: ZABBIX_ACTIVE
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
+ history: 7d
+ value_type: FLOAT
+ units: '!w/s'
+ description: 'Rate of write operations on the disk.'
+ tags:
+ -
+ tag: component
+ value: storage
+ -
+ tag: disk
+ value: '{#DEVNAME}'
+ graph_prototypes:
+ -
+ uuid: b84e9fa116434ec8ba9ab9bb7a2aa6d2
+ name: '{#DEVNAME}: Disk average queue length'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
+ -
+ uuid: ece6c5cbff6e4997b52ea1d7652b7680
+ name: '{#DEVNAME}: Disk average waiting time'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
+ -
+ uuid: 681afbf26ef340c682f8deffd921ae2d
+ name: '{#DEVNAME}: Disk read/write rates'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
+ -
+ uuid: 58fb9ac4f2864730aaeda6a035b1591e
+ name: '{#DEVNAME}: Disk utilization and queue'
+ graph_items:
+ -
+ color: 1A7C11
+ yaxisside: RIGHT
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
+ -
+ sortorder: '1'
+ drawtype: GRADIENT_LINE
+ color: 2774A4
+ item:
+ host: 'Windows physical disks by Zabbix agent active'
+ key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
+ preprocessing:
+ -
+ type: STR_REPLACE
+ parameters:
+ - '{#INSTANCE}'
+ - '{#DEVNAME}'
+ macros:
+ -
+ macro: '{$VFS.DEV.DEVNAME.MATCHES}'
+ value: '.*'
+ description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
+ value: _Total
+ description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$VFS.DEV.READ.AWAIT.WARN}'
+ value: '0.02'
+ description: 'Disk read average response time (in s) before the trigger would fire.'
+ -
+ macro: '{$VFS.DEV.UTIL.MAX.WARN}'
+ value: '95'
+ description: 'The warning threshold of disk time utilization in percent.'
+ -
+ macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
+ value: '0.02'
+ description: 'Disk write average response time (in s) before the trigger would fire.'
+ -
+ uuid: 3366a65bbc3e46348bec303e84e23b15
+ template: 'Windows services by Zabbix agent active'
+ name: 'Windows services by Zabbix agent active'
+ description: |
+ Template Services OS Windows
+
+ Template tooling version used: 0.41
+ groups:
+ -
+ name: Templates/Modules
+ discovery_rules:
+ -
+ uuid: 25e19e75eb4d4fd68df976323c7fac21
+ name: 'Windows services discovery'
+ type: ZABBIX_ACTIVE
+ key: service.discovery
+ delay: 1h
+ filter:
+ evaltype: AND
+ conditions:
+ -
+ macro: '{#SERVICE.NAME}'
+ value: '{$SERVICE.NAME.MATCHES}'
+ formulaid: A
+ -
+ macro: '{#SERVICE.NAME}'
+ value: '{$SERVICE.NAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: B
+ -
+ macro: '{#SERVICE.STARTUPNAME}'
+ value: '{$SERVICE.STARTUPNAME.MATCHES}'
+ formulaid: C
+ -
+ macro: '{#SERVICE.STARTUPNAME}'
+ value: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
+ operator: NOT_MATCHES_REGEX
+ formulaid: D
+ description: 'Discovery of Windows services of different types as defined in template''s macros.'
+ item_prototypes:
+ -
+ uuid: c1606f1f7c9e4eb494c0c5e4e4f21ea5
+ name: 'State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME})'
+ type: ZABBIX_ACTIVE
+ key: 'service.info["{#SERVICE.NAME}",state]'
+ history: 7d
+ valuemap:
+ name: 'Windows service state'
+ tags:
+ -
+ tag: component
+ value: system
+ -
+ tag: name
+ value: '{#SERVICE.DISPLAYNAME}'
+ -
+ tag: service
+ value: '{#SERVICE.NAME}'
+ trigger_prototypes:
+ -
+ uuid: df3247515e2e4b48b2decd8401c11736
+ expression: 'min(/Windows services by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0'
+ name: '"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME})'
+ priority: AVERAGE
+ description: 'The service has a state other than "Running" for the last three times.'
+ tags:
+ -
+ tag: scope
+ value: notice
+ macros:
+ -
+ macro: '{$SERVICE.NAME.MATCHES}'
+ value: '^.*$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$SERVICE.NAME.NOT_MATCHES}'
+ value: '^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$SERVICE.STARTUPNAME.MATCHES}'
+ value: '^(?:automatic|automatic delayed)$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ -
+ macro: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
+ value: '^(?:manual|disabled)$'
+ description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
+ valuemaps:
+ -
+ uuid: af7bd46d70ed4058afa4961d130dc0b2
+ name: 'Windows service state'
+ mappings:
+ -
+ value: '0'
+ newvalue: Running
+ -
+ value: '1'
+ newvalue: Paused
+ -
+ value: '2'
+ newvalue: 'Start pending'
+ -
+ value: '3'
+ newvalue: 'Pause pending'
+ -
+ value: '4'
+ newvalue: 'Continue pending'
+ -
+ value: '5'
+ newvalue: 'Stop pending'
+ -
+ value: '6'
+ newvalue: Stopped
+ -
+ value: '7'
+ newvalue: Unknown
+ -
+ value: '255'
+ newvalue: 'No such service'
+ triggers:
+ -
+ uuid: dfba6b17ab94449181584c8a4410f50f
+ expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}'
+ name: 'CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m)'
+ priority: WARNING
+ description: 'The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.'
+ dependencies:
+ -
+ name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
+ expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ -
+ uuid: 237760596cd647bca82044e843992d87
+ expression: 'min(/Windows memory by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent active/system.swap.size[,total])>0'
+ 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'
+ dependencies:
+ -
+ name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
+ expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
+ tags:
+ -
+ tag: scope
+ value: performance
+ graphs:
+ -
+ uuid: 12c859baa46044a0a439f26d2eb50436
+ name: 'CPU jumps'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows CPU by Zabbix agent active'
+ key: 'perf_counter_en["\System\Context Switches/sec"]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows CPU by Zabbix agent active'
+ key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
+ -
+ uuid: 523969311486483e93b4704c544861d6
+ name: 'CPU usage'
+ type: STACKED
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows CPU by Zabbix agent active'
+ key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows CPU by Zabbix agent active'
+ key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
+ -
+ uuid: 33392bbdf1d146e2ad347fafa4f9a5d2
+ name: 'CPU utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Windows CPU by Zabbix agent active'
+ key: system.cpu.util
+ -
+ uuid: 3c50693dde6c4f6fa1487e3969a1c87d
+ name: 'Memory utilization'
+ ymin_type_1: FIXED
+ ymax_type_1: FIXED
+ graph_items:
+ -
+ drawtype: GRADIENT_LINE
+ color: 1A7C11
+ item:
+ host: 'Windows memory by Zabbix agent active'
+ key: vm.memory.util
+ -
+ uuid: 1d27499155b04933a51e4e0f419ea9e8
+ name: 'Swap usage'
+ graph_items:
+ -
+ color: 1A7C11
+ item:
+ host: 'Windows memory by Zabbix agent active'
+ key: system.swap.free
+ -
+ sortorder: '1'
+ color: 2774A4
+ item:
+ host: 'Windows memory by Zabbix agent active'
+ key: 'system.swap.size[,total]'
diff --git a/templates/net/brocade_foundry_sw_snmp/README.md b/templates/net/brocade_foundry_sw_snmp/README.md
index 4b4a21b3993..fa22bafe9fc 100644
--- a/templates/net/brocade_foundry_sw_snmp/README.md
+++ b/templates/net/brocade_foundry_sw_snmp/README.md
@@ -1,50 +1,4 @@
-# Brocade_Foundry Performance SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |CPU utilization |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The statistics collection of 1 minute CPU utilization.</p> |SNMP |system.cpu.util[snAgGblCpuUtil1MinAvg.0] |
-|Memory |Memory utilization |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The system dynamic memory utilization, in unit of percentage.</p><p>Deprecated: Refer to snAgSystemDRAMUtil.</p><p>For NI platforms, refer to snAgentBrdMemoryUtil100thPercent.</p> |SNMP |vm.memory.util[snAgGblDynMemUtil.0] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Brocade_Foundry Performance SNMP/system.cpu.util[snAgGblCpuUtil1MinAvg.0],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Brocade_Foundry Performance SNMP/vm.memory.util[snAgGblDynMemUtil.0],5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Brocade_Foundry Nonstackable SNMP
## Overview
diff --git a/templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.yaml b/templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.yaml
index 3fc20967b4f..808bca78408 100644
--- a/templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.yaml
+++ b/templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.yaml
@@ -1,11 +1,8 @@
zabbix_export:
version: '6.0'
- date: '2022-01-28T13:10:51Z'
+ date: '2022-02-04T07:24:09Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 36bff6c29af64692839d077febfc7079
name: 'Templates/Network devices'
templates:
@@ -2290,88 +2287,6 @@ zabbix_export:
value: '2'
newvalue: unknown
-
- uuid: c55052212c774e3fbab00343050b3db5
- template: 'Brocade_Foundry Performance SNMP'
- name: 'Brocade_Foundry Performance SNMP'
- description: |
- Template Module Brocade_Foundry Performance
-
- MIBs used:
- FOUNDRY-SN-AGENT-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: b2bda926f1864eb893c53ef0c6cad2a2
- name: 'CPU utilization'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.1991.1.1.2.1.52.0
- key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: FOUNDRY-SN-AGENT-MIB
- The statistics collection of 1 minute CPU utilization.
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 7b068eb5d43846d987148f38f66b1f1a
- expression: 'min(/Brocade_Foundry Performance SNMP/system.cpu.util[snAgGblCpuUtil1MinAvg.0],5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: e357f3d53b9a48a087e140b94b3aff1d
- name: 'Memory utilization'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.1991.1.1.2.1.53.0
- key: 'vm.memory.util[snAgGblDynMemUtil.0]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: FOUNDRY-SN-AGENT-MIB
- The system dynamic memory utilization, in unit of percentage.
- Deprecated: Refer to snAgSystemDRAMUtil.
- For NI platforms, refer to snAgentBrdMemoryUtil100thPercent.
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 929046c4439741a9aa3ab00933322a86
- expression: 'min(/Brocade_Foundry Performance SNMP/vm.memory.util[snAgGblDynMemUtil.0],5m)>{$MEMORY.UTIL.MAX}'
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- -
uuid: f64ad01567914165a493815e492fb315
template: 'Brocade_Foundry Stackable SNMP'
name: 'Brocade_Foundry Stackable SNMP'
@@ -4616,18 +4531,6 @@ zabbix_export:
newvalue: unknown
graphs:
-
- uuid: ed536efa5baa4d5ca8ee1af4fc813e72
- name: 'CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Brocade_Foundry Performance SNMP'
- key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
- -
uuid: 569601f45b394cc68ddf75f37c086ec2
name: 'CPU utilization'
ymin_type_1: FIXED
@@ -4652,18 +4555,6 @@ zabbix_export:
host: 'Brocade_Foundry Stackable SNMP'
key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
-
- uuid: 8e5d8b8e81d2473c99df3d7ad5c147c3
- name: 'Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Brocade_Foundry Performance SNMP'
- key: 'vm.memory.util[snAgGblDynMemUtil.0]'
- -
uuid: e9b341d71fde4609b1e38d917042fd3b
name: 'Memory utilization'
ymin_type_1: FIXED
diff --git a/templates/net/cisco/cisco_snmp/README.md b/templates/net/cisco/cisco_snmp/README.md
index 9f7be4492a3..bc592eac3f4 100644
--- a/templates/net/cisco/cisco_snmp/README.md
+++ b/templates/net/cisco/cisco_snmp/README.md
@@ -1,305 +1,4 @@
-# Cisco CISCO-MEMORY-POOL-MIB SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Memory Discovery |<p>Discovery of ciscoMemoryPoolTable, a table of memory pool monitoring entries.</p><p>http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html</p> |SNMP |memory.discovery |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Memory |{#SNMPVALUE}: Used memory |<p>MIB: CISCO-MEMORY-POOL-MIB</p><p>Indicates the number of bytes from the memory pool that are currently in use by applications on the managed device.</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html</p> |SNMP |vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}] |
-|Memory |{#SNMPVALUE}: Free memory |<p>MIB: CISCO-MEMORY-POOL-MIB</p><p>Indicates the number of bytes from the memory pool that are currently unused on the managed device. Note that the sum of ciscoMemoryPoolUsed and ciscoMemoryPoolFree is the total amount of memory in the pool</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html</p> |SNMP |vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}] |
-|Memory |{#SNMPVALUE}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[vm.memory.util.{#SNMPINDEX}]<p>**Expression**:</p>`last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}])/(last(//vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}])+last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]))*100` |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Cisco CISCO-MEMORY-POOL-MIB SNMP/vm.memory.util[vm.memory.util.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Cisco CISCO-PROCESS-MIB SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU Discovery |<p>If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,</p><p>indexed with cpmCPUTotalIndex.</p><p>This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,</p><p>like different CPU chips, group of CPUs, or CPUs in different modules/cards.</p><p>In case of a single CPU, cpmCPUTotalTable has only one entry.</p> |SNMP |cpu.discovery |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |#{#SNMPINDEX}: CPU utilization |<p>MIB: CISCO-PROCESS-MIB</p><p>The cpmCPUTotal5minRev MIB object provides a more accurate view of the performance of the router over time than the MIB objects cpmCPUTotal1minRev and cpmCPUTotal5secRev . These MIB objects are not accurate because they look at CPU at one minute and five second intervals, respectively. These MIBs enable you to monitor the trends and plan the capacity of your network. The recommended baseline rising threshold for cpmCPUTotal5minRev is 90 percent. Depending on the platform, some routers that run at 90 percent, for example, 2500s, can exhibit performance degradation versus a high-end router, for example, the 7500 series, which can operate fine.</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html</p> |SNMP |system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|#{#SNMPINDEX}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Cisco CISCO-PROCESS-MIB SNMP/system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU Discovery |<p>If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,</p><p>indexed with cpmCPUTotalIndex.</p><p>This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,</p><p>like different CPU chips, group of CPUs, or CPUs in different modules/cards.</p><p>In case of a single CPU, cpmCPUTotalTable has only one entry.</p> |SNMP |cpu.discovery |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |{#SNMPVALUE}: CPU utilization |<p>MIB: CISCO-PROCESS-MIB</p><p>The overall CPU busy percentage in the last 5 minute</p><p>period. This object deprecates the avgBusy5 object from</p><p>the OLD-CISCO-SYSTEM-MIB. This object is deprecated</p><p>by cpmCPUTotal5minRev which has the changed range</p><p>of value (0..100).</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html</p> |SNMP |system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#SNMPVALUE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP/system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Cisco OLD-CISCO-CPU-MIB SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |CPU utilization |<p>MIB: OLD-CISCO-CPU-MIB</p><p>5 minute exponentially-decayed moving average of the CPU busy percentage.</p><p>Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html</p> |SNMP |system.cpu.util[avgBusy5] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Cisco OLD-CISCO-CPU-MIB SNMP/system.cpu.util[avgBusy5],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Cisco Inventory SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Entity Serial Numbers Discovery |<p>-</p> |SNMP |entity_sn.discovery<p>**Filter**:</p>AND <p>- {#ENT_SN} MATCHES_REGEX `.+`</p><p>- {#ENT_CLASS} MATCHES_REGEX `^3$`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Inventory |Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Inventory |Hardware serial number |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Inventory |Operating system |<p>MIB: SNMPv2-MIB</p> |SNMP |system.sw.os[sysDescr.0]<p>**Preprocessing**:</p><p>- REGEX: `Version (.+), RELEASE \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`last(/Cisco Inventory SNMP/system.hw.serialnumber,#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber,#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber))>0` |INFO |<p>Manual close: YES</p> |
-|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#1)<>last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#2) and length(last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0]))>0` |INFO |<p>Manual close: YES</p> |
-|{#ENT_NAME}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]))>0` |INFO |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Cisco CISCO-ENVMON-MIB SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$FAN_CRIT_STATUS:"critical"} |<p>-</p> |`3` |
-|{$FAN_CRIT_STATUS:"shutdown"} |<p>-</p> |`4` |
-|{$FAN_WARN_STATUS:"notFunctioning"} |<p>-</p> |`6` |
-|{$FAN_WARN_STATUS:"warning"} |<p>-</p> |`2` |
-|{$PSU_CRIT_STATUS:"critical"} |<p>-</p> |`3` |
-|{$PSU_CRIT_STATUS:"shutdown"} |<p>-</p> |`4` |
-|{$PSU_WARN_STATUS:"notFunctioning"} |<p>-</p> |`6` |
-|{$PSU_WARN_STATUS:"warning"} |<p>-</p> |`2` |
-|{$TEMP_CRIT:"CPU"} |<p>-</p> |`75` |
-|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
-|{$TEMP_CRIT_STATUS} |<p>-</p> |`3` |
-|{$TEMP_CRIT} |<p>-</p> |`60` |
-|{$TEMP_DISASTER_STATUS} |<p>-</p> |`4` |
-|{$TEMP_WARN:"CPU"} |<p>-</p> |`70` |
-|{$TEMP_WARN_STATUS} |<p>-</p> |`2` |
-|{$TEMP_WARN} |<p>-</p> |`50` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|FAN Discovery |<p>The table of fan status maintained by the environmental monitor.</p> |SNMP |fan.discovery |
-|PSU Discovery |<p>The table of power supply status maintained by the environmental monitor card.</p> |SNMP |psu.discovery |
-|Temperature Discovery |<p>Discovery of ciscoEnvMonTemperatureTable (ciscoEnvMonTemperatureDescr), a table of ambient temperature status</p><p>maintained by the environmental monitor.</p> |SNMP |temperature.discovery |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Fans |{#SENSOR_INFO}: Fan status |<p>MIB: CISCO-ENVMON-MIB</p> |SNMP |sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}] |
-|Power supply |{#SENSOR_INFO}: Power supply status |<p>MIB: CISCO-ENVMON-MIB</p> |SNMP |sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}] |
-|Temperature |{#SNMPVALUE}: Temperature |<p>MIB: CISCO-ENVMON-MIB</p><p>The current measurement of the test point being instrumented.</p> |SNMP |sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}] |
-|Temperature |{#SNMPVALUE}: Temperature status |<p>MIB: CISCO-ENVMON-MIB</p><p>The current state of the test point being instrumented.</p> |SNMP |sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#SENSOR_INFO}: Fan is in critical state |<p>Please check the fan unit</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"shutdown\"}")=1` |AVERAGE | |
-|{#SENSOR_INFO}: Fan is in warning state |<p>Please check the fan unit</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"notFunctioning\"}")=1` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Fan is in critical state</p> |
-|{#SENSOR_INFO}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"shutdown\"}")=1` |AVERAGE | |
-|{#SENSOR_INFO}: Power supply is in warning state |<p>Please check the power supply unit for errors</p> |`count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"notFunctioning\"}")=1` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Power supply is in critical state</p> |
-|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"} or last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS} `<p>Recovery expression:</p>`max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3` |WARNING |<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}</p> |
-|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"} or last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS} or last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_DISASTER_STATUS} `<p>Recovery expression:</p>`max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3` |HIGH | |
-|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"} |<p>-</p> |`avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}`<p>Recovery expression:</p>`min(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3` |AVERAGE | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Cisco IOS SNMP
## Overview
diff --git a/templates/net/cisco/cisco_snmp/template_net_cisco_snmp.yaml b/templates/net/cisco/cisco_snmp/template_net_cisco_snmp.yaml
index 157991a7ea8..02a3532927d 100644
--- a/templates/net/cisco/cisco_snmp/template_net_cisco_snmp.yaml
+++ b/templates/net/cisco/cisco_snmp/template_net_cisco_snmp.yaml
@@ -1,749 +1,12 @@
zabbix_export:
version: '6.0'
- date: '2022-01-26T14:03:25Z'
+ date: '2022-02-04T10:32:43Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 36bff6c29af64692839d077febfc7079
name: 'Templates/Network devices'
templates:
-
- uuid: 51af5cf9312b41d38ab22e02c9af6bbc
- template: 'Cisco CISCO-ENVMON-MIB SNMP'
- name: 'Cisco CISCO-ENVMON-MIB SNMP'
- description: |
- Template Cisco CISCO-ENVMON-MIB
-
- MIBs used:
- CISCO-ENVMON-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 31e5f90d88574fa0a35664e2c6b51e98
- name: 'FAN Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SENSOR_INFO},1.3.6.1.4.1.9.9.13.1.4.1.2]'
- key: fan.discovery
- delay: 1h
- description: 'The table of fan status maintained by the environmental monitor.'
- item_prototypes:
- -
- uuid: 62a05225a1634d7486fab92cf100544e
- name: '{#SENSOR_INFO}: Fan status'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.13.1.4.1.3.{#SNMPINDEX}'
- key: 'sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}]'
- delay: 3m
- history: 2w
- trends: 0d
- description: 'MIB: CISCO-ENVMON-MIB'
- valuemap:
- name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
- tags:
- -
- tag: component
- value: fan
- trigger_prototypes:
- -
- uuid: a9f5e9e2a65143298910e354e832bf2f
- expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"shutdown\"}")=1'
- name: '{#SENSOR_INFO}: Fan is in critical state'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: 'Please check the fan unit'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: 58cf2c24afd74e5cb048557e8e52138e
- expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_WARN_STATUS:\"notFunctioning\"}")=1'
- name: '{#SENSOR_INFO}: Fan is in warning state'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'Please check the fan unit'
- dependencies:
- -
- name: '{#SENSOR_INFO}: Fan is in critical state'
- expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"shutdown\"}")=1'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: 932817396a5b47f29af28e439711ef59
- name: 'PSU Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SENSOR_INFO},1.3.6.1.4.1.9.9.13.1.5.1.2]'
- key: psu.discovery
- delay: 1h
- description: 'The table of power supply status maintained by the environmental monitor card.'
- item_prototypes:
- -
- uuid: d500235d63ca41888585d267a7d82e2a
- name: '{#SENSOR_INFO}: Power supply status'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.13.1.5.1.3.{#SNMPINDEX}'
- key: 'sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}]'
- delay: 3m
- history: 2w
- trends: 0d
- description: 'MIB: CISCO-ENVMON-MIB'
- valuemap:
- name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
- tags:
- -
- tag: component
- value: power
- trigger_prototypes:
- -
- uuid: 5796e1e85ea949d0b86ce83f5daae958
- expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"shutdown\"}")=1'
- name: '{#SENSOR_INFO}: Power supply is in critical state'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: 'Please check the power supply unit for errors'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: 93892fed243f4f0b8c26ab67fa6e1800
- expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"warning\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_WARN_STATUS:\"notFunctioning\"}")=1'
- name: '{#SENSOR_INFO}: Power supply is in warning state'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'Please check the power supply unit for errors'
- dependencies:
- -
- name: '{#SENSOR_INFO}: Power supply is in critical state'
- expression: 'count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"critical\"}")=1 or count(/Cisco CISCO-ENVMON-MIB SNMP/sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"shutdown\"}")=1'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: e61bb682818b4f31a669acd31335160c
- name: 'Temperature Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.13.1.3.1.2]'
- key: temperature.discovery
- delay: 1h
- description: |
- Discovery of ciscoEnvMonTemperatureTable (ciscoEnvMonTemperatureDescr), a table of ambient temperature status
- maintained by the environmental monitor.
- item_prototypes:
- -
- uuid: 72f0970a636d44278b75f30a1dabfeb8
- name: '{#SNMPVALUE}: Temperature status'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.13.1.3.1.6.{#SNMPINDEX}'
- key: 'sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}]'
- delay: 3m
- history: 2w
- trends: 0d
- description: |
- MIB: CISCO-ENVMON-MIB
- The current state of the test point being instrumented.
- valuemap:
- name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
- tags:
- -
- tag: component
- value: temperature
- -
- uuid: 4859221e53d7485485db1c9060d7f705
- name: '{#SNMPVALUE}: Temperature'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.13.1.3.1.3.{#SNMPINDEX}'
- key: 'sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}]'
- delay: 3m
- value_type: FLOAT
- units: °C
- description: |
- MIB: CISCO-ENVMON-MIB
- The current measurement of the test point being instrumented.
- tags:
- -
- tag: component
- value: temperature
- trigger_prototypes:
- -
- uuid: 2bb01154728b47c69514f7399f3bfabc
- expression: 'avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'min(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3'
- name: '{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
- opdata: 'Current value: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- trigger_prototypes:
- -
- uuid: f356f7fbc2de423db3bac09bc4683ae2
- expression: |
- avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}
- or
- last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS}
- or
- last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_DISASTER_STATUS}
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
- name: '{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
- opdata: 'Current value: {ITEM.LASTVALUE1}'
- priority: HIGH
- description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: 2c151dd93b7f4096b9eb6c73c315ffec
- expression: |
- avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}
- or
- last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3'
- name: '{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"}'
- opdata: 'Current value: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
- dependencies:
- -
- name: '{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
- expression: |
- avg(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}
- or
- last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS}
- or
- last(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_DISASTER_STATUS}
- recovery_expression: 'max(/Cisco CISCO-ENVMON-MIB SNMP/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$FAN_CRIT_STATUS:"critical"}'
- value: '3'
- -
- macro: '{$FAN_CRIT_STATUS:"shutdown"}'
- value: '4'
- -
- macro: '{$FAN_WARN_STATUS:"notFunctioning"}'
- value: '6'
- -
- macro: '{$FAN_WARN_STATUS:"warning"}'
- value: '2'
- -
- macro: '{$PSU_CRIT_STATUS:"critical"}'
- value: '3'
- -
- macro: '{$PSU_CRIT_STATUS:"shutdown"}'
- value: '4'
- -
- macro: '{$PSU_WARN_STATUS:"notFunctioning"}'
- value: '6'
- -
- macro: '{$PSU_WARN_STATUS:"warning"}'
- value: '2'
- -
- macro: '{$TEMP_CRIT}'
- value: '60'
- -
- macro: '{$TEMP_CRIT:"CPU"}'
- value: '75'
- -
- macro: '{$TEMP_CRIT_LOW}'
- value: '5'
- -
- macro: '{$TEMP_CRIT_STATUS}'
- value: '3'
- -
- macro: '{$TEMP_DISASTER_STATUS}'
- value: '4'
- -
- macro: '{$TEMP_WARN}'
- value: '50'
- -
- macro: '{$TEMP_WARN:"CPU"}'
- value: '70'
- -
- macro: '{$TEMP_WARN_STATUS}'
- value: '2'
- valuemaps:
- -
- uuid: 96da9a43fa60420696714c57d3e72f13
- name: 'CISCO-ENVMON-MIB::CiscoEnvMonState'
- mappings:
- -
- value: '1'
- newvalue: normal
- -
- value: '2'
- newvalue: warning
- -
- value: '3'
- newvalue: critical
- -
- value: '4'
- newvalue: shutdown
- -
- value: '5'
- newvalue: notPresent
- -
- value: '6'
- newvalue: notFunctioning
- -
- uuid: d7c122cde75447248d4b1613cdc25d5b
- template: 'Cisco CISCO-MEMORY-POOL-MIB SNMP'
- name: 'Cisco CISCO-MEMORY-POOL-MIB SNMP'
- description: |
- Template Cisco CISCO-MEMORY-POOL-MIB
-
- MIBs used:
- CISCO-MEMORY-POOL-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: d84cfe9db46d49c8971317f7e09d9537
- name: 'Memory Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.48.1.1.1.2]'
- key: memory.discovery
- delay: 1h
- description: |
- Discovery of ciscoMemoryPoolTable, a table of memory pool monitoring entries.
- http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html
- item_prototypes:
- -
- uuid: a88a818dfdf743408698d7a45bc29edc
- name: '{#SNMPVALUE}: Free memory'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.48.1.1.1.6.{#SNMPINDEX}'
- key: 'vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}]'
- history: 7d
- units: B
- description: |
- MIB: CISCO-MEMORY-POOL-MIB
- Indicates the number of bytes from the memory pool that are currently unused on the managed device. Note that the sum of ciscoMemoryPoolUsed and ciscoMemoryPoolFree is the total amount of memory in the pool
- Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 32d6bbb06c624f9e9a236fb53507948c
- name: '{#SNMPVALUE}: Used memory'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.48.1.1.1.5.{#SNMPINDEX}'
- key: 'vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]'
- history: 7d
- units: B
- description: |
- MIB: CISCO-MEMORY-POOL-MIB
- Indicates the number of bytes from the memory pool that are currently in use by applications on the managed device.
- Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15216-contiguous-memory.html
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 5065203cb8244befadc54cdb004d4b40
- name: '{#SNMPVALUE}: Memory utilization'
- type: CALCULATED
- key: 'vm.memory.util[vm.memory.util.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- params: 'last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}])/(last(//vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}])+last(//vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]))*100'
- description: 'Memory utilization in %'
- tags:
- -
- tag: component
- value: memory
- trigger_prototypes:
- -
- uuid: 74c44bdc890f467cb1a8cdc175a54a76
- expression: 'min(/Cisco CISCO-MEMORY-POOL-MIB SNMP/vm.memory.util[vm.memory.util.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}'
- name: '{#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 754f4378d0fb43c288e891285efee8a5
- name: '{#SNMPVALUE}: Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Cisco CISCO-MEMORY-POOL-MIB SNMP'
- key: 'vm.memory.util[vm.memory.util.{#SNMPINDEX}]'
- macros:
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- -
- uuid: 3eadb8a2ad4a479cb59bfa6402deee3f
- template: 'Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP'
- name: 'Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP'
- description: |
- Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5
-
- MIBs used:
- CISCO-PROCESS-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 372b5656330f41d18ccf99ca89fa8504
- name: 'CPU Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.109.1.1.1.1.5]'
- key: cpu.discovery
- delay: 1h
- description: |
- If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,
- indexed with cpmCPUTotalIndex.
- This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,
- like different CPU chips, group of CPUs, or CPUs in different modules/cards.
- In case of a single CPU, cpmCPUTotalTable has only one entry.
- item_prototypes:
- -
- uuid: b7a375f679024cb990ae97933e5f77d6
- name: '{#SNMPVALUE}: CPU utilization'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.109.1.1.1.1.5.{#SNMPINDEX}'
- key: 'system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}]'
- delay: 5m
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: CISCO-PROCESS-MIB
- The overall CPU busy percentage in the last 5 minute
- period. This object deprecates the avgBusy5 object from
- the OLD-CISCO-SYSTEM-MIB. This object is deprecated
- by cpmCPUTotal5minRev which has the changed range
- of value (0..100).
- Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html
- tags:
- -
- tag: component
- value: cpu
- trigger_prototypes:
- -
- uuid: be863abc1e3440a9bd35c4db77f83961
- expression: 'min(/Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP/system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
- name: '{#SNMPVALUE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 8e045ff24e564afc9a55d4bd08529d22
- name: '{#SNMPVALUE}: CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP'
- key: 'system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}]'
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- -
- uuid: f934f5e71db642c689ed2f945f73ce6c
- template: 'Cisco CISCO-PROCESS-MIB SNMP'
- name: 'Cisco CISCO-PROCESS-MIB SNMP'
- description: |
- Template Cisco CISCO-PROCESS-MIB
-
- MIBs used:
- CISCO-PROCESS-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: dc4773499a1d419caa5c2c96bd4afb7b
- name: 'CPU Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.109.1.1.1.1.5]'
- key: cpu.discovery
- delay: 1h
- description: |
- If your IOS device has several CPUs, you must use CISCO-PROCESS-MIB and its object cpmCPUTotal5minRev from the table called cpmCPUTotalTable,
- indexed with cpmCPUTotalIndex.
- This table allows CISCO-PROCESS-MIB to keep CPU statistics for different physical entities in the router,
- like different CPU chips, group of CPUs, or CPUs in different modules/cards.
- In case of a single CPU, cpmCPUTotalTable has only one entry.
- item_prototypes:
- -
- uuid: 884048f6fc414188b58341ecaca9aea3
- name: '#{#SNMPINDEX}: CPU utilization'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.9.9.109.1.1.1.1.8.{#SNMPINDEX}'
- key: 'system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}]'
- delay: 5m
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: CISCO-PROCESS-MIB
- The cpmCPUTotal5minRev MIB object provides a more accurate view of the performance of the router over time than the MIB objects cpmCPUTotal1minRev and cpmCPUTotal5secRev . These MIB objects are not accurate because they look at CPU at one minute and five second intervals, respectively. These MIBs enable you to monitor the trends and plan the capacity of your network. The recommended baseline rising threshold for cpmCPUTotal5minRev is 90 percent. Depending on the platform, some routers that run at 90 percent, for example, 2500s, can exhibit performance degradation versus a high-end router, for example, the 7500 series, which can operate fine.
- Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html
- tags:
- -
- tag: component
- value: cpu
- trigger_prototypes:
- -
- uuid: 52d3b9d4d52e4f289221f4b5ade177d7
- expression: 'min(/Cisco CISCO-PROCESS-MIB SNMP/system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
- name: '#{#SNMPINDEX}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 6fed03a2555949178f96550fcdb449ca
- name: '#{#SNMPINDEX}: CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Cisco CISCO-PROCESS-MIB SNMP'
- key: 'system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}]'
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- -
- uuid: 90c99055648f40df8517005a7670158c
- template: 'Cisco Inventory SNMP'
- name: 'Cisco Inventory SNMP'
- description: |
- Template Cisco Inventory
-
- MIBs used:
- ENTITY-MIB
- SNMPv2-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: edb172996a954eb986c97bcfee052a36
- name: 'Hardware model name'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.2.1.47.1.1.1.1.13.1
- key: system.hw.model
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'MIB: ENTITY-MIB'
- inventory_link: MODEL
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- -
- uuid: 3b54e3692fe643e99704767f9a58a1c2
- name: 'Hardware serial number'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.2.1.47.1.1.1.1.11.1
- key: system.hw.serialnumber
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'MIB: ENTITY-MIB'
- inventory_link: SERIALNO_A
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 4100a7125272484c81c4f599eff82793
- expression: 'last(/Cisco Inventory SNMP/system.hw.serialnumber,#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber,#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber))>0'
- name: 'Device has been replaced (new serial number received)'
- priority: INFO
- description: 'Device serial number has changed. Ack to close'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 51b1c178adff415bbe36a4363d6e06c1
- name: 'Operating system'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.2.1.1.1.0
- key: 'system.sw.os[sysDescr.0]'
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'MIB: SNMPv2-MIB'
- inventory_link: OS
- preprocessing:
- -
- type: REGEX
- parameters:
- - 'Version (.+), RELEASE'
- - \1
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- triggers:
- -
- uuid: e417e0edd4eb417d99816dd9cf4f20e9
- expression: 'last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#1)<>last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0],#2) and length(last(/Cisco Inventory SNMP/system.sw.os[sysDescr.0]))>0'
- name: 'Operating system description has changed'
- priority: INFO
- description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- discovery_rules:
- -
- uuid: 0908cfd197214f6c8092bbd426ef83bf
- name: 'Entity Serial Numbers Discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#ENT_CLASS},1.3.6.1.2.1.47.1.1.1.1.5,{#ENT_NAME},1.3.6.1.2.1.47.1.1.1.1.7,{#ENT_SN},1.3.6.1.2.1.47.1.1.1.1.11]'
- key: entity_sn.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#ENT_SN}'
- value: .+
- formulaid: B
- -
- macro: '{#ENT_CLASS}'
- value: ^3$
- formulaid: A
- item_prototypes:
- -
- uuid: 3a6277e70ce6448b857bfc170ded8542
- name: '{#ENT_NAME}: Hardware serial number'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}'
- key: 'system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]'
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'MIB: ENTITY-MIB'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- trigger_prototypes:
- -
- uuid: ff15aaac7c4947b6a07a38dec4d1466d
- expression: 'last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#1)<>last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}],#2) and length(last(/Cisco Inventory SNMP/system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]))>0'
- name: '{#ENT_NAME}: Device has been replaced (new serial number received)'
- priority: INFO
- description: 'Device serial number has changed. Ack to close'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
uuid: 1bb42fbdb9054645a62ff81f14ba3b99
template: 'Cisco IOS prior to 12.0_3_T SNMP'
name: 'Cisco IOS prior to 12.0_3_T SNMP'
@@ -6643,69 +5906,8 @@ zabbix_export:
-
value: '2'
newvalue: unknown
- -
- uuid: 1b0025aaf71f47ec91d08c17a399c6a6
- template: 'Cisco OLD-CISCO-CPU-MIB SNMP'
- name: 'Cisco OLD-CISCO-CPU-MIB SNMP'
- description: |
- Template Cisco OLD-CISCO-CPU-MIB
-
- MIBs used:
- OLD-CISCO-CPU-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 1b8784537cc04a939b8ceb26a5d3b5a1
- name: 'CPU utilization'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.9.2.1.58
- key: 'system.cpu.util[avgBusy5]'
- delay: 5m
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: OLD-CISCO-CPU-MIB
- 5 minute exponentially-decayed moving average of the CPU busy percentage.
- Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 0833b9a8f2ba4c009ca038cc409236d8
- expression: 'min(/Cisco OLD-CISCO-CPU-MIB SNMP/system.cpu.util[avgBusy5],5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
graphs:
-
- uuid: c998de5517bd45f19719dbe7d6cb371e
- name: 'CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Cisco OLD-CISCO-CPU-MIB SNMP'
- key: 'system.cpu.util[avgBusy5]'
- -
uuid: 8c8379b8b21048d4b2ba3781a2392b69
name: 'CPU utilization'
ymin_type_1: FIXED
diff --git a/templates/os/linux/README.md b/templates/os/linux/README.md
index 52e0f65a578..a7c93512810 100644
--- a/templates/os/linux/README.md
+++ b/templates/os/linux/README.md
@@ -1,360 +1,4 @@
-# Linux CPU by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-|{$LOAD_AVG_PER_CPU.MAX.WARN} |<p>Load per CPU considered sustainable. Tune if needed.</p> |`1.5` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |Number of CPUs |<p>-</p> |ZABBIX_PASSIVE |system.cpu.num<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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 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] |
-|CPU |CPU nice time |<p>The time the CPU has spent running users' processes that have been niced.</p> |ZABBIX_PASSIVE |system.cpu.util[,nice] |
-|CPU |CPU iowait time |<p>Amount of time the CPU has been waiting for I/O to complete.</p> |ZABBIX_PASSIVE |system.cpu.util[,iowait] |
-|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 |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> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m) |<p>Per CPU load average is too high. Your system may be slow to respond.</p> |`min(/Linux CPU by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg5])>0 and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg15])>0` |AVERAGE | |
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Linux CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING |<p>**Depends on**:</p><p>- Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux filesystems by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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)$` |
-|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^\s$` |
-|{$VFS.FS.INODE.PFREE.MIN.CRIT} |<p>-</p> |`10` |
-|{$VFS.FS.INODE.PFREE.MIN.WARN} |<p>-</p> |`20` |
-|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
-|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_PASSIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Filesystems |{#FSNAME}: Used space |<p>Used storage in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},used] |
-|Filesystems |{#FSNAME}: Total space |<p>Total space in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},total] |
-|Filesystems |{#FSNAME}: Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},pused] |
-|Filesystems |{#FSNAME}: Free inodes in % |<p>-</p> |ZABBIX_PASSIVE |vfs.fs.inode[{#FSNAME},pfree] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
-|{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
-|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}` |AVERAGE | |
-|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}` |WARNING |<p>**Depends on**:</p><p>- {#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux memory by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$MEMORY.AVAILABLE.MIN} |<p>This macro is used as a threshold in memory available trigger.</p> |`20M` |
-|{$MEMORY.UTIL.MAX} |<p>This macro is used as a threshold in memory utilization trigger.</p> |`90` |
-|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|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 |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] |
-|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |ZABBIX_PASSIVE |system.swap.size[,pfree] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Linux memory by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE |<p>**Depends on**:</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
-|Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2}) |<p>-</p> |`max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0` |AVERAGE | |
-|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`max(/Linux memory by Zabbix agent/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux block devices by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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.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` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Block devices discovery |<p>-</p> |ZABBIX_PASSIVE |vfs.dev.discovery<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#DEVTYPE} MATCHES_REGEX `disk`</p><p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Storage |{#DEVNAME}: Disk read rate |<p>r/s. The number (after merges) of read requests completed per second for the device.</p> |DEPENDENT |vfs.dev.read.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[0]`</p><p>- CHANGE_PER_SECOND</p> |
-|Storage |{#DEVNAME}: Disk write rate |<p>w/s. The number (after merges) of write requests completed per second for the device.</p> |DEPENDENT |vfs.dev.write.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[4]`</p><p>- CHANGE_PER_SECOND</p> |
-|Storage |{#DEVNAME}: Disk read request avg waiting time (r_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.read.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)` |
-|Storage |{#DEVNAME}: Disk write request avg waiting time (w_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.write.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)` |
-|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |DEPENDENT |vfs.dev.queue_size[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[10]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
-|Storage |{#DEVNAME}: Disk utilization |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.</p> |DEPENDENT |vfs.dev.util[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[9]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.1`</p> |
-|Zabbix raw items |{#DEVNAME}: Get stats |<p>Get contents of /sys/block/{#DEVNAME}/stat for disk stats.</p> |ZABBIX_PASSIVE |vfs.file.contents[/sys/block/{#DEVNAME}/stat]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return JSON.stringify(value.trim().split(/ +/));`</p> |
-|Zabbix raw items |{#DEVNAME}: Disk read time (rate) |<p>Rate of total read time counter. Used in r_await calculation</p> |DEPENDENT |vfs.dev.read.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[3]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
-|Zabbix raw items |{#DEVNAME}: Disk write time (rate) |<p>Rate of total write time counter. Used in w_await calculation</p> |DEPENDENT |vfs.dev.write.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[7]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Linux block devices by Zabbix agent/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux network interfaces by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
-|{$IF.UTIL.MAX} |<p>This macro is used as a threshold in interface utilization trigger.</p> |`90` |
-|{$IFCONTROL} |<p>-</p> |`1` |
-|{$NET.IF.IFNAME.MATCHES} |<p>-</p> |`^.*$` |
-|{$NET.IF.IFNAME.NOT_MATCHES} |<p>Filter out loopbacks, nulls, docker veth links and docker0 bridge by default</p> |`(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Network interface discovery |<p>Discovery of network interfaces.</p> |ZABBIX_PASSIVE |net.if.discovery<p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Network interfaces |Interface {#IFNAME}: Bits received |<p>-</p> |ZABBIX_PASSIVE |net.if.in["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}: Bits sent |<p>-</p> |ZABBIX_PASSIVE |net.if.out["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}: Outbound packets with errors |<p>-</p> |ZABBIX_PASSIVE |net.if.out["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Inbound packets with errors |<p>-</p> |ZABBIX_PASSIVE |net.if.in["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Outbound packets discarded |<p>-</p> |ZABBIX_PASSIVE |net.if.out["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Inbound packets discarded |<p>-</p> |ZABBIX_PASSIVE |net.if.in["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Operational status |<p>Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt</p> |ZABBIX_PASSIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> |
-|Network interfaces |Interface {#IFNAME}: Interface type |<p>Indicates the interface protocol type as a decimal value.</p><p>See include/uapi/linux/if_arp.h for all possible values.</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_PASSIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/type"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Network interfaces |Interface {#IFNAME}: Speed |<p>Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.</p><p>This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_PASSIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0`<p>Recovery expression:</p>`avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
-|Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}`<p>Recovery expression:</p>`max(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
-|Interface {#IFNAME}: Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))`<p>Recovery expression:</p>`last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
-|Interface {#IFNAME}: Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1) and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2) `<p>Recovery expression:</p>`(change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2) ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux generic by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$KERNEL.MAXFILES.MIN} |<p>-</p> |`256` |
-|{$KERNEL.MAXPROC.MIN} |<p>-</p> |`1024` |
-|{$SYSTEM.FUZZYTIME.MAX} |<p>-</p> |`60` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|General |System boot time |<p>-</p> |ZABBIX_PASSIVE |system.boottime<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-|General |System local time |<p>System local time of the host.</p> |ZABBIX_PASSIVE |system.localtime |
-|General |System name |<p>System host name.</p> |ZABBIX_PASSIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
-|General |System description |<p>The information as normally returned by 'uname -a'.</p> |ZABBIX_PASSIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
-|General |Number of logged in users |<p>Number of users who are currently logged in.</p> |ZABBIX_PASSIVE |system.users.num |
-|General |Maximum number of open file descriptors |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_PASSIVE |kernel.maxfiles<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|General |Maximum number of processes |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_PASSIVE |kernel.maxproc<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|General |Number of processes |<p>-</p> |ZABBIX_PASSIVE |proc.num |
-|General |Number of running processes |<p>-</p> |ZABBIX_PASSIVE |proc.num[,,run] |
-|Inventory |Operating system |<p>-</p> |ZABBIX_PASSIVE |system.sw.os<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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> |
-|Inventory |Software installed |<p>-</p> |ZABBIX_PASSIVE |system.sw.packages<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Security |Checksum of /etc/passwd |<p>-</p> |ZABBIX_PASSIVE |vfs.file.cksum[/etc/passwd,sha256]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-|Status |System uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_PASSIVE |system.uptime |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Linux generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
-|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
-|Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}` |INFO | |
-|Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}` |INFO |<p>**Depends on**:</p><p>- Getting closer to process limit (over 80% used)</p> |
-|Getting closer to process limit (over 80% used) |<p>-</p> |`last(/Linux generic by Zabbix agent/proc.num)/last(/Linux generic by Zabbix agent/kernel.maxproc)*100>80` |WARNING | |
-|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`last(/Linux generic by Zabbix agent/system.sw.os,#1)<>last(/Linux generic by Zabbix agent/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent/system.sw.os))>0` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
-|/etc/passwd has been changed |<p>-</p> |`last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2)` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Operating system description has changed</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
-|{HOST.NAME} has been restarted (uptime < 10m) |<p>The host uptime is less than 10 minutes</p> |`last(/Linux generic by Zabbix agent/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Linux by Zabbix agent
## Overview
diff --git a/templates/os/linux/template_os_linux.yaml b/templates/os/linux/template_os_linux.yaml
index d8323340cb4..0d61f6b74e2 100644
--- a/templates/os/linux/template_os_linux.yaml
+++ b/templates/os/linux/template_os_linux.yaml
@@ -1,362 +1,12 @@
zabbix_export:
version: '6.0'
- date: '2022-02-01T07:21:45Z'
+ date: '2022-02-04T08:31:48Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 846977d1dfed4968bc5f8bdb363285bc
name: 'Templates/Operating systems'
templates:
-
- uuid: 45486dbbf5bf49f28866fcb212731cf0
- template: 'Linux block devices by Zabbix agent'
- name: 'Linux block devices by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 4f3743bbc7ca4da89f833b72eb9e23b7
- name: 'Block devices discovery'
- key: vfs.dev.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#DEVTYPE}'
- value: disk
- formulaid: C
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.MATCHES}'
- formulaid: B
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: A
- item_prototypes:
- -
- uuid: 7d0ed5b91e844c5ba5bd31860f4eaee5
- name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
- type: DEPENDENT
- key: 'vfs.dev.queue_size[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[10]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.001'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 92de75ec84994081831753c64c234b41
- name: '{#DEVNAME}: Disk read request avg waiting time (r_await)'
- type: CALCULATED
- key: 'vfs.dev.read.await[{#DEVNAME}]'
- history: 7d
- value_type: FLOAT
- units: '!ms'
- params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)'
- description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 8a00f63fdfc844d88941795ff0ca1e8b
- name: '{#DEVNAME}: Disk read rate'
- type: DEPENDENT
- key: 'vfs.dev.read.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '!r/s'
- description: 'r/s. The number (after merges) of read requests completed per second for the device.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[0]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 9f1253dfd045447fbe4769e00fdf4fc7
- name: '{#DEVNAME}: Disk read time (rate)'
- type: DEPENDENT
- key: 'vfs.dev.read.time.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- description: 'Rate of total read time counter. Used in r_await calculation'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[3]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.001'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 00942e8bc61b423d84479cfc37b3f184
- name: '{#DEVNAME}: Disk utilization'
- type: DEPENDENT
- key: 'vfs.dev.util[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[9]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.1'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 0edcba521a6348629740e5b80034cb28
- name: '{#DEVNAME}: Disk write request avg waiting time (w_await)'
- type: CALCULATED
- key: 'vfs.dev.write.await[{#DEVNAME}]'
- history: 7d
- value_type: FLOAT
- units: '!ms'
- params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)'
- description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: c9dcb1acf07441d2b6ea9eb520c96aff
- name: '{#DEVNAME}: Disk write rate'
- type: DEPENDENT
- key: 'vfs.dev.write.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '!w/s'
- description: 'w/s. The number (after merges) of write requests completed per second for the device.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[4]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 30c2ee8fd86a4d369d4fc0b2c713dec2
- name: '{#DEVNAME}: Disk write time (rate)'
- type: DEPENDENT
- key: 'vfs.dev.write.time.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- description: 'Rate of total write time counter. Used in w_await calculation'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[7]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.001'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: e25a03160e3243b5a33dfd834055b6e4
- name: '{#DEVNAME}: Get stats'
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- history: '0'
- trends: '0'
- value_type: TEXT
- description: 'Get contents of /sys/block/{#DEVNAME}/stat for disk stats.'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return JSON.stringify(value.trim().split(/ +/));'
- tags:
- -
- tag: component
- value: raw
- trigger_prototypes:
- -
- uuid: 3ac02c78c65f49bdae63669652236b7b
- expression: 'min(/Linux block devices by Zabbix agent/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
- name: '{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m)'
- priority: WARNING
- description: 'This trigger might indicate disk {#DEVNAME} saturation.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 96ca565847ac46ffb7456fbfa4513922
- name: '{#DEVNAME}: Disk average waiting time'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux block devices by Zabbix agent'
- key: 'vfs.dev.read.await[{#DEVNAME}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices by Zabbix agent'
- key: 'vfs.dev.write.await[{#DEVNAME}]'
- -
- uuid: 15b73630b3224b5a87ef3631dfdfe566
- name: '{#DEVNAME}: Disk read/write rates'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux block devices by Zabbix agent'
- key: 'vfs.dev.read.rate[{#DEVNAME}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices by Zabbix agent'
- key: 'vfs.dev.write.rate[{#DEVNAME}]'
- -
- uuid: 8f7b0b21edeb4bf6b340852a3ace455c
- name: '{#DEVNAME}: Disk utilization and queue'
- graph_items:
- -
- color: 1A7C11
- yaxisside: RIGHT
- item:
- host: 'Linux block devices by Zabbix agent'
- key: 'vfs.dev.queue_size[{#DEVNAME}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices by Zabbix agent'
- key: 'vfs.dev.util[{#DEVNAME}]'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- macros:
- -
- macro: '{$VFS.DEV.DEVNAME.MATCHES}'
- value: .+
- description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- 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.DEV.READ.AWAIT.WARN}'
- value: '20'
- description: 'Disk read average response time (in ms) before the trigger would fire'
- -
- macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
- value: '20'
- description: 'Disk write average response time (in ms) before the trigger would fire'
- -
uuid: f8f7908280354f2abeed07dc788c3747
template: 'Linux by Zabbix agent'
name: 'Linux by Zabbix agent'
@@ -2563,1614 +2213,6 @@ zabbix_export:
-
value: '1'
newvalue: Up
- -
- uuid: d4e080814aad467dbf6b95c46b862c28
- template: 'Linux CPU by Zabbix agent'
- name: 'Linux CPU by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: c0c12ca155b042b2b5f33d9ced5f1cd2
- name: 'Interrupts per second'
- key: system.cpu.intr
- history: 7d
- value_type: FLOAT
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 9c7bd054537a449c84959c68850a232b
- name: 'Load average (1m avg)'
- key: 'system.cpu.load[all,avg1]'
- history: 7d
- value_type: FLOAT
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: dd912665ba1c4934af0bf3cb22cb925c
- name: 'Load average (5m avg)'
- key: 'system.cpu.load[all,avg5]'
- history: 7d
- value_type: FLOAT
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 9298150efe98434694bc3ef940e4da3f
- name: 'Load average (15m avg)'
- key: 'system.cpu.load[all,avg15]'
- history: 7d
- value_type: FLOAT
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: a735c884e70349f78c66233047f7afe6
- name: 'Number of CPUs'
- key: system.cpu.num
- history: 7d
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: f3ec31faa3ca4be6a176bc47679d18f7
- name: 'Context switches per second'
- key: system.cpu.switches
- history: 7d
- value_type: FLOAT
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 57074f87ab8e410ea6b0cb4708ab627e
- name: 'CPU utilization'
- type: DEPENDENT
- key: system.cpu.util
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'CPU utilization in %'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- //Calculate utilization
- return (100 - value)
- master_item:
- key: 'system.cpu.util[,idle]'
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: d6099dae0c3a4252ab2af61104768170
- expression: 'min(/Linux CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- dependencies:
- -
- name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
- expression: |
- min(/Linux CPU by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
- and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg5])>0
- and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg15])>0
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 8778c8da3e45497584428b512f278fb9
- name: 'CPU guest time'
- key: 'system.cpu.util[,guest]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 61e4250a2b0341f684ebc8adb568822f
- name: 'CPU guest nice time'
- key: 'system.cpu.util[,guest_nice]'
- 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)'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 5cb0b9e7dacf4507bd0007e923f8a970
- name: 'CPU idle time'
- key: 'system.cpu.util[,idle]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent doing nothing.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 9e9fac69e7b646e2946987bdb3f36103
- name: 'CPU interrupt time'
- key: 'system.cpu.util[,interrupt]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The amount of time the CPU has been servicing hardware interrupts.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: c078212326f04fd8878eee4b63e3ef7e
- name: 'CPU iowait time'
- key: 'system.cpu.util[,iowait]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Amount of time the CPU has been waiting for I/O to complete.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: ca4c30b1c8a24edea59f6a2d76158f5f
- name: 'CPU nice time'
- key: 'system.cpu.util[,nice]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent running users'' processes that have been niced.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 6eab3a98207a4aa397083de9773560d2
- name: 'CPU softirq time'
- key: 'system.cpu.util[,softirq]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The amount of time the CPU has been servicing software interrupts.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: d540fcdaaebc47dbbc52f6b92331ae61
- name: 'CPU steal time'
- key: 'system.cpu.util[,steal]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The amount of CPU ''stolen'' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: a0e8576ca7cd47a8adf72bfcde1065be
- name: 'CPU system time'
- key: 'system.cpu.util[,system]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent running the kernel and its processes.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 3e37c91b2d304a5583f0578b99ec8eec
- name: 'CPU user time'
- key: 'system.cpu.util[,user]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent running users'' processes that are not niced.'
- tags:
- -
- tag: component
- value: cpu
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- -
- macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}'
- value: '1.5'
- description: 'Load per CPU considered sustainable. Tune if needed.'
- -
- uuid: fdcdd5810fba49928922a683d32aa76f
- template: 'Linux filesystems by Zabbix agent'
- name: 'Linux filesystems by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 1ec7965ad995437da2dc1f94749f3230
- name: 'Mounted filesystem discovery'
- key: vfs.fs.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.MATCHES}'
- formulaid: C
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of file systems of different types.'
- item_prototypes:
- -
- uuid: 8d6496b8be814dc885a1efb42823ae4f
- name: '{#FSNAME}: Free inodes in %'
- key: 'vfs.fs.inode[{#FSNAME},pfree]'
- history: 7d
- value_type: FLOAT
- units: '%'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- uuid: 26adf86d6dd741b48007577091d5902c
- expression: 'min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
- opdata: 'Free inodes: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- It may become impossible to write to disk if there are no index nodes left.
- As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
- uuid: 756b0126cc004f8d97f10384a4dc8587
- expression: 'min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}'
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)'
- opdata: 'Free inodes: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: |
- It may become impossible to write to disk if there are no index nodes left.
- As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
- dependencies:
- -
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
- expression: 'min(/Linux filesystems by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
- uuid: a39947b5a940441a961f685b430cd7e9
- name: '{#FSNAME}: Space utilization'
- key: 'vfs.fs.size[{#FSNAME},pused]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Space utilization in % for {#FSNAME}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: e6ce1925a65d4b1fa954ac55fcd39b04
- name: '{#FSNAME}: Total space'
- key: 'vfs.fs.size[{#FSNAME},total]'
- history: 7d
- units: B
- description: 'Total space in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: 74c773bffa8e41f2a3cd7abf0b710fcf
- name: '{#FSNAME}: Used space'
- key: 'vfs.fs.size[{#FSNAME},used]'
- history: 7d
- units: B
- description: 'Used storage in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- 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)
- name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: capacity
- -
- 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)
- name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- dependencies:
- -
- name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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)
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: capacity
- graph_prototypes:
- -
- uuid: 3ccd5c1a0e15489c9b57030ee634b8e3
- name: '{#FSNAME}: Disk space usage'
- width: '600'
- height: '340'
- type: PIE
- show_3d: 'YES'
- graph_items:
- -
- color: '969696'
- calc_fnc: LAST
- type: GRAPH_SUM
- item:
- host: 'Linux filesystems by Zabbix agent'
- key: 'vfs.fs.size[{#FSNAME},total]'
- -
- sortorder: '1'
- color: C80000
- calc_fnc: LAST
- item:
- host: 'Linux filesystems by Zabbix agent'
- key: 'vfs.fs.size[{#FSNAME},used]'
- macros:
- -
- macro: '{$VFS.FS.FSNAME.MATCHES}'
- value: .+
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- value: ^(/dev|/sys|/run|/proc|.+/shm$)
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSTYPE.MATCHES}'
- value: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}'
- value: '10'
- -
- macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}'
- value: '20'
- -
- macro: '{$VFS.FS.PUSED.MAX.CRIT}'
- value: '90'
- -
- macro: '{$VFS.FS.PUSED.MAX.WARN}'
- value: '80'
- -
- uuid: 38f973ee1556494fadeacb2f6b1ec987
- template: 'Linux generic by Zabbix agent'
- name: 'Linux generic by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 5dc4ebda1b9244e7a9f901209b78570f
- name: 'Maximum number of open file descriptors'
- key: kernel.maxfiles
- delay: 1h
- history: 7d
- description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: abf2e035f1e54971a0795152f922271b
- expression: 'last(/Linux generic by Zabbix agent/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}'
- name: 'Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN})'
- priority: INFO
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: a82525acd1bd4039860ad2d750476760
- name: 'Maximum number of processes'
- key: kernel.maxproc
- delay: 1h
- history: 7d
- description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 079c2be2b0a44965a8e83cedba222b8d
- expression: 'last(/Linux generic by Zabbix agent/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}'
- name: 'Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN})'
- priority: INFO
- dependencies:
- -
- name: 'Getting closer to process limit (over 80% used)'
- expression: 'last(/Linux generic by Zabbix agent/proc.num)/last(/Linux generic by Zabbix agent/kernel.maxproc)*100>80'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 0207b131fa26435ba6b5979c46719bc8
- name: 'Number of processes'
- key: proc.num
- history: 7d
- tags:
- -
- tag: component
- value: system
- -
- uuid: fa98827fe6474bf692d6aba3273836f7
- name: 'Number of running processes'
- key: 'proc.num[,,run]'
- history: 7d
- tags:
- -
- tag: component
- value: system
- -
- uuid: 48c251895f234f4595c4133015c27a18
- name: 'System boot time'
- key: system.boottime
- delay: 15m
- history: 7d
- units: unixtime
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: system
- -
- uuid: f744b8e0be46431e8088803b3a1b210d
- name: 'System name'
- key: system.hostname
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'System host name.'
- inventory_link: NAME
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 12h
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: eda29f0c8c55495ab93820caa26338bf
- expression: 'last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0'
- name: 'System name has changed (new name: {ITEM.VALUE})'
- priority: INFO
- description: 'System name has changed. Ack to close.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- tag: scope
- value: security
- -
- uuid: ac41daaa287944f3b0429c6fb2bca09c
- name: 'System local time'
- key: system.localtime
- history: 7d
- units: unixtime
- description: 'System local time of the host.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: cffb7209ce2a45bd868ac41c0680be56
- expression: 'fuzzytime(/Linux generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
- name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
- priority: WARNING
- description: 'The host system time is different from the Zabbix server time.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: 2e6e1ac8eb724a47b6c50b6c352ee3f7
- name: 'Operating system architecture'
- key: system.sw.arch
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'Operating system architecture of the host.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- -
- uuid: a40ad2e2bda3453b873d634e6a003dc2
- name: 'Operating system'
- key: system.sw.os
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- inventory_link: OS
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- triggers:
- -
- uuid: 2f043de71d2940d184aa02200e33c28a
- expression: 'last(/Linux generic by Zabbix agent/system.sw.os,#1)<>last(/Linux generic by Zabbix agent/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent/system.sw.os))>0'
- name: 'Operating system description has changed'
- priority: INFO
- description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'System name has changed (new name: {ITEM.VALUE})'
- expression: 'last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 1097f843e7324a1fa0508544ddddd556
- name: 'Software installed'
- key: system.sw.packages
- delay: 1h
- history: 2w
- trends: '0'
- value_type: TEXT
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- -
- uuid: b3a8feced15d4a09a8a2d8d1d8c9a546
- name: 'System description'
- key: system.uname
- delay: 15m
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'The information as normally returned by ''uname -a''.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 12h
- tags:
- -
- tag: component
- value: system
- -
- uuid: 0a49428e394c4431bf97aa8787637bff
- name: 'System uptime'
- key: system.uptime
- delay: 30s
- history: 2w
- trends: 0d
- units: uptime
- description: 'System uptime in ''N days, hh:mm:ss'' format.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 2b612f4d65f4444c8a0609362c48463b
- expression: 'last(/Linux generic by Zabbix agent/system.uptime)<10m'
- name: '{HOST.NAME} has been restarted (uptime < 10m)'
- priority: WARNING
- description: 'The host uptime is less than 10 minutes'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: c595adf482c04553a2477bc1d929bc8d
- name: 'Number of logged in users'
- key: system.users.num
- history: 7d
- description: 'Number of users who are currently logged in.'
- tags:
- -
- tag: component
- value: environment
- -
- uuid: a10cff7883a4433bb744ebc2264fa13d
- name: 'Checksum of /etc/passwd'
- key: 'vfs.file.cksum[/etc/passwd,sha256]'
- delay: 15m
- history: 7d
- trends: '0'
- value_type: CHAR
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: environment
- triggers:
- -
- uuid: a07bba3d320c4979b68ac0bbfad900dc
- expression: 'last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2)'
- name: '/etc/passwd has been changed'
- priority: INFO
- manual_close: 'YES'
- dependencies:
- -
- name: 'Operating system description has changed'
- expression: 'last(/Linux generic by Zabbix agent/system.sw.os,#1)<>last(/Linux generic by Zabbix agent/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent/system.sw.os))>0'
- -
- name: 'System name has changed (new name: {ITEM.VALUE})'
- expression: 'last(/Linux generic by Zabbix agent/system.hostname,#1)<>last(/Linux generic by Zabbix agent/system.hostname,#2) and length(last(/Linux generic by Zabbix agent/system.hostname))>0'
- tags:
- -
- tag: scope
- value: security
- macros:
- -
- macro: '{$KERNEL.MAXFILES.MIN}'
- value: '256'
- -
- macro: '{$KERNEL.MAXPROC.MIN}'
- value: '1024'
- -
- macro: '{$SYSTEM.FUZZYTIME.MAX}'
- value: '60'
- -
- uuid: 06c211e947414638bd00e555e206d03d
- template: 'Linux memory by Zabbix agent'
- name: 'Linux memory by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: e65616ce708743a6a7b8fea2ec89620b
- name: 'Free swap space'
- key: 'system.swap.size[,free]'
- history: 7d
- units: B
- description: 'The free space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: da85940246a044398668403af8ce0bb6
- name: 'Free swap space in %'
- key: 'system.swap.size[,pfree]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The free space of swap volume/file in percent.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 0067f617f90643d8b5721a659992db77
- name: 'Total swap space'
- key: 'system.swap.size[,total]'
- history: 7d
- units: B
- description: 'The total space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: e9aa329aff2c443595cd77443a512a1a
- name: 'Available memory'
- key: 'vm.memory.size[available]'
- history: 7d
- units: B
- description: '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.'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 20299d21c1ee47a284f54e3b9c8ac919
- name: 'Available memory in %'
- key: 'vm.memory.size[pavailable]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: b2f541b33a32428aa7644825d54f706a
- name: 'Total memory'
- key: 'vm.memory.size[total]'
- history: 7d
- units: B
- description: 'Total memory in Bytes'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: bb852083c6aa43119bfb1d0756d9f1f7
- name: 'Memory utilization'
- type: DEPENDENT
- key: vm.memory.utilization
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Memory used percentage is calculated as (100-pavailable)'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100-value);'
- master_item:
- key: 'vm.memory.size[pavailable]'
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 804010cd02244ec5b47ba77bfa734228
- expression: 'min(/Linux memory by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- dependencies:
- -
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- expression: 'max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$MEMORY.AVAILABLE.MIN}'
- value: 20M
- description: 'This macro is used as a threshold in memory available trigger.'
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- description: 'This macro is used as a threshold in memory utilization trigger.'
- -
- macro: '{$SWAP.PFREE.MIN.WARN}'
- value: '50'
- -
- uuid: 18ecfb2a7e754315bb8d7f71917153da
- template: 'Linux network interfaces by Zabbix agent'
- name: 'Linux network interfaces by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: aea284394a914ede923d0004369184cf
- name: 'Network interface discovery'
- key: net.if.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of network interfaces.'
- item_prototypes:
- -
- uuid: 5a57cd0076d346ae953d0c85ff64ecaf
- name: 'Interface {#IFNAME}: Inbound packets discarded'
- key: 'net.if.in["{#IFNAME}",dropped]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: f0c78df653744f03aaef06f909525a3d
- name: 'Interface {#IFNAME}: Inbound packets with errors'
- key: 'net.if.in["{#IFNAME}",errors]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 544b545925344458ae3895198fa5b00a
- name: 'Interface {#IFNAME}: Bits received'
- key: 'net.if.in["{#IFNAME}"]'
- delay: 3m
- history: 7d
- units: bps
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 3502455ff20742439521d5b9d2f015a3
- name: 'Interface {#IFNAME}: Outbound packets discarded'
- key: 'net.if.out["{#IFNAME}",dropped]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 0044c70afff64bf99ecec9173ef7a0f8
- name: 'Interface {#IFNAME}: Outbound packets with errors'
- key: 'net.if.out["{#IFNAME}",errors]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: efa9c1b34b86486c9260730316c7a67c
- name: 'Interface {#IFNAME}: Bits sent'
- key: 'net.if.out["{#IFNAME}"]'
- delay: 3m
- history: 7d
- units: bps
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: f9d88bf4e5b245ed80870b50506e7db3
- name: 'Interface {#IFNAME}: Operational status'
- key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]'
- history: 7d
- trends: '0'
- description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt'
- valuemap:
- name: ifOperStatus
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- var newvalue;
- switch(value) {
- case "unknown":
- newvalue = 0;
- break;
- case "notpresent":
- newvalue = 1;
- break;
- case "down":
- newvalue = 2;
- break;
- case "lowerlayerdown":
- newvalue = 3;
- break;
- case "testing":
- newvalue = 4;
- break;
- case "dormant":
- newvalue = 5;
- break;
- case "up":
- newvalue = 6;
- break; default:
- newvalue = "Problem parsing interface operstate in JS";
- }
- return newvalue;
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: 4b06b63814d34a90abe971abcd97cf83
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- name: 'Interface {#IFNAME}: Link down'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- This trigger expression works as follows:
- 1. Can be triggered if operations status is down.
- 2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
- 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)
-
- WARNING: if closed manually - won't fire again on next poll, because of .diff.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- uuid: 4644f15077474647bc7104431cf1bb74
- name: 'Interface {#IFNAME}: Speed'
- key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]'
- delay: 5m
- history: 7d
- trends: 0d
- units: bps
- description: |
- Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.
- This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).
- Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1000000'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 09bb129b088d493990bb4fa381eacad8
- name: 'Interface {#IFNAME}: Interface type'
- key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]'
- delay: 1h
- history: 7d
- trends: 0d
- description: |
- Indicates the interface protocol type as a decimal value.
- See include/uapi/linux/if_arp.h for all possible values.
- Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
- valuemap:
- name: 'Linux::Interface protocol types'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: 42ba7cc36b734d4a933ed4f7ceb8f3a4
- expression: |
- change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
- and
- (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1)
- and
- (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2)
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- (change(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or
- (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2)
- name: 'Interface {#IFNAME}: Ethernet has changed to lower speed than it was before'
- opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
- priority: INFO
- description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}: Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 678d795a043a4f5a84fc9690d0d29783
- expression: |
- (avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or
- avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and
- last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- avg(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and
- avg(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])
- name: 'Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
- opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'The network interface utilization is close to its estimated maximum bandwidth.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}: Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: b4da7325b41647ab997cf6906a9cba23
- expression: |
- min(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- or min(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- max(/Linux network interfaces by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- and max(/Linux network interfaces by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- name: 'Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
- opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}: Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 4b1489e1d06a4443a4f379854936cfee
- name: 'Interface {#IFNAME}: Network traffic'
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux network interfaces by Zabbix agent'
- key: 'net.if.in["{#IFNAME}"]'
- -
- sortorder: '1'
- drawtype: BOLD_LINE
- color: 2774A4
- item:
- host: 'Linux network interfaces by Zabbix agent'
- key: 'net.if.out["{#IFNAME}"]'
- -
- sortorder: '2'
- color: F63100
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent'
- key: 'net.if.out["{#IFNAME}",errors]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent'
- key: 'net.if.in["{#IFNAME}",errors]'
- -
- sortorder: '4'
- color: FC6EA3
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent'
- key: 'net.if.out["{#IFNAME}",dropped]'
- -
- sortorder: '5'
- color: 6C59DC
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent'
- key: 'net.if.in["{#IFNAME}",dropped]'
- macros:
- -
- macro: '{$IF.ERRORS.WARN}'
- value: '2'
- -
- macro: '{$IF.UTIL.MAX}'
- value: '90'
- description: 'This macro is used as a threshold in interface utilization trigger.'
- -
- macro: '{$IFCONTROL}'
- value: '1'
- -
- macro: '{$NET.IF.IFNAME.MATCHES}'
- value: '^.*$'
- -
- macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
- value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
- description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
- dashboards:
- -
- uuid: 1cbc445224b14af1b72f1580d7444ba5
- name: 'Network interfaces'
- pages:
- -
- widgets:
- -
- type: GRAPH_PROTOTYPE
- width: '24'
- height: '5'
- fields:
- -
- type: INTEGER
- name: source_type
- value: '2'
- -
- type: INTEGER
- name: columns
- value: '1'
- -
- type: INTEGER
- name: rows
- value: '1'
- -
- type: GRAPH_PROTOTYPE
- name: graphid
- value:
- name: 'Interface {#IFNAME}: Network traffic'
- host: 'Linux network interfaces by Zabbix agent'
- valuemaps:
- -
- uuid: 8513cf23b8d34952b92a31bbd82a31d3
- name: ifOperStatus
- mappings:
- -
- value: '0'
- newvalue: unknown
- -
- value: '1'
- newvalue: notpresent
- -
- value: '2'
- newvalue: down
- -
- value: '3'
- newvalue: lowerlayerdown
- -
- value: '4'
- newvalue: testing
- -
- value: '5'
- newvalue: dormant
- -
- value: '6'
- newvalue: up
- -
- uuid: e2db25377a2b49c897bbb8b6c30831e2
- name: 'Linux::Interface protocol types'
- mappings:
- -
- value: '0'
- newvalue: 'from KA9Q: NET/ROM pseudo'
- -
- value: '1'
- newvalue: Ethernet
- -
- value: '2'
- newvalue: 'Experimental Ethernet'
- -
- value: '3'
- newvalue: 'AX.25 Level 2'
- -
- value: '4'
- newvalue: 'PROnet token ring'
- -
- value: '5'
- newvalue: Chaosnet
- -
- value: '6'
- newvalue: 'IEEE 802.2 Ethernet/TR/TB'
- -
- value: '7'
- newvalue: ARCnet
- -
- value: '8'
- newvalue: APPLEtalk
- -
- value: '15'
- newvalue: 'Frame Relay DLCI'
- -
- value: '19'
- newvalue: ATM
- -
- value: '23'
- newvalue: 'Metricom STRIP (new IANA id)'
- -
- value: '24'
- newvalue: 'IEEE 1394 IPv4 - RFC 2734'
- -
- value: '27'
- newvalue: EUI-64
- -
- value: '32'
- newvalue: InfiniBand
- -
- value: '256'
- newvalue: ARPHRD_SLIP
- -
- value: '257'
- newvalue: ARPHRD_CSLIP
- -
- value: '258'
- newvalue: ARPHRD_SLIP6
- -
- value: '259'
- newvalue: ARPHRD_CSLIP6
- -
- value: '260'
- newvalue: 'Notional KISS type'
- -
- value: '264'
- newvalue: ARPHRD_ADAPT
- -
- value: '270'
- newvalue: ARPHRD_ROSE
- -
- value: '271'
- newvalue: 'CCITT X.25'
- -
- value: '272'
- newvalue: 'Boards with X.25 in firmware'
- -
- value: '280'
- newvalue: 'Controller Area Network'
- -
- value: '512'
- newvalue: ARPHRD_PPP
- -
- value: '513'
- newvalue: 'Cisco HDLC'
- -
- value: '516'
- newvalue: LAPB
- -
- value: '517'
- newvalue: 'Digital''s DDCMP protocol'
- -
- value: '518'
- newvalue: 'Raw HDLC'
- -
- value: '519'
- newvalue: 'Raw IP'
- -
- value: '768'
- newvalue: 'IPIP tunnel'
- -
- value: '769'
- newvalue: 'IP6IP6 tunnel'
- -
- value: '770'
- newvalue: 'Frame Relay Access Device'
- -
- value: '771'
- newvalue: 'SKIP vif'
- -
- value: '772'
- newvalue: 'Loopback device'
- -
- value: '773'
- newvalue: 'Localtalk device'
- -
- value: '774'
- newvalue: 'Fiber Distributed Data Interface'
- -
- value: '775'
- newvalue: 'AP1000 BIF'
- -
- value: '776'
- newvalue: 'sit0 device - IPv6-in-IPv4'
- -
- value: '777'
- newvalue: 'IP over DDP tunneller'
- -
- value: '778'
- newvalue: 'GRE over IP'
- -
- value: '779'
- newvalue: 'PIMSM register interface'
- -
- value: '780'
- newvalue: 'High Performance Parallel Interface'
- -
- value: '781'
- newvalue: 'Nexus 64Mbps Ash'
- -
- value: '782'
- newvalue: 'Acorn Econet'
- -
- value: '783'
- newvalue: Linux-IrDA
- -
- value: '784'
- newvalue: 'Point to point fibrechannel'
- -
- value: '785'
- newvalue: 'Fibrechannel arbitrated loop'
- -
- value: '786'
- newvalue: 'Fibrechannel public loop'
- -
- value: '787'
- newvalue: 'Fibrechannel fabric'
- -
- value: '800'
- newvalue: 'Magic type ident for TR'
- -
- value: '801'
- newvalue: 'IEEE 802.11'
- -
- value: '802'
- newvalue: 'IEEE 802.11 + Prism2 header'
- -
- value: '803'
- newvalue: 'IEEE 802.11 + radiotap header'
- -
- value: '804'
- newvalue: ARPHRD_IEEE802154
- -
- value: '805'
- newvalue: 'IEEE 802.15.4 network monitor'
- -
- value: '820'
- newvalue: 'PhoNet media type'
- -
- value: '821'
- newvalue: 'PhoNet pipe header'
- -
- value: '822'
- newvalue: 'CAIF media type'
- -
- value: '823'
- newvalue: 'GRE over IPv6'
- -
- value: '824'
- newvalue: 'Netlink header'
- -
- value: '825'
- newvalue: 'IPv6 over LoWPAN'
- -
- value: '826'
- newvalue: 'Vsock monitor header'
triggers:
-
uuid: ae5269e17d434927bfd6edc09a9a1f4d
@@ -4183,16 +2225,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: 613c30a98cf044b1b46a3d1d50f90eb8
- expression: 'last(/Linux generic by Zabbix agent/proc.num)/last(/Linux generic by Zabbix agent/kernel.maxproc)*100>80'
- name: 'Getting closer to process limit (over 80% used)'
- opdata: '{ITEM.LASTVALUE1} active, {ITEM.LASTVALUE2} limit.'
- priority: WARNING
- tags:
- -
- tag: scope
- value: performance
- -
uuid: f49fc01c5ac945d59455563bdbcc6469
expression: 'max(/Linux by Zabbix agent/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux by Zabbix agent/system.swap.size[,total])>0'
name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
@@ -4211,24 +2243,6 @@ zabbix_export:
tag: scope
value: capacity
-
- uuid: 6bf4726efad344529d3c8908053c6e6c
- expression: 'max(/Linux memory by Zabbix agent/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent/system.swap.size[,total])>0'
- 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'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Linux memory by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
- -
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- expression: 'max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0'
- tags:
- -
- tag: scope
- value: capacity
- -
uuid: 686470cef97f48f6b017e9fc7a078afe
expression: 'max(/Linux by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent/vm.memory.size[total])>0'
name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
@@ -4242,19 +2256,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: 3800877e8b474aa2aa83c1ecc0523db6
- expression: 'max(/Linux memory by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent/vm.memory.size[total])>0'
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
- priority: AVERAGE
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
uuid: 695f0c352377409d95aca3fe76d1cae2
expression: |
min(/Linux by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
@@ -4271,40 +2272,8 @@ zabbix_export:
-
tag: scope
value: performance
- -
- uuid: 0d6fc27f8a884510b2f31a5a0e653f70
- expression: |
- min(/Linux CPU by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
- and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg5])>0
- and last(/Linux CPU by Zabbix agent/system.cpu.load[all,avg15])>0
- name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
- opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}'
- priority: AVERAGE
- description: 'Per CPU load average is too high. Your system may be slow to respond.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
graphs:
-
- uuid: 7036809e95be49b4959fefe8e89a5e90
- name: 'CPU jumps'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent'
- key: system.cpu.switches
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU by Zabbix agent'
- key: system.cpu.intr
- -
uuid: 4a72646168d545c398c92e09c975a966
name: 'CPU jumps'
graph_items:
@@ -4380,66 +2349,6 @@ zabbix_export:
host: 'Linux by Zabbix agent'
key: 'system.cpu.util[,guest_nice]'
-
- uuid: 345236549e004d4da84b47bc797d248e
- name: 'CPU usage'
- type: STACKED
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,system]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,user]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,nice]'
- -
- sortorder: '3'
- color: A54F10
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,iowait]'
- -
- sortorder: '4'
- color: FC6EA3
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,steal]'
- -
- sortorder: '5'
- color: 6C59DC
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,interrupt]'
- -
- sortorder: '6'
- color: AC8C14
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,softirq]'
- -
- sortorder: '7'
- color: 611F27
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,guest]'
- -
- sortorder: '8'
- color: F230E0
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.util[,guest_nice]'
- -
uuid: 668ae470ea33444bb40e3b83b97659c3
name: 'CPU utilization'
ymin_type_1: FIXED
@@ -4452,18 +2361,6 @@ zabbix_export:
host: 'Linux by Zabbix agent'
key: system.cpu.util
-
- uuid: 4c14e3706a3c4c48b1fabf7d8d0991a8
- name: 'CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent'
- key: system.cpu.util
- -
uuid: f260a63bc3b04c3b80b47f83bb05ed9c
name: 'Memory usage'
ymin_type_1: FIXED
@@ -4482,24 +2379,6 @@ zabbix_export:
host: 'Linux by Zabbix agent'
key: 'vm.memory.size[available]'
-
- uuid: b089fd66c95b4e8ca923820a13f8dd16
- name: 'Memory usage'
- ymin_type_1: FIXED
- graph_items:
- -
- drawtype: BOLD_LINE
- color: 1A7C11
- item:
- host: 'Linux memory by Zabbix agent'
- key: 'vm.memory.size[total]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux memory by Zabbix agent'
- key: 'vm.memory.size[available]'
- -
uuid: bac7a8fb7e014696b54d262bf40e5b12
name: 'Memory utilization'
ymin_type_1: FIXED
@@ -4512,18 +2391,6 @@ zabbix_export:
host: 'Linux by Zabbix agent'
key: vm.memory.utilization
-
- uuid: 83c385fe3aef4aa9b862ed4718e428d3
- name: 'Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux memory by Zabbix agent'
- key: vm.memory.utilization
- -
uuid: fa49531c9c3d4087b2205bed6ed0469f
name: Processes
graph_items:
@@ -4545,27 +2412,6 @@ zabbix_export:
host: 'Linux by Zabbix agent'
key: kernel.maxproc
-
- uuid: 644864fece6e4c0c9484c57e24808691
- name: Processes
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux generic by Zabbix agent'
- key: proc.num
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux generic by Zabbix agent'
- key: 'proc.num[,,run]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux generic by Zabbix agent'
- key: kernel.maxproc
- -
uuid: 1ca6e2d883114853bd402110c3fd211e
name: 'Swap usage'
graph_items:
@@ -4581,21 +2427,6 @@ zabbix_export:
host: 'Linux by Zabbix agent'
key: 'system.swap.size[,total]'
-
- uuid: 71e4089be866400a9f0a520ba271c243
- name: 'Swap usage'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux memory by Zabbix agent'
- key: 'system.swap.size[,free]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux memory by Zabbix agent'
- key: 'system.swap.size[,total]'
- -
uuid: 1b8cc9470a5040d79090a3e5dfcb0a76
name: 'System load'
ymin_type_1: FIXED
@@ -4624,32 +2455,3 @@ zabbix_export:
item:
host: 'Linux by Zabbix agent'
key: system.cpu.num
- -
- uuid: 479ffa370eef48caba68f06e63e73344
- name: 'System load'
- ymin_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.load[all,avg1]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.load[all,avg5]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux CPU by Zabbix agent'
- key: 'system.cpu.load[all,avg15]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Linux CPU by Zabbix agent'
- key: system.cpu.num
diff --git a/templates/os/linux_active/README.md b/templates/os/linux_active/README.md
index a7eba1b89e1..61e8caeaa2f 100644
--- a/templates/os/linux_active/README.md
+++ b/templates/os/linux_active/README.md
@@ -1,360 +1,4 @@
-# Linux CPU by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-|{$LOAD_AVG_PER_CPU.MAX.WARN} |<p>Load per CPU considered sustainable. Tune if needed.</p> |`1.5` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |Number of CPUs |<p>-</p> |ZABBIX_ACTIVE |system.cpu.num<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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 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] |
-|CPU |CPU nice time |<p>The time the CPU has spent running users' processes that have been niced.</p> |ZABBIX_ACTIVE |system.cpu.util[,nice] |
-|CPU |CPU iowait time |<p>Amount of time the CPU has been waiting for I/O to complete.</p> |ZABBIX_ACTIVE |system.cpu.util[,iowait] |
-|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 |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> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m) |<p>Per CPU load average is too high. Your system may be slow to respond.</p> |`min(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg5])>0 and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg15])>0` |AVERAGE | |
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Linux CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING |<p>**Depends on**:</p><p>- Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux filesystems by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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)$` |
-|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^\s$` |
-|{$VFS.FS.INODE.PFREE.MIN.CRIT} |<p>-</p> |`10` |
-|{$VFS.FS.INODE.PFREE.MIN.WARN} |<p>-</p> |`20` |
-|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
-|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_ACTIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Filesystems |{#FSNAME}: Used space |<p>Used storage in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},used] |
-|Filesystems |{#FSNAME}: Total space |<p>Total space in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},total] |
-|Filesystems |{#FSNAME}: Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},pused] |
-|Filesystems |{#FSNAME}: Free inodes in % |<p>-</p> |ZABBIX_ACTIVE |vfs.fs.inode[{#FSNAME},pfree] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
-|{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
-|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}` |AVERAGE | |
-|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}` |WARNING |<p>**Depends on**:</p><p>- {#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux memory by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$MEMORY.AVAILABLE.MIN} |<p>This macro is used as a threshold in memory available trigger.</p> |`20M` |
-|{$MEMORY.UTIL.MAX} |<p>This macro is used as a threshold in memory utilization trigger.</p> |`90` |
-|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|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 |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] |
-|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |ZABBIX_ACTIVE |system.swap.size[,pfree] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Linux memory by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE |<p>**Depends on**:</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
-|Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2}) |<p>-</p> |`max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0` |AVERAGE | |
-|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`max(/Linux memory by Zabbix agent active/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent active/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux block devices by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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.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` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Block devices discovery |<p>-</p> |ZABBIX_ACTIVE |vfs.dev.discovery<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#DEVTYPE} MATCHES_REGEX `disk`</p><p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Storage |{#DEVNAME}: Disk read rate |<p>r/s. The number (after merges) of read requests completed per second for the device.</p> |DEPENDENT |vfs.dev.read.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[0]`</p><p>- CHANGE_PER_SECOND</p> |
-|Storage |{#DEVNAME}: Disk write rate |<p>w/s. The number (after merges) of write requests completed per second for the device.</p> |DEPENDENT |vfs.dev.write.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[4]`</p><p>- CHANGE_PER_SECOND</p> |
-|Storage |{#DEVNAME}: Disk read request avg waiting time (r_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.read.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)` |
-|Storage |{#DEVNAME}: Disk write request avg waiting time (w_await) |<p>This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.</p> |CALCULATED |vfs.dev.write.await[{#DEVNAME}]<p>**Expression**:</p>`(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)` |
-|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |DEPENDENT |vfs.dev.queue_size[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[10]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
-|Storage |{#DEVNAME}: Disk utilization |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.</p> |DEPENDENT |vfs.dev.util[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[9]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.1`</p> |
-|Zabbix raw items |{#DEVNAME}: Get stats |<p>Get contents of /sys/block/{#DEVNAME}/stat for disk stats.</p> |ZABBIX_ACTIVE |vfs.file.contents[/sys/block/{#DEVNAME}/stat]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return JSON.stringify(value.trim().split(/ +/));`</p> |
-|Zabbix raw items |{#DEVNAME}: Disk read time (rate) |<p>Rate of total read time counter. Used in r_await calculation</p> |DEPENDENT |vfs.dev.read.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[3]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
-|Zabbix raw items |{#DEVNAME}: Disk write time (rate) |<p>Rate of total write time counter. Used in w_await calculation</p> |DEPENDENT |vfs.dev.write.time.rate[{#DEVNAME}]<p>**Preprocessing**:</p><p>- JSONPATH: `$[7]`</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `0.001`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Linux block devices by Zabbix agent active/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent active/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux network interfaces by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
-|{$IF.UTIL.MAX} |<p>This macro is used as a threshold in interface utilization trigger.</p> |`90` |
-|{$IFCONTROL} |<p>-</p> |`1` |
-|{$NET.IF.IFNAME.MATCHES} |<p>-</p> |`^.*$` |
-|{$NET.IF.IFNAME.NOT_MATCHES} |<p>Filter out loopbacks, nulls, docker veth links and docker0 bridge by default</p> |`(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Network interface discovery |<p>Discovery of network interfaces.</p> |ZABBIX_ACTIVE |net.if.discovery<p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Network interfaces |Interface {#IFNAME}: Bits received |<p>-</p> |ZABBIX_ACTIVE |net.if.in["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}: Bits sent |<p>-</p> |ZABBIX_ACTIVE |net.if.out["{#IFNAME}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}: Outbound packets with errors |<p>-</p> |ZABBIX_ACTIVE |net.if.out["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Inbound packets with errors |<p>-</p> |ZABBIX_ACTIVE |net.if.in["{#IFNAME}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Outbound packets discarded |<p>-</p> |ZABBIX_ACTIVE |net.if.out["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Inbound packets discarded |<p>-</p> |ZABBIX_ACTIVE |net.if.in["{#IFNAME}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}: Operational status |<p>Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt</p> |ZABBIX_ACTIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> |
-|Network interfaces |Interface {#IFNAME}: Interface type |<p>Indicates the interface protocol type as a decimal value.</p><p>See include/uapi/linux/if_arp.h for all possible values.</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_ACTIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/type"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Network interfaces |Interface {#IFNAME}: Speed |<p>Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.</p><p>This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).</p><p>Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net</p> |ZABBIX_ACTIVE |vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0`<p>Recovery expression:</p>`avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
-|Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}`<p>Recovery expression:</p>`max(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
-|Interface {#IFNAME}: Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))`<p>Recovery expression:</p>`last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
-|Interface {#IFNAME}: Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1) and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2) `<p>Recovery expression:</p>`(change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2) ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}: Link down</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux generic by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$KERNEL.MAXFILES.MIN} |<p>-</p> |`256` |
-|{$KERNEL.MAXPROC.MIN} |<p>-</p> |`1024` |
-|{$SYSTEM.FUZZYTIME.MAX} |<p>-</p> |`60` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|General |System boot time |<p>-</p> |ZABBIX_ACTIVE |system.boottime<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-|General |System local time |<p>System local time of the host.</p> |ZABBIX_ACTIVE |system.localtime |
-|General |System name |<p>System host name.</p> |ZABBIX_ACTIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
-|General |System description |<p>The information as normally returned by 'uname -a'.</p> |ZABBIX_ACTIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `12h`</p> |
-|General |Number of logged in users |<p>Number of users who are currently logged in.</p> |ZABBIX_ACTIVE |system.users.num |
-|General |Maximum number of open file descriptors |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_ACTIVE |kernel.maxfiles<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|General |Maximum number of processes |<p>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</p> |ZABBIX_ACTIVE |kernel.maxproc<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|General |Number of processes |<p>-</p> |ZABBIX_ACTIVE |proc.num |
-|General |Number of running processes |<p>-</p> |ZABBIX_ACTIVE |proc.num[,,run] |
-|Inventory |Operating system |<p>-</p> |ZABBIX_ACTIVE |system.sw.os<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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> |
-|Inventory |Software installed |<p>-</p> |ZABBIX_ACTIVE |system.sw.packages<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Security |Checksum of /etc/passwd |<p>-</p> |ZABBIX_ACTIVE |vfs.file.cksum[/etc/passwd,sha256]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-|Status |System uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_ACTIVE |system.uptime |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Linux generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
-|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
-|Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent active/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}` |INFO | |
-|Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN}) |<p>-</p> |`last(/Linux generic by Zabbix agent active/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}` |INFO |<p>**Depends on**:</p><p>- Getting closer to process limit (over 80% used)</p> |
-|Getting closer to process limit (over 80% used) |<p>-</p> |`last(/Linux generic by Zabbix agent active/proc.num)/last(/Linux generic by Zabbix agent active/kernel.maxproc)*100>80` |WARNING | |
-|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`last(/Linux generic by Zabbix agent active/system.sw.os,#1)<>last(/Linux generic by Zabbix agent active/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent active/system.sw.os))>0` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
-|/etc/passwd has been changed |<p>-</p> |`last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#2)` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Operating system description has changed</p><p>- System name has changed (new name: {ITEM.VALUE})</p> |
-|{HOST.NAME} has been restarted (uptime < 10m) |<p>The host uptime is less than 10 minutes</p> |`last(/Linux generic by Zabbix agent active/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Linux by Zabbix agent active
## Overview
diff --git a/templates/os/linux_active/template_os_linux_active.yaml b/templates/os/linux_active/template_os_linux_active.yaml
index 2cdf4101281..238bfb48f60 100644
--- a/templates/os/linux_active/template_os_linux_active.yaml
+++ b/templates/os/linux_active/template_os_linux_active.yaml
@@ -1,364 +1,12 @@
zabbix_export:
version: '6.0'
- date: '2022-02-01T07:21:31Z'
+ date: '2022-02-04T08:31:41Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 846977d1dfed4968bc5f8bdb363285bc
name: 'Templates/Operating systems'
templates:
-
- uuid: aa226119d3e94f53b9a2809f1d4ebaee
- template: 'Linux block devices by Zabbix agent active'
- name: 'Linux block devices by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 37d15facfc5f42f4ad1145f55d4bdb1e
- name: 'Block devices discovery'
- type: ZABBIX_ACTIVE
- key: vfs.dev.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#DEVTYPE}'
- value: disk
- formulaid: C
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.MATCHES}'
- formulaid: B
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: A
- item_prototypes:
- -
- uuid: 5a9fb5097fb1425aafc718018ebd95f8
- name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
- type: DEPENDENT
- key: 'vfs.dev.queue_size[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[10]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.001'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 4263e16baa044186947ad9f4ec12f6b4
- name: '{#DEVNAME}: Disk read request avg waiting time (r_await)'
- type: CALCULATED
- key: 'vfs.dev.read.await[{#DEVNAME}]'
- history: 7d
- value_type: FLOAT
- units: '!ms'
- params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)'
- description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 7a02e002d83f4e71bdcc031077738f2b
- name: '{#DEVNAME}: Disk read rate'
- type: DEPENDENT
- key: 'vfs.dev.read.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '!r/s'
- description: 'r/s. The number (after merges) of read requests completed per second for the device.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[0]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: ae4ae1c7ef2e434f875c8099ff3b101b
- name: '{#DEVNAME}: Disk read time (rate)'
- type: DEPENDENT
- key: 'vfs.dev.read.time.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- description: 'Rate of total read time counter. Used in r_await calculation'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[3]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.001'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 708baac844f54ca2b91ba8ed9f624459
- name: '{#DEVNAME}: Disk utilization'
- type: DEPENDENT
- key: 'vfs.dev.util[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[9]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.1'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: e36cbccc4d9e470f8078bd2e04c5c5da
- name: '{#DEVNAME}: Disk write request avg waiting time (w_await)'
- type: CALCULATED
- key: 'vfs.dev.write.await[{#DEVNAME}]'
- history: 7d
- value_type: FLOAT
- units: '!ms'
- params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)'
- description: 'This formula contains two boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: ef9afdff2799455e85a8477a307dd83f
- name: '{#DEVNAME}: Disk write rate'
- type: DEPENDENT
- key: 'vfs.dev.write.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '!w/s'
- description: 'w/s. The number (after merges) of write requests completed per second for the device.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[4]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 165825d4e5e442ad97d6455a117a7663
- name: '{#DEVNAME}: Disk write time (rate)'
- type: DEPENDENT
- key: 'vfs.dev.write.time.rate[{#DEVNAME}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- description: 'Rate of total write time counter. Used in w_await calculation'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[7]'
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '0.001'
- master_item:
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: ab92fd1578124197ba4dc8af11ebece4
- name: '{#DEVNAME}: Get stats'
- type: ZABBIX_ACTIVE
- key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]'
- history: '0'
- trends: '0'
- value_type: TEXT
- description: 'Get contents of /sys/block/{#DEVNAME}/stat for disk stats.'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return JSON.stringify(value.trim().split(/ +/));'
- tags:
- -
- tag: component
- value: raw
- trigger_prototypes:
- -
- uuid: af9c4b7070f94999a2a1569de0948822
- expression: 'min(/Linux block devices by Zabbix agent active/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux block devices by Zabbix agent active/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
- name: '{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m)'
- priority: WARNING
- description: 'This trigger might indicate disk {#DEVNAME} saturation.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 8748136db91b499da7516cb6fde881fb
- name: '{#DEVNAME}: Disk average waiting time'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux block devices by Zabbix agent active'
- key: 'vfs.dev.read.await[{#DEVNAME}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices by Zabbix agent active'
- key: 'vfs.dev.write.await[{#DEVNAME}]'
- -
- uuid: 00756c13228340d7b4483b796dc8f79f
- name: '{#DEVNAME}: Disk read/write rates'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux block devices by Zabbix agent active'
- key: 'vfs.dev.read.rate[{#DEVNAME}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices by Zabbix agent active'
- key: 'vfs.dev.write.rate[{#DEVNAME}]'
- -
- uuid: 7cf1fd3334f543c8b44fb131890eb87e
- name: '{#DEVNAME}: Disk utilization and queue'
- graph_items:
- -
- color: 1A7C11
- yaxisside: RIGHT
- item:
- host: 'Linux block devices by Zabbix agent active'
- key: 'vfs.dev.queue_size[{#DEVNAME}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices by Zabbix agent active'
- key: 'vfs.dev.util[{#DEVNAME}]'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- macros:
- -
- macro: '{$VFS.DEV.DEVNAME.MATCHES}'
- value: .+
- description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- 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.DEV.READ.AWAIT.WARN}'
- value: '20'
- description: 'Disk read average response time (in ms) before the trigger would fire'
- -
- macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
- value: '20'
- description: 'Disk write average response time (in ms) before the trigger would fire'
- -
uuid: e2307c94f1744af7a8f1f458a67af424
template: 'Linux by Zabbix agent active'
name: 'Linux by Zabbix agent active'
@@ -2609,1666 +2257,6 @@ zabbix_export:
-
value: '1'
newvalue: Up
- -
- uuid: da53e44145304098b4c3ff749996e3e7
- template: 'Linux CPU by Zabbix agent active'
- name: 'Linux CPU by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 4ce91073d4a344a1bbbdb5f98a48ade4
- name: 'Interrupts per second'
- type: ZABBIX_ACTIVE
- key: system.cpu.intr
- history: 7d
- value_type: FLOAT
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 028f6c4184fe4827816e47ec9ffded70
- name: 'Load average (1m avg)'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.load[all,avg1]'
- history: 7d
- value_type: FLOAT
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 507ff2791866406caf0a90c698b0b37a
- name: 'Load average (5m avg)'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.load[all,avg5]'
- history: 7d
- value_type: FLOAT
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 9502c5e47bd542ecbb8e2bfbf9020367
- name: 'Load average (15m avg)'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.load[all,avg15]'
- history: 7d
- value_type: FLOAT
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: e522484fae9044c5bb364a8be14dfd39
- name: 'Number of CPUs'
- type: ZABBIX_ACTIVE
- key: system.cpu.num
- history: 7d
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 2524a63bea9d44858b4b0a068360a3ad
- name: 'Context switches per second'
- type: ZABBIX_ACTIVE
- key: system.cpu.switches
- history: 7d
- value_type: FLOAT
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 91e6c4ff36eb4327a126a7f329792048
- name: 'CPU utilization'
- type: DEPENDENT
- key: system.cpu.util
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'CPU utilization in %'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- //Calculate utilization
- return (100 - value)
- master_item:
- key: 'system.cpu.util[,idle]'
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 685db9802cc74b5aab4d9744ca3ee32e
- expression: 'min(/Linux CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- dependencies:
- -
- name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
- expression: |
- min(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
- and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg5])>0
- and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg15])>0
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 113b52c5d0cc4fec815d1a8e76fad4b8
- name: 'CPU guest time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,guest]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Guest time (time spent running a virtual CPU for a guest operating system)'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: b642aa7ed2dc41738a58339898ed6180
- name: 'CPU guest nice time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,guest_nice]'
- 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)'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: b2f6d924272d4b84bf26cd497a85d24f
- name: 'CPU idle time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,idle]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent doing nothing.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 4eae770bff5f404481f2c57673fc8b3d
- name: 'CPU interrupt time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,interrupt]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The amount of time the CPU has been servicing hardware interrupts.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: e8d5b76517c946b18b7d55c9ff2c23cb
- name: 'CPU iowait time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,iowait]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Amount of time the CPU has been waiting for I/O to complete.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: f67af9ba78054119806eb8ee6bbe6759
- name: 'CPU nice time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,nice]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent running users'' processes that have been niced.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: c86a06e45ce449158e90ba1843fa73be
- name: 'CPU softirq time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,softirq]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The amount of time the CPU has been servicing software interrupts.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 676c1243ad404ec7b4bbdfcf1a230c8f
- name: 'CPU steal time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,steal]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The amount of CPU ''stolen'' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 768051f0019b4823a34cd1e7c03e507d
- name: 'CPU system time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,system]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent running the kernel and its processes.'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 28b99eefcae047fe8dee348ddbb96728
- name: 'CPU user time'
- type: ZABBIX_ACTIVE
- key: 'system.cpu.util[,user]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The time the CPU has spent running users'' processes that are not niced.'
- tags:
- -
- tag: component
- value: cpu
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- -
- macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}'
- value: '1.5'
- description: 'Load per CPU considered sustainable. Tune if needed.'
- -
- uuid: c626d864a2894d29a9d661d6025536ff
- template: 'Linux filesystems by Zabbix agent active'
- name: 'Linux filesystems by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 39b800d6136b4f8a8e57bbccc2f0352f
- name: 'Mounted filesystem discovery'
- type: ZABBIX_ACTIVE
- key: vfs.fs.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.MATCHES}'
- formulaid: C
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of file systems of different types.'
- item_prototypes:
- -
- uuid: 27292d6abec04f0492bf50c39749c4ea
- name: '{#FSNAME}: Free inodes in %'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.inode[{#FSNAME},pfree]'
- history: 7d
- value_type: FLOAT
- units: '%'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- uuid: 6785dec80d674c79a6b4c84a04165e25
- expression: 'min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
- opdata: 'Free inodes: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- It may become impossible to write to disk if there are no index nodes left.
- As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
- uuid: 8a453a00627c4f1bbf0724dbdf4e760a
- expression: 'min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}'
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)'
- opdata: 'Free inodes: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: |
- It may become impossible to write to disk if there are no index nodes left.
- As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
- dependencies:
- -
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
- expression: 'min(/Linux filesystems by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
- uuid: 9f94a00cd29a420185475690d2f049c5
- name: '{#FSNAME}: Space utilization'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.size[{#FSNAME},pused]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Space utilization in % for {#FSNAME}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: bba48614f65c468c82a494f3f119a21d
- name: '{#FSNAME}: Total space'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.size[{#FSNAME},total]'
- history: 7d
- units: B
- description: 'Total space in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: 76bbffc4bd4a4ac3b3ff60ff27509372
- name: '{#FSNAME}: Used space'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.size[{#FSNAME},used]'
- history: 7d
- units: B
- description: 'Used storage in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- 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)
- name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: capacity
- -
- 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)
- name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- dependencies:
- -
- name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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)
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: capacity
- graph_prototypes:
- -
- uuid: 361d0714ef994ffb8ee037ae7a952fce
- name: '{#FSNAME}: Disk space usage'
- width: '600'
- height: '340'
- type: PIE
- show_3d: 'YES'
- graph_items:
- -
- color: '969696'
- calc_fnc: LAST
- type: GRAPH_SUM
- item:
- host: 'Linux filesystems by Zabbix agent active'
- key: 'vfs.fs.size[{#FSNAME},total]'
- -
- sortorder: '1'
- color: C80000
- calc_fnc: LAST
- item:
- host: 'Linux filesystems by Zabbix agent active'
- key: 'vfs.fs.size[{#FSNAME},used]'
- macros:
- -
- macro: '{$VFS.FS.FSNAME.MATCHES}'
- value: .+
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- value: ^(/dev|/sys|/run|/proc|.+/shm$)
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSTYPE.MATCHES}'
- value: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}'
- value: '10'
- -
- macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}'
- value: '20'
- -
- macro: '{$VFS.FS.PUSED.MAX.CRIT}'
- value: '90'
- -
- macro: '{$VFS.FS.PUSED.MAX.WARN}'
- value: '80'
- -
- uuid: 7e4dc41320fd48bd97549025f4c3bcc6
- template: 'Linux generic by Zabbix agent active'
- name: 'Linux generic by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 98a2a698cd784267a965d653fdbba456
- name: 'Maximum number of open file descriptors'
- type: ZABBIX_ACTIVE
- key: kernel.maxfiles
- delay: 1h
- history: 7d
- description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: fd194c5435c74dbdbefb396550497580
- expression: 'last(/Linux generic by Zabbix agent active/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}'
- name: 'Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN})'
- priority: INFO
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 7778ab98754146ecbfd2735d9c322c97
- name: 'Maximum number of processes'
- type: ZABBIX_ACTIVE
- key: kernel.maxproc
- delay: 1h
- history: 7d
- description: 'It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 1ddbc55594d540f7b30239a4e87a3b97
- expression: 'last(/Linux generic by Zabbix agent active/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}'
- name: 'Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN})'
- priority: INFO
- dependencies:
- -
- name: 'Getting closer to process limit (over 80% used)'
- expression: 'last(/Linux generic by Zabbix agent active/proc.num)/last(/Linux generic by Zabbix agent active/kernel.maxproc)*100>80'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 64268d5004a64e0ba737dcf4dd213913
- name: 'Number of processes'
- type: ZABBIX_ACTIVE
- key: proc.num
- history: 7d
- tags:
- -
- tag: component
- value: system
- -
- uuid: 06e306520579482b8105d7421ad16da1
- name: 'Number of running processes'
- type: ZABBIX_ACTIVE
- key: 'proc.num[,,run]'
- history: 7d
- tags:
- -
- tag: component
- value: system
- -
- uuid: 04989d7ca98246ce93405b25bd86aeda
- name: 'System boot time'
- type: ZABBIX_ACTIVE
- key: system.boottime
- delay: 15m
- history: 7d
- units: unixtime
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: system
- -
- uuid: 40de32e4124b456faba499e00b1c7174
- name: 'System name'
- type: ZABBIX_ACTIVE
- key: system.hostname
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'System host name.'
- inventory_link: NAME
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 12h
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 071532526e8842f8935bf9373a85b7da
- expression: 'last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0'
- name: 'System name has changed (new name: {ITEM.VALUE})'
- priority: INFO
- description: 'System name has changed. Ack to close.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- tag: scope
- value: security
- -
- uuid: 510ed427b1284906824df3123b94a0bc
- name: 'System local time'
- type: ZABBIX_ACTIVE
- key: system.localtime
- history: 7d
- units: unixtime
- description: 'System local time of the host.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 350ceb73bee84b21b1f5c559e6697879
- expression: 'fuzzytime(/Linux generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
- name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
- priority: WARNING
- description: 'The host system time is different from the Zabbix server time.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- -
- uuid: 6f37348c05fa409e9189af3731296095
- name: 'Operating system architecture'
- type: ZABBIX_ACTIVE
- key: system.sw.arch
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'Operating system architecture of the host.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- -
- uuid: 79d493ae03a64bdab89520c3dde0410c
- name: 'Operating system'
- type: ZABBIX_ACTIVE
- key: system.sw.os
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- inventory_link: OS
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- triggers:
- -
- uuid: fc45ac0cfc7641f2a52b95830df3e880
- expression: 'last(/Linux generic by Zabbix agent active/system.sw.os,#1)<>last(/Linux generic by Zabbix agent active/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent active/system.sw.os))>0'
- name: 'Operating system description has changed'
- priority: INFO
- description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'System name has changed (new name: {ITEM.VALUE})'
- expression: 'last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 42df39b3317a4bd6908686a491fd3d18
- name: 'Software installed'
- type: ZABBIX_ACTIVE
- key: system.sw.packages
- delay: 1h
- history: 2w
- trends: '0'
- value_type: TEXT
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- -
- uuid: d875142b4ea0442db59768be58c9d026
- name: 'System description'
- type: ZABBIX_ACTIVE
- key: system.uname
- delay: 15m
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'The information as normally returned by ''uname -a''.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 12h
- tags:
- -
- tag: component
- value: system
- -
- uuid: 2e5b3c8596df4aaebce704f3904630a7
- name: 'System uptime'
- type: ZABBIX_ACTIVE
- key: system.uptime
- delay: 30s
- history: 2w
- trends: 0d
- units: uptime
- description: 'System uptime in ''N days, hh:mm:ss'' format.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 7b13d56caa094a8d95c0f4e948078366
- expression: 'last(/Linux generic by Zabbix agent active/system.uptime)<10m'
- name: '{HOST.NAME} has been restarted (uptime < 10m)'
- priority: WARNING
- description: 'The host uptime is less than 10 minutes'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: a58cfd080cfe44d9ae054754bbc69892
- name: 'Number of logged in users'
- type: ZABBIX_ACTIVE
- key: system.users.num
- history: 7d
- description: 'Number of users who are currently logged in.'
- tags:
- -
- tag: component
- value: environment
- -
- uuid: 7cb47989debc4deba77394a5320a83e8
- name: 'Checksum of /etc/passwd'
- type: ZABBIX_ACTIVE
- key: 'vfs.file.cksum[/etc/passwd,sha256]'
- delay: 15m
- history: 7d
- trends: '0'
- value_type: CHAR
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: environment
- triggers:
- -
- uuid: a49d7ca808c345ec8ef516fdc3b0d5ff
- expression: 'last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux generic by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#2)'
- name: '/etc/passwd has been changed'
- priority: INFO
- manual_close: 'YES'
- dependencies:
- -
- name: 'Operating system description has changed'
- expression: 'last(/Linux generic by Zabbix agent active/system.sw.os,#1)<>last(/Linux generic by Zabbix agent active/system.sw.os,#2) and length(last(/Linux generic by Zabbix agent active/system.sw.os))>0'
- -
- name: 'System name has changed (new name: {ITEM.VALUE})'
- expression: 'last(/Linux generic by Zabbix agent active/system.hostname,#1)<>last(/Linux generic by Zabbix agent active/system.hostname,#2) and length(last(/Linux generic by Zabbix agent active/system.hostname))>0'
- tags:
- -
- tag: scope
- value: security
- macros:
- -
- macro: '{$KERNEL.MAXFILES.MIN}'
- value: '256'
- -
- macro: '{$KERNEL.MAXPROC.MIN}'
- value: '1024'
- -
- macro: '{$SYSTEM.FUZZYTIME.MAX}'
- value: '60'
- -
- uuid: 5f577b9e34a8444c920e8199170f7fe6
- template: 'Linux memory by Zabbix agent active'
- name: 'Linux memory by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 824d5c6e62c04f2d8b6e73aeca87be1e
- name: 'Free swap space'
- type: ZABBIX_ACTIVE
- key: 'system.swap.size[,free]'
- history: 7d
- units: B
- description: 'The free space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: f3b551caf6b44511a44f5ebb07ba5917
- name: 'Free swap space in %'
- type: ZABBIX_ACTIVE
- key: 'system.swap.size[,pfree]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The free space of swap volume/file in percent.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 0b1a37ddf8db402491ac856980437a45
- name: 'Total swap space'
- type: ZABBIX_ACTIVE
- key: 'system.swap.size[,total]'
- history: 7d
- units: B
- description: 'The total space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 156ef93f80d7499198909fc3fbc84672
- name: 'Available memory'
- type: ZABBIX_ACTIVE
- key: 'vm.memory.size[available]'
- history: 7d
- units: B
- description: '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.'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 79d2b01adaf14794826f78c860867fc5
- name: 'Available memory in %'
- type: ZABBIX_ACTIVE
- key: 'vm.memory.size[pavailable]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Available memory as percentage of total. See also Appendixes in Zabbix Documentation about parameters of the vm.memory.size item.'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: e1bc17b4c3d7499b954fe10e5feb35e1
- name: 'Total memory'
- type: ZABBIX_ACTIVE
- key: 'vm.memory.size[total]'
- history: 7d
- units: B
- description: 'Total memory in Bytes'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: bb6cff2714e94a05a73aea5760e168c6
- name: 'Memory utilization'
- type: DEPENDENT
- key: vm.memory.utilization
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Memory used percentage is calculated as (100-pavailable)'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100-value);'
- master_item:
- key: 'vm.memory.size[pavailable]'
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 11bff052c18b424f9d89b53e0faa2b21
- expression: 'min(/Linux memory by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- dependencies:
- -
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- expression: 'max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$MEMORY.AVAILABLE.MIN}'
- value: 20M
- description: 'This macro is used as a threshold in memory available trigger.'
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- description: 'This macro is used as a threshold in memory utilization trigger.'
- -
- macro: '{$SWAP.PFREE.MIN.WARN}'
- value: '50'
- -
- uuid: fac8b6986be24a8c91f7b0b15439bccf
- template: 'Linux network interfaces by Zabbix agent active'
- name: 'Linux network interfaces by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 37a61365e2f34811a389f37aafc04169
- name: 'Network interface discovery'
- type: ZABBIX_ACTIVE
- key: net.if.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of network interfaces.'
- item_prototypes:
- -
- uuid: 62c1ecd956cb496b9d5257dad026add5
- name: 'Interface {#IFNAME}: Inbound packets discarded'
- type: ZABBIX_ACTIVE
- key: 'net.if.in["{#IFNAME}",dropped]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 5b771b290bb847be89bd7729709b7277
- name: 'Interface {#IFNAME}: Inbound packets with errors'
- type: ZABBIX_ACTIVE
- key: 'net.if.in["{#IFNAME}",errors]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: bd9652a4c1dd45eaa31807bdf9a84a79
- name: 'Interface {#IFNAME}: Bits received'
- type: ZABBIX_ACTIVE
- key: 'net.if.in["{#IFNAME}"]'
- delay: 3m
- history: 7d
- units: bps
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: f5c36654948041bfb45878117781b02f
- name: 'Interface {#IFNAME}: Outbound packets discarded'
- type: ZABBIX_ACTIVE
- key: 'net.if.out["{#IFNAME}",dropped]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: af4d99f8a7604fdfaaa3190469ddf9ec
- name: 'Interface {#IFNAME}: Outbound packets with errors'
- type: ZABBIX_ACTIVE
- key: 'net.if.out["{#IFNAME}",errors]'
- delay: 3m
- history: 7d
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 9cd8c1068368472383c468145c5aecba
- name: 'Interface {#IFNAME}: Bits sent'
- type: ZABBIX_ACTIVE
- key: 'net.if.out["{#IFNAME}"]'
- delay: 3m
- history: 7d
- units: bps
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: b38858cf52f945599ca475b635aab285
- name: 'Interface {#IFNAME}: Operational status'
- type: ZABBIX_ACTIVE
- key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]'
- history: 7d
- trends: '0'
- description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt'
- valuemap:
- name: ifOperStatus
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- var newvalue;
- switch(value) {
- case "unknown":
- newvalue = 0;
- break;
- case "notpresent":
- newvalue = 1;
- break;
- case "down":
- newvalue = 2;
- break;
- case "lowerlayerdown":
- newvalue = 3;
- break;
- case "testing":
- newvalue = 4;
- break;
- case "dormant":
- newvalue = 5;
- break;
- case "up":
- newvalue = 6;
- break; default:
- newvalue = "Problem parsing interface operstate in JS";
- }
- return newvalue;
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: acaf449feee44624995b9c3d0673cedc
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- name: 'Interface {#IFNAME}: Link down'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- This trigger expression works as follows:
- 1. Can be triggered if operations status is down.
- 2. {$IFCONTROL:"{#IFNAME}"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
- 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)
-
- WARNING: if closed manually - won't fire again on next poll, because of .diff.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- uuid: 7b3413b3321a4756b8f369a9633a393e
- name: 'Interface {#IFNAME}: Speed'
- type: ZABBIX_ACTIVE
- key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]'
- delay: 5m
- history: 7d
- trends: 0d
- units: bps
- description: |
- Indicates the interface latest or current speed value. Value is an integer representing the link speed in bits/sec.
- This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).
-
- Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1000000'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 1506d09010fc48378b35b434e0eb18c1
- name: 'Interface {#IFNAME}: Interface type'
- type: ZABBIX_ACTIVE
- key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]'
- delay: 1h
- history: 7d
- trends: 0d
- description: |
- Indicates the interface protocol type as a decimal value.
- See include/uapi/linux/if_arp.h for all possible values.
- Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
- valuemap:
- name: 'Linux::Interface protocol types'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: network
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: 6ce7c1f3b54641bb87684f9c5336d1da
- expression: |
- change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
- and
- (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1)
- and
- (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2)
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- (change(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"],#2)>0) or
- (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2)
- name: 'Interface {#IFNAME}: Ethernet has changed to lower speed than it was before'
- opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
- priority: INFO
- description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}: Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 57ff0d15e1634b88920cb6ddccd804c7
- expression: |
- (avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or
- avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and
- last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- avg(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and
- avg(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])
- name: 'Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
- opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'The network interface utilization is close to its estimated maximum bandwidth.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}: Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: b0b3cce08e924447845859391bdf9045
- expression: |
- min(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- or min(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- max(/Linux network interfaces by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- and max(/Linux network interfaces by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- name: 'Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
- opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}: Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2))'
- recovery_expression: 'last(/Linux network interfaces by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 97e93dc9e93f4e299dee1d1424180c6a
- name: 'Interface {#IFNAME}: Network traffic'
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux network interfaces by Zabbix agent active'
- key: 'net.if.in["{#IFNAME}"]'
- -
- sortorder: '1'
- drawtype: BOLD_LINE
- color: 2774A4
- item:
- host: 'Linux network interfaces by Zabbix agent active'
- key: 'net.if.out["{#IFNAME}"]'
- -
- sortorder: '2'
- color: F63100
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent active'
- key: 'net.if.out["{#IFNAME}",errors]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent active'
- key: 'net.if.in["{#IFNAME}",errors]'
- -
- sortorder: '4'
- color: FC6EA3
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent active'
- key: 'net.if.out["{#IFNAME}",dropped]'
- -
- sortorder: '5'
- color: 6C59DC
- yaxisside: RIGHT
- item:
- host: 'Linux network interfaces by Zabbix agent active'
- key: 'net.if.in["{#IFNAME}",dropped]'
- macros:
- -
- macro: '{$IF.ERRORS.WARN}'
- value: '2'
- -
- macro: '{$IF.UTIL.MAX}'
- value: '90'
- description: 'This macro is used as a threshold in interface utilization trigger.'
- -
- macro: '{$IFCONTROL}'
- value: '1'
- -
- macro: '{$NET.IF.IFNAME.MATCHES}'
- value: '^.*$'
- -
- macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
- value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
- description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
- dashboards:
- -
- uuid: 4c72409900b84a29bfcfd02648535a2b
- name: 'Network interfaces'
- pages:
- -
- widgets:
- -
- type: GRAPH_PROTOTYPE
- width: '24'
- height: '5'
- fields:
- -
- type: INTEGER
- name: source_type
- value: '2'
- -
- type: INTEGER
- name: columns
- value: '1'
- -
- type: INTEGER
- name: rows
- value: '1'
- -
- type: GRAPH_PROTOTYPE
- name: graphid
- value:
- name: 'Interface {#IFNAME}: Network traffic'
- host: 'Linux network interfaces by Zabbix agent active'
- valuemaps:
- -
- uuid: 9bc9524635a349409e244ad5215c80c1
- name: ifOperStatus
- mappings:
- -
- value: '0'
- newvalue: unknown
- -
- value: '1'
- newvalue: notpresent
- -
- value: '2'
- newvalue: down
- -
- value: '3'
- newvalue: lowerlayerdown
- -
- value: '4'
- newvalue: testing
- -
- value: '5'
- newvalue: dormant
- -
- value: '6'
- newvalue: up
- -
- uuid: 8f709b791d1342a48615632e86969c92
- name: 'Linux::Interface protocol types'
- mappings:
- -
- value: '0'
- newvalue: 'from KA9Q: NET/ROM pseudo'
- -
- value: '1'
- newvalue: Ethernet
- -
- value: '2'
- newvalue: 'Experimental Ethernet'
- -
- value: '3'
- newvalue: 'AX.25 Level 2'
- -
- value: '4'
- newvalue: 'PROnet token ring'
- -
- value: '5'
- newvalue: Chaosnet
- -
- value: '6'
- newvalue: 'IEEE 802.2 Ethernet/TR/TB'
- -
- value: '7'
- newvalue: ARCnet
- -
- value: '8'
- newvalue: APPLEtalk
- -
- value: '15'
- newvalue: 'Frame Relay DLCI'
- -
- value: '19'
- newvalue: ATM
- -
- value: '23'
- newvalue: 'Metricom STRIP (new IANA id)'
- -
- value: '24'
- newvalue: 'IEEE 1394 IPv4 - RFC 2734'
- -
- value: '27'
- newvalue: EUI-64
- -
- value: '32'
- newvalue: InfiniBand
- -
- value: '256'
- newvalue: ARPHRD_SLIP
- -
- value: '257'
- newvalue: ARPHRD_CSLIP
- -
- value: '258'
- newvalue: ARPHRD_SLIP6
- -
- value: '259'
- newvalue: ARPHRD_CSLIP6
- -
- value: '260'
- newvalue: 'Notional KISS type'
- -
- value: '264'
- newvalue: ARPHRD_ADAPT
- -
- value: '270'
- newvalue: ARPHRD_ROSE
- -
- value: '271'
- newvalue: 'CCITT X.25'
- -
- value: '272'
- newvalue: 'Boards with X.25 in firmware'
- -
- value: '280'
- newvalue: 'Controller Area Network'
- -
- value: '512'
- newvalue: ARPHRD_PPP
- -
- value: '513'
- newvalue: 'Cisco HDLC'
- -
- value: '516'
- newvalue: LAPB
- -
- value: '517'
- newvalue: 'Digital''s DDCMP protocol'
- -
- value: '518'
- newvalue: 'Raw HDLC'
- -
- value: '519'
- newvalue: 'Raw IP'
- -
- value: '768'
- newvalue: 'IPIP tunnel'
- -
- value: '769'
- newvalue: 'IP6IP6 tunnel'
- -
- value: '770'
- newvalue: 'Frame Relay Access Device'
- -
- value: '771'
- newvalue: 'SKIP vif'
- -
- value: '772'
- newvalue: 'Loopback device'
- -
- value: '773'
- newvalue: 'Localtalk device'
- -
- value: '774'
- newvalue: 'Fiber Distributed Data Interface'
- -
- value: '775'
- newvalue: 'AP1000 BIF'
- -
- value: '776'
- newvalue: 'sit0 device - IPv6-in-IPv4'
- -
- value: '777'
- newvalue: 'IP over DDP tunneller'
- -
- value: '778'
- newvalue: 'GRE over IP'
- -
- value: '779'
- newvalue: 'PIMSM register interface'
- -
- value: '780'
- newvalue: 'High Performance Parallel Interface'
- -
- value: '781'
- newvalue: 'Nexus 64Mbps Ash'
- -
- value: '782'
- newvalue: 'Acorn Econet'
- -
- value: '783'
- newvalue: Linux-IrDA
- -
- value: '784'
- newvalue: 'Point to point fibrechannel'
- -
- value: '785'
- newvalue: 'Fibrechannel arbitrated loop'
- -
- value: '786'
- newvalue: 'Fibrechannel public loop'
- -
- value: '787'
- newvalue: 'Fibrechannel fabric'
- -
- value: '800'
- newvalue: 'Magic type ident for TR'
- -
- value: '801'
- newvalue: 'IEEE 802.11'
- -
- value: '802'
- newvalue: 'IEEE 802.11 + Prism2 header'
- -
- value: '803'
- newvalue: 'IEEE 802.11 + radiotap header'
- -
- value: '804'
- newvalue: ARPHRD_IEEE802154
- -
- value: '805'
- newvalue: 'IEEE 802.15.4 network monitor'
- -
- value: '820'
- newvalue: 'PhoNet media type'
- -
- value: '821'
- newvalue: 'PhoNet pipe header'
- -
- value: '822'
- newvalue: 'CAIF media type'
- -
- value: '823'
- newvalue: 'GRE over IPv6'
- -
- value: '824'
- newvalue: 'Netlink header'
- -
- value: '825'
- newvalue: 'IPv6 over LoWPAN'
- -
- value: '826'
- newvalue: 'Vsock monitor header'
triggers:
-
uuid: fa21b02aebe143b192a20cd9403a68d0
@@ -4281,16 +2269,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: e15f1c71f77b4c86b8ae71469b2f297e
- expression: 'last(/Linux generic by Zabbix agent active/proc.num)/last(/Linux generic by Zabbix agent active/kernel.maxproc)*100>80'
- name: 'Getting closer to process limit (over 80% used)'
- opdata: '{ITEM.LASTVALUE1} active, {ITEM.LASTVALUE2} limit.'
- priority: WARNING
- tags:
- -
- tag: scope
- value: performance
- -
uuid: 722692e0703e4609852439a9b751826d
expression: 'max(/Linux by Zabbix agent active/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux by Zabbix agent active/system.swap.size[,total])>0'
name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
@@ -4309,24 +2287,6 @@ zabbix_export:
tag: scope
value: capacity
-
- uuid: dea1c2fccd8f4e52bedd85fe23db7228
- expression: 'max(/Linux memory by Zabbix agent active/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory by Zabbix agent active/system.swap.size[,total])>0'
- 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'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Linux memory by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}'
- -
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- expression: 'max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0'
- tags:
- -
- tag: scope
- value: capacity
- -
uuid: b3f51f3c63024d209fd01e17293127a6
expression: 'max(/Linux by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent active/vm.memory.size[total])>0'
name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
@@ -4340,19 +2300,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: 1ba414b62eef4ca6b198f00a4cdd2bde
- expression: 'max(/Linux memory by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory by Zabbix agent active/vm.memory.size[total])>0'
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
- priority: AVERAGE
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
uuid: 72825a0c706043429ed1ff6656763052
expression: |
min(/Linux by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
@@ -4369,40 +2316,8 @@ zabbix_export:
-
tag: scope
value: performance
- -
- uuid: 813c4c7139a3497dbb6b9b977eb51842
- expression: |
- min(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux CPU by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN}
- and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg5])>0
- and last(/Linux CPU by Zabbix agent active/system.cpu.load[all,avg15])>0
- name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
- opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}'
- priority: AVERAGE
- description: 'Per CPU load average is too high. Your system may be slow to respond.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
graphs:
-
- uuid: c82ee8589e5a4aa0b5e2a94293cefada
- name: 'CPU jumps'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: system.cpu.switches
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: system.cpu.intr
- -
uuid: 2e4890b0db694721b1e903ecf01c612c
name: 'CPU jumps'
graph_items:
@@ -4418,66 +2333,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: system.cpu.intr
-
- uuid: 2b52abbb5839463093fcd894f1252ff7
- name: 'CPU usage'
- type: STACKED
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,system]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,user]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,nice]'
- -
- sortorder: '3'
- color: A54F10
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,iowait]'
- -
- sortorder: '4'
- color: FC6EA3
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,steal]'
- -
- sortorder: '5'
- color: 6C59DC
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,interrupt]'
- -
- sortorder: '6'
- color: AC8C14
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,softirq]'
- -
- sortorder: '7'
- color: 611F27
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,guest]'
- -
- sortorder: '8'
- color: F230E0
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.util[,guest_nice]'
- -
uuid: 27b4612871004ca282f7d91057150800
name: 'CPU usage'
type: STACKED
@@ -4538,18 +2393,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: 'system.cpu.util[,guest_nice]'
-
- uuid: 0ef46c547fb84b47857d6fc0a3e1d1b6
- name: 'CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: system.cpu.util
- -
uuid: 3bebe4d0071441f4b95170fd0278a4dd
name: 'CPU utilization'
ymin_type_1: FIXED
@@ -4562,24 +2405,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: system.cpu.util
-
- uuid: a4654a31b6664d02bf8ec0a4ac4d968b
- name: 'Memory usage'
- ymin_type_1: FIXED
- graph_items:
- -
- drawtype: BOLD_LINE
- color: 1A7C11
- item:
- host: 'Linux memory by Zabbix agent active'
- key: 'vm.memory.size[total]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux memory by Zabbix agent active'
- key: 'vm.memory.size[available]'
- -
uuid: a4d67a1cd253431faaedf888dad90e72
name: 'Memory usage'
ymin_type_1: FIXED
@@ -4598,18 +2423,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: 'vm.memory.size[available]'
-
- uuid: ead8371cd5194410820f03d0a5732233
- name: 'Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux memory by Zabbix agent active'
- key: vm.memory.utilization
- -
uuid: 4aaf22daf96b4b29ad3a2e935f4e2d4c
name: 'Memory utilization'
ymin_type_1: FIXED
@@ -4622,27 +2435,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: vm.memory.utilization
-
- uuid: c96b7c45ae7c4ab3a544cbbd4a0e374c
- name: Processes
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux generic by Zabbix agent active'
- key: proc.num
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux generic by Zabbix agent active'
- key: 'proc.num[,,run]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux generic by Zabbix agent active'
- key: kernel.maxproc
- -
uuid: 60078a7b24494a41a3595650b113ee1d
name: Processes
graph_items:
@@ -4664,21 +2456,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: kernel.maxproc
-
- uuid: d3169f2fa1b341e3a7527a305814a0ab
- name: 'Swap usage'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux memory by Zabbix agent active'
- key: 'system.swap.size[,free]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux memory by Zabbix agent active'
- key: 'system.swap.size[,total]'
- -
uuid: a70c0c13381a4fb68eaeb66226ffe2bb
name: 'Swap usage'
graph_items:
@@ -4694,35 +2471,6 @@ zabbix_export:
host: 'Linux by Zabbix agent active'
key: 'system.swap.size[,total]'
-
- uuid: aa2447f0256d4985af78af8e1cf7e7bd
- name: 'System load'
- ymin_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.load[all,avg1]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.load[all,avg5]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: 'system.cpu.load[all,avg15]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Linux CPU by Zabbix agent active'
- key: system.cpu.num
- -
uuid: d47109e977ec4362a3f3bb5e7708b48a
name: 'System load'
ymin_type_1: FIXED
diff --git a/templates/os/linux_snmp_snmp/README.md b/templates/os/linux_snmp_snmp/README.md
index 3160352a183..b6ba38fc329 100644
--- a/templates/os/linux_snmp_snmp/README.md
+++ b/templates/os/linux_snmp_snmp/README.md
@@ -1,234 +1,4 @@
-# Linux memory SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$MEMORY.AVAILABLE.MIN} |<p>-</p> |`20M` |
-|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
-|{$SWAP.PFREE.MIN.WARN} |<p>-</p> |`50` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|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 |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> |
-|Memory |Free swap space in % |<p>The free space of swap volume/file in percent.</p> |CALCULATED |system.swap.pfree[snmp]<p>**Expression**:</p>`last(//system.swap.free[memAvailSwap.0])/last(//system.swap.total[memTotalSwap.0])*100` |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Linux memory SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX}` |AVERAGE |<p>**Depends on**:</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
-|Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2}) |<p>-</p> |`max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0` |AVERAGE | |
-|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`max(/Linux memory SNMP/system.swap.pfree[snmp],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory SNMP/system.swap.total[memTotalSwap.0])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p><p>- Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: 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.
-
-# Linux block devices SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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]*)` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Block devices discovery |<p>Block devices are discovered from UCD-DISKIO-MIB::diskIOTable (http://net-snmp.sourceforge.net/docs/mibs/ucdDiskIOMIB.html#diskIOTable)</p> |SNMP |vfs.dev.discovery[snmp]<p>**Filter**:</p>AND <p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Storage |{#DEVNAME}: Disk read rate |<p>MIB: UCD-DISKIO-MIB</p><p>The number of read accesses from this device since boot.</p> |SNMP |vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Storage |{#DEVNAME}: Disk write rate |<p>MIB: UCD-DISKIO-MIB</p><p>The number of write accesses from this device since boot.</p> |SNMP |vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Storage |{#DEVNAME}: Disk utilization |<p>MIB: UCD-DISKIO-MIB</p><p>The 1 minute average load of disk (%)</p> |SNMP |vfs.dev.util[diskIOLA1.{#SNMPINDEX}] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux CPU SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
-|{$LOAD_AVG_PER_CPU.MAX.WARN} |<p>Load per CPU considered sustainable. Tune if needed.</p> |`1.5` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU discovery |<p>This discovery will create set of per core CPU metrics from UCD-SNMP-MIB, using {#CPU.COUNT} in preprocessing. That's the only reason why LLD is used.</p> |DEPENDENT |cpu.discovery[snmp]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU |Load average (1m avg) |<p>MIB: UCD-SNMP-MIB</p> |SNMP |system.cpu.load.avg1[laLoad.1] |
-|CPU |Load average (5m avg) |<p>MIB: UCD-SNMP-MIB</p> |SNMP |system.cpu.load.avg5[laLoad.2] |
-|CPU |Load average (15m avg) |<p>MIB: UCD-SNMP-MIB</p> |SNMP |system.cpu.load.avg15[laLoad.3] |
-|CPU |Number of CPUs |<p>MIB: HOST-RESOURCES-MIB</p><p>Count the number of CPU cores by counting number of cores discovered in hrProcessorTable using LLD</p> |SNMP |system.cpu.num[snmp]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `//count the number of cores return JSON.parse(value).length; `</p> |
-|CPU |Interrupts per second |<p>-</p> |SNMP |system.cpu.intr[ssRawInterrupts.0]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|CPU |Context switches per second |<p>-</p> |SNMP |system.cpu.switches[ssRawContexts.0]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|CPU |CPU idle time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent doing nothing.</p> |SNMP |system.cpu.idle[ssCpuRawIdle.{#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 system time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent running the kernel and its processes.</p> |SNMP |system.cpu.system[ssCpuRawSystem.{#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 user time |<p>MIB: UCD-SNMP-MIB</p><p>The time the CPU has spent running users' processes that are not niced.</p> |SNMP |system.cpu.user[ssCpuRawUser.{#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 steal time |<p>MIB: UCD-SNMP-MIB</p><p>The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).</p> |SNMP |system.cpu.steal[ssCpuRawSteal.{#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 softirq time |<p>MIB: UCD-SNMP-MIB</p><p>The amount of time the CPU has been servicing software interrupts.</p> |SNMP |system.cpu.softirq[ssCpuRawSoftIRQ.{#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 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> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m) |<p>Per CPU load average is too high. Your system may be slow to respond.</p> |`min(/Linux CPU SNMP/system.cpu.load.avg1[laLoad.1],5m)/last(/Linux CPU SNMP/system.cpu.num[snmp])>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux CPU SNMP/system.cpu.load.avg5[laLoad.2])>0 and last(/Linux CPU SNMP/system.cpu.load.avg15[laLoad.3])>0` |AVERAGE | |
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Linux CPU SNMP/system.cpu.util[snmp,{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Linux filesystems SNMP
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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)$` |
-|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level</p> |`^\s$` |
-|{$VFS.FS.INODE.PFREE.MIN.CRIT} |<p>-</p> |`10` |
-|{$VFS.FS.INODE.PFREE.MIN.WARN} |<p>-</p> |`20` |
-|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
-|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Mounted filesystem discovery |<p>HOST-RESOURCES-MIB::hrStorage discovery with storage filter</p> |SNMP |vfs.fs.discovery[snmp]<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|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` |
-|Storage |{#FSNAME}: Free inodes in % |<p>MIB: UCD-SNMP-MIB</p><p>If having problems collecting this item make sure access to UCD-SNMP-MIB is allowed.</p> |SNMP |vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100-value);`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
-|{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
-|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}` |AVERAGE | |
-|{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%) |<p>It may become impossible to write to disk if there are no index nodes left.</p><p>As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.</p> |`min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}` |WARNING |<p>**Depends on**:</p><p>- {#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Linux SNMP
## Overview
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 fc31e2b2e91..3f389ad27bc 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,1138 +1,12 @@
zabbix_export:
version: '6.0'
- date: '2022-01-26T14:29:43Z'
+ date: '2022-02-04T08:32:06Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 846977d1dfed4968bc5f8bdb363285bc
name: 'Templates/Operating systems'
templates:
-
- uuid: 8278f5e79ef2420cab500a147cc72009
- template: 'Linux block devices SNMP'
- name: 'Linux block devices SNMP'
- description: |
- MIBs used:
- UCD-DISKIO-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: a85f20bbf86045438460bf439422aaec
- name: 'Block devices discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#DEVNAME},1.3.6.1.4.1.2021.13.15.1.1.2]'
- key: 'vfs.dev.discovery[snmp]'
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Block devices are discovered from UCD-DISKIO-MIB::diskIOTable (http://net-snmp.sourceforge.net/docs/mibs/ucdDiskIOMIB.html#diskIOTable)'
- item_prototypes:
- -
- uuid: ed71e7a243594c3bb0c2055b5cfb6f62
- name: '{#DEVNAME}: Disk read rate'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.13.15.1.1.5.{#SNMPINDEX}'
- key: 'vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '!r/s'
- description: |
- MIB: UCD-DISKIO-MIB
- The number of read accesses from this device since boot.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 5e96a297e7e54c0ba4607949c854edc8
- name: '{#DEVNAME}: Disk utilization'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.13.15.1.1.9.{#SNMPINDEX}'
- key: 'vfs.dev.util[diskIOLA1.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-DISKIO-MIB
- The 1 minute average load of disk (%)
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: a060b61ad4f24be299c0a9b2582dda87
- name: '{#DEVNAME}: Disk write rate'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.13.15.1.1.6.{#SNMPINDEX}'
- key: 'vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '!w/s'
- description: |
- MIB: UCD-DISKIO-MIB
- The number of write accesses from this device since boot.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- graph_prototypes:
- -
- uuid: 15f4080e061d4b86a253709d56f444a5
- name: '{#DEVNAME}: Disk read/write rates'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux block devices SNMP'
- key: 'vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux block devices SNMP'
- key: 'vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}]'
- macros:
- -
- macro: '{$VFS.DEV.DEVNAME.MATCHES}'
- value: .+
- description: 'This macro is used in block devices discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- 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'
- -
- uuid: f55b1b1c10a44fe8aef0631f6f41b86d
- template: 'Linux CPU SNMP'
- name: 'Linux CPU SNMP'
- description: |
- MIBs used:
- HOST-RESOURCES-MIB
- UCD-SNMP-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: cf935e4e2f224ce5a9d09662df90e5b2
- name: 'Interrupts per second'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.59.0
- key: 'system.cpu.intr[ssRawInterrupts.0]'
- history: 7d
- value_type: FLOAT
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 335279fa524d48089d99ffba47017a0f
- name: 'Load average (1m avg)'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.10.1.3["index","1.3.6.1.4.1.2021.10.1.2", "Load-1"]'
- key: 'system.cpu.load.avg1[laLoad.1]'
- history: 7d
- value_type: FLOAT
- description: 'MIB: UCD-SNMP-MIB'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 74a03675fdba49969d7286d718edc4e8
- name: 'Load average (5m avg)'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.10.1.3["index","1.3.6.1.4.1.2021.10.1.2", "Load-5"]'
- key: 'system.cpu.load.avg5[laLoad.2]'
- history: 7d
- value_type: FLOAT
- description: 'MIB: UCD-SNMP-MIB'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: d774c8d00aab4158b856feda354fcef6
- name: 'Load average (15m avg)'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.10.1.3["index","1.3.6.1.4.1.2021.10.1.2", "Load-15"]'
- key: 'system.cpu.load.avg15[laLoad.3]'
- history: 7d
- value_type: FLOAT
- description: 'MIB: UCD-SNMP-MIB'
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 20dbc1d9ed25400983eadb6e9d6f1f04
- name: 'Number of CPUs'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.25.3.3.1.1]'
- key: 'system.cpu.num[snmp]'
- history: 7d
- description: |
- MIB: HOST-RESOURCES-MIB
- Count the number of CPU cores by counting number of cores discovered in hrProcessorTable using LLD
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- //count the number of cores
- return JSON.parse(value).length;
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 2e52405bed144bd392ba386d8d8fa752
- name: 'Context switches per second'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.60.0
- key: 'system.cpu.switches[ssRawContexts.0]'
- history: 7d
- value_type: FLOAT
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: cpu
- discovery_rules:
- -
- uuid: bb04cfa331214963b311d7b397cb3c12
- name: 'CPU discovery'
- type: DEPENDENT
- key: 'cpu.discovery[snmp]'
- delay: '0'
- description: 'This discovery will create set of per core CPU metrics from UCD-SNMP-MIB, using {#CPU.COUNT} in preprocessing. That''s the only reason why LLD is used.'
- item_prototypes:
- -
- uuid: 7cb1bdc138a041039b229804e5f55676
- name: 'CPU guest time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.65.0
- key: 'system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- Guest time (time spent running a virtual CPU for a guest operating system)
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 47939519397147e7be84d1d3223e8111
- name: 'CPU guest nice time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.66.0
- key: 'system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- 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)
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: b20769f44f8247e1a6a5908ff084ff81
- name: 'CPU idle time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.53.0
- key: 'system.cpu.idle[ssCpuRawIdle.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The time the CPU has spent doing nothing.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 7da67bc8887a4d36abba6b041a72f221
- name: 'CPU interrupt time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.56.0
- key: 'system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The amount of time the CPU has been servicing hardware interrupts.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: ce41593112f1497884643f7f99075f4b
- name: 'CPU iowait time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.54.0
- key: 'system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- Amount of time the CPU has been waiting for I/O to complete.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 80c42f533f3d40529a1451ecdbaf3d62
- name: 'CPU nice time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.51.0
- key: 'system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The time the CPU has spent running users' processes that have been niced.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 1c121eeb3f864dd68569efff6ab79ac8
- name: 'CPU softirq time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.61.0
- key: 'system.cpu.softirq[ssCpuRawSoftIRQ.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The amount of time the CPU has been servicing software interrupts.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: b98feceb5d1b4dafbbbbc80d3f9598f9
- name: 'CPU steal time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.64.0
- key: 'system.cpu.steal[ssCpuRawSteal.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The amount of CPU 'stolen' from this virtual machine by the hypervisor for other tasks (such as running another virtual machine).
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 0b45abb043f14f23bd8d71f0bca70c06
- name: 'CPU system time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.52.0
- key: 'system.cpu.system[ssCpuRawSystem.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The time the CPU has spent running the kernel and its processes.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 295af9e607aa46c4886a49905137b7ad
- name: 'CPU user time'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.11.50.0
- key: 'system.cpu.user[ssCpuRawUser.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- The time the CPU has spent running users' processes that are not niced.
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: JAVASCRIPT
- parameters:
- - |
- //to get utilization in %, divide by N, where N is number of cores.
- return value/{#CPU.COUNT}
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: aa01918c9d864f498cc211772103ba27
- name: 'CPU utilization'
- type: DEPENDENT
- key: 'system.cpu.util[snmp,{#SNMPINDEX}]'
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'CPU utilization in %'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- //Calculate utilization
- return (100 - value)
- master_item:
- key: 'system.cpu.idle[ssCpuRawIdle.{#SNMPINDEX}]'
- tags:
- -
- tag: component
- value: cpu
- trigger_prototypes:
- -
- uuid: 305450aac4ce4170a3a7942f6b092593
- expression: 'min(/Linux CPU SNMP/system.cpu.util[snmp,{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- graph_prototypes:
- -
- uuid: 1ed285cca7774aad9335101f373eb642
- name: 'CPU usage{#SINGLETON}'
- type: STACKED
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.system[ssCpuRawSystem.{#SNMPINDEX}]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.user[ssCpuRawUser.{#SNMPINDEX}]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}]'
- -
- sortorder: '3'
- color: A54F10
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}]'
- -
- sortorder: '4'
- color: FC6EA3
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.steal[ssCpuRawSteal.{#SNMPINDEX}]'
- -
- sortorder: '5'
- color: 6C59DC
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}]'
- -
- sortorder: '6'
- color: AC8C14
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.softirq[ssCpuRawSoftIRQ.{#SNMPINDEX}]'
- -
- sortorder: '7'
- color: 611F27
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}]'
- -
- sortorder: '8'
- color: F230E0
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}]'
- -
- uuid: 27556abf8985458f9d300ab5981f6e96
- name: 'CPU utilization{#SINGLETON}'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.util[snmp,{#SNMPINDEX}]'
- master_item:
- key: 'system.cpu.num[snmp]'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- //count the number of CPU cores
- return JSON.stringify([{"{#CPU.COUNT}": value, "{#SNMPINDEX}": 0, "{#SINGLETON}":""}])
- macros:
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- -
- macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}'
- value: '1.5'
- description: 'Load per CPU considered sustainable. Tune if needed.'
- -
- uuid: cbaf0383cb934294ac53a28ddfd49434
- template: 'Linux filesystems SNMP'
- name: 'Linux filesystems SNMP'
- description: |
- MIBs used:
- HOST-RESOURCES-MIB
- UCD-SNMP-MIB
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: c55b2f96bd50421482dfcc230e6de01e
- name: 'Mounted filesystem discovery'
- type: SNMP_AGENT
- snmp_oid: 'discovery[{#FSNAME},1.3.6.1.2.1.25.2.3.1.3,{#FSTYPE},1.3.6.1.2.1.25.2.3.1.2,{#ALLOC_UNITS},1.3.6.1.2.1.25.2.3.1.4]'
- key: 'vfs.fs.discovery[snmp]'
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.MATCHES}'
- formulaid: C
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'HOST-RESOURCES-MIB::hrStorage discovery with storage filter'
- item_prototypes:
- -
- uuid: 5c0b2605afe84c288207c04b9946dfbf
- name: '{#FSNAME}: Free inodes in %'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.4.1.2021.9.1.10["index","1.3.6.1.4.1.2021.9.1.2", "{#FSNAME}"]'
- key: 'vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- MIB: UCD-SNMP-MIB
- If having problems collecting this item make sure access to UCD-SNMP-MIB is allowed.
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100-value);'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- uuid: 377f4ffa529f4b0690a11228f4021294
- expression: 'min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
- opdata: 'Free inodes: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- It may become impossible to write to disk if there are no index nodes left.
- As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
- uuid: 5f80199affa44ed7a6b875c49ca00aa7
- expression: 'min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}'
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)'
- opdata: 'Free inodes: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: |
- It may become impossible to write to disk if there are no index nodes left.
- As symptoms, 'No space left on device' or 'Disk is full' errors may be seen even though free space is available.
- dependencies:
- -
- name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)'
- expression: 'min(/Linux filesystems SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
- uuid: 3cc99f32a3a44b2a94c2bab5f2765c8e
- name: '{#FSNAME}: Space utilization'
- type: CALCULATED
- key: 'vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}]'
- history: 7d
- value_type: FLOAT
- units: '%'
- params: '(last(//vfs.fs.used[hrStorageUsed.{#SNMPINDEX}])/last(//vfs.fs.total[hrStorageSize.{#SNMPINDEX}]))*100'
- description: 'Space utilization in % for {#FSNAME}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: 9e9b2eb864164eebb4825ba0331b0b95
- name: '{#FSNAME}: Total space'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.2.1.25.2.3.1.5.{#SNMPINDEX}'
- key: 'vfs.fs.total[hrStorageSize.{#SNMPINDEX}]'
- history: 7d
- units: B
- description: |
- MIB: HOST-RESOURCES-MIB
- The size of the storage represented by this entry, in units of hrStorageAllocationUnits.
- 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.
- 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.
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '{#ALLOC_UNITS}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: 2cfbdae09907476ea6d73af86338f279
- name: '{#FSNAME}: Used space'
- type: SNMP_AGENT
- snmp_oid: '1.3.6.1.2.1.25.2.3.1.6.{#SNMPINDEX}'
- key: 'vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]'
- history: 7d
- units: B
- description: |
- MIB: HOST-RESOURCES-MIB
- The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '{#ALLOC_UNITS}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- 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)
- name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: capacity
- -
- 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)
- name: '{#FSNAME}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- dependencies:
- -
- name: '{#FSNAME}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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)
- tags:
- -
- tag: scope
- value: availability
- -
- tag: scope
- value: capacity
- graph_prototypes:
- -
- uuid: f1000d7a017f4954a32103b345ae4fdf
- name: '{#FSNAME}: Disk space usage'
- width: '600'
- height: '340'
- type: PIE
- show_3d: 'YES'
- graph_items:
- -
- color: '969696'
- calc_fnc: LAST
- type: GRAPH_SUM
- item:
- host: 'Linux filesystems SNMP'
- key: 'vfs.fs.total[hrStorageSize.{#SNMPINDEX}]'
- -
- sortorder: '1'
- color: C80000
- calc_fnc: LAST
- item:
- host: 'Linux filesystems SNMP'
- key: 'vfs.fs.used[hrStorageUsed.{#SNMPINDEX}]'
- macros:
- -
- macro: '{$VFS.FS.FSNAME.MATCHES}'
- value: .+
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- value: ^(/dev|/sys|/run|/proc|.+/shm$)
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSTYPE.MATCHES}'
- value: '.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level'
- -
- macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}'
- value: '10'
- -
- macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}'
- value: '20'
- -
- macro: '{$VFS.FS.PUSED.MAX.CRIT}'
- value: '90'
- -
- macro: '{$VFS.FS.PUSED.MAX.WARN}'
- value: '80'
- -
- uuid: 443e4897fb0a4eef9d4624a3baa8f174
- template: 'Linux memory SNMP'
- name: 'Linux memory SNMP'
- description: |
- MIBs used:
- UCD-SNMP-MIB
-
- Known Issues:
-
- Description: 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.
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 286b7a7da5bc46349d98d40e0fa87bb3
- name: 'Free swap space'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.4.4.0
- key: 'system.swap.free[memAvailSwap.0]'
- history: 7d
- units: B
- description: |
- MIB: UCD-SNMP-MIB
- The amount of swap space currently unused or available.
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1024'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 95b96317790d467c8f2c3acbe4f508a2
- name: 'Free swap space in %'
- type: CALCULATED
- key: 'system.swap.pfree[snmp]'
- history: 7d
- value_type: FLOAT
- units: '%'
- params: 'last(//system.swap.free[memAvailSwap.0])/last(//system.swap.total[memTotalSwap.0])*100'
- description: 'The free space of swap volume/file in percent.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 7e3c9bc424684af8b16852548145d240
- name: 'Total swap space'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.4.3.0
- key: 'system.swap.total[memTotalSwap.0]'
- history: 7d
- units: B
- description: |
- MIB: UCD-SNMP-MIB
- The total amount of swap space configured for this host.
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1024'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: d2f2a3127c83459696bb7496de04830b
- name: 'Available memory'
- type: CALCULATED
- key: 'vm.memory.available[snmp]'
- history: 7d
- units: B
- params: 'last(//vm.memory.free[memAvailReal.0])+last(//vm.memory.buffers[memBuffer.0])+last(//vm.memory.cached[memCached.0])'
- description: '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.'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 81c8a8aa72144ec99c0723bd1c7efde0
- name: 'Memory (buffers)'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.4.14.0
- key: 'vm.memory.buffers[memBuffer.0]'
- history: 7d
- units: B
- description: |
- MIB: UCD-SNMP-MIB
- Memory used by kernel buffers (Buffers in /proc/meminfo)
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1024'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: a74e6bc72c8c45f2b01ee1b50ce64fdc
- name: 'Memory (cached)'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.4.15.0
- key: 'vm.memory.cached[memCached.0]'
- history: 7d
- units: B
- description: |
- MIB: UCD-SNMP-MIB
- Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1024'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: b13aae9bb13c432998688f8c3230ddb2
- name: 'Free memory'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.4.6.0
- key: 'vm.memory.free[memAvailReal.0]'
- history: 7d
- units: B
- description: 'MIB: UCD-SNMP-MIB'
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1024'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 849c5cd7aec94ed48c6a0a321b54d801
- name: 'Total memory'
- type: SNMP_AGENT
- snmp_oid: 1.3.6.1.4.1.2021.4.5.0
- key: 'vm.memory.total[memTotalReal.0]'
- history: 7d
- units: B
- description: |
- MIB: UCD-SNMP-MIB
- Total memory in Bytes
- preprocessing:
- -
- type: MULTIPLIER
- parameters:
- - '1024'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: ac10ac53a99e464bbf0c5894d4297cfc
- name: 'Memory utilization'
- type: CALCULATED
- key: 'vm.memory.util[snmp]'
- history: 7d
- value_type: FLOAT
- units: '%'
- params: '(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'
- description: '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.'
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 38e4d31ccb594ba1a041c47633887ef6
- expression: 'min(/Linux memory SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX}'
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- dependencies:
- -
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- expression: 'max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$MEMORY.AVAILABLE.MIN}'
- value: 20M
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- -
- macro: '{$SWAP.PFREE.MIN.WARN}'
- value: '50'
- -
uuid: 4d3a7adbb6964bd08f2b9d28e0da6496
template: 'Linux SNMP'
name: 'Linux SNMP'
@@ -4299,24 +3173,6 @@ zabbix_export:
newvalue: unknown
triggers:
-
- uuid: 12324c6e7b564c858406702148b43bc4
- expression: 'max(/Linux memory SNMP/system.swap.pfree[snmp],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux memory SNMP/system.swap.total[memTotalSwap.0])>0'
- 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'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Linux memory SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX}'
- -
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- expression: 'max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0'
- tags:
- -
- tag: scope
- value: capacity
- -
uuid: 8d66563ff7744cd6847325d473eaacfe
expression: 'max(/Linux SNMP/system.swap.pfree[snmp],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux SNMP/system.swap.total[memTotalSwap.0])>0'
name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
@@ -4335,19 +3191,6 @@ zabbix_export:
tag: scope
value: capacity
-
- uuid: 687586e62f4b4191aa95ba1ba74c7787
- expression: 'max(/Linux memory SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux memory SNMP/vm.memory.total[memTotalReal.0])>0'
- name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
- opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}'
- priority: AVERAGE
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
uuid: b0a04a6a01854d0eb6f9f225c1108261
expression: 'max(/Linux SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux SNMP/vm.memory.total[memTotalReal.0])>0'
name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})'
@@ -4361,23 +3204,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: 4e08b6e41268476292ac92da123bd8d7
- expression: |
- min(/Linux CPU SNMP/system.cpu.load.avg1[laLoad.1],5m)/last(/Linux CPU SNMP/system.cpu.num[snmp])>{$LOAD_AVG_PER_CPU.MAX.WARN}
- and last(/Linux CPU SNMP/system.cpu.load.avg5[laLoad.2])>0
- and last(/Linux CPU SNMP/system.cpu.load.avg15[laLoad.3])>0
- name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)'
- opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}'
- priority: AVERAGE
- description: 'Per CPU load average is too high. Your system may be slow to respond.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- -
uuid: 33df3354161047f0b47ad7736b70a302
expression: |
min(/Linux SNMP/system.cpu.load.avg1[laLoad.1],5m)/last(/Linux SNMP/system.cpu.num[snmp])>{$LOAD_AVG_PER_CPU.MAX.WARN}
@@ -4396,21 +3222,6 @@ zabbix_export:
value: performance
graphs:
-
- uuid: 1b06aa0505e94191bce3bf15d41ad113
- name: 'CPU jumps'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.switches[ssRawContexts.0]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.intr[ssRawInterrupts.0]'
- -
uuid: ff743a3e32e7497b9b98173b3611687f
name: 'CPU jumps'
graph_items:
@@ -4444,24 +3255,6 @@ zabbix_export:
host: 'Linux SNMP'
key: 'vm.memory.available[snmp]'
-
- uuid: 6af175b5899946c5bae1e7ab4e8f0635
- name: 'Memory usage'
- ymin_type_1: FIXED
- graph_items:
- -
- drawtype: BOLD_LINE
- color: 1A7C11
- item:
- host: 'Linux memory SNMP'
- key: 'vm.memory.total[memTotalReal.0]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Linux memory SNMP'
- key: 'vm.memory.available[snmp]'
- -
uuid: 5cd95425d8fe4705833995ccfb484c66
name: 'Memory utilization'
ymin_type_1: FIXED
@@ -4474,18 +3267,6 @@ zabbix_export:
host: 'Linux SNMP'
key: 'vm.memory.util[snmp]'
-
- uuid: edd17c68085b4a328c24ebd8d37fd30c
- name: 'Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Linux memory SNMP'
- key: 'vm.memory.util[snmp]'
- -
uuid: 421c99e9076c4f24931206255577c988
name: 'Swap usage'
graph_items:
@@ -4501,21 +3282,6 @@ zabbix_export:
host: 'Linux SNMP'
key: 'system.swap.total[memTotalSwap.0]'
-
- uuid: 24bd0481e30a49a78410fef4e1470546
- name: 'Swap usage'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux memory SNMP'
- key: 'system.swap.free[memAvailSwap.0]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux memory SNMP'
- key: 'system.swap.total[memTotalSwap.0]'
- -
uuid: feff7234e6cc420e94acc3c0dab0a61e
name: 'System load'
ymin_type_1: FIXED
@@ -4544,32 +3310,3 @@ zabbix_export:
item:
host: 'Linux SNMP'
key: 'system.cpu.num[snmp]'
- -
- uuid: 1ec155ff28e14859b26e9804e96c7fb8
- name: 'System load'
- ymin_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.load.avg1[laLoad.1]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.load.avg5[laLoad.2]'
- -
- sortorder: '2'
- color: F63100
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.load.avg15[laLoad.3]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Linux CPU SNMP'
- key: 'system.cpu.num[snmp]'
diff --git a/templates/os/windows_agent/README.md b/templates/os/windows_agent/README.md
index cad1b7f05f3..8cbb0f2f668 100644
--- a/templates/os/windows_agent/README.md
+++ b/templates/os/windows_agent/README.md
@@ -1,402 +1,4 @@
-# Windows CPU by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.INTERRUPT.CRIT.MAX} |<p>The critical threshold of the % Interrupt Time counter.</p> |`50` |
-|{$CPU.PRIV.CRIT.MAX} |<p>The threshold of the % Privileged Time counter.</p> |`30` |
-|{$CPU.QUEUE.CRIT.MAX} |<p>The threshold of the Processor Queue Length counter.</p> |`3` |
-|{$CPU.UTIL.CRIT} |<p>The critical threshold of the CPU utilization in %.</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|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"] |
-|CPU |CPU DPC time |<p>Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure</p><p>calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a</p><p>component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is</p><p>sustained, there may be a processor bottleneck or an application or hardware related issue that can</p><p>significantly diminish overall system performance.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% DPC Time"] |
-|CPU |CPU user time |<p>The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing</p><p>in User mode.</p> |ZABBIX_PASSIVE |perf_counter_en["\Processor Information(_total)\% User Time"] |
-|CPU |Number of cores |<p>The number of logical processors available on the computer.</p> |ZABBIX_PASSIVE |wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] |
-|CPU |CPU queue length |<p>The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue</p><p>and are waiting to be executed.</p> |ZABBIX_PASSIVE |perf_counter_en["\System\Processor Queue Length"] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-|CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m) |<p>"The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."</p><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> |`min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-|CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m) |<p>The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.</p> |`min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-|CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m) |<p>The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.</p> |`min(/Windows CPU by Zabbix agent/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows memory by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$MEM.PAGE_SEC.CRIT.MAX} |<p>The warning threshold of the Memory Pages/sec counter.</p> |`1000` |
-|{$MEM.PAGE_TABLE_CRIT.MIN} |<p>The warning threshold of the Free System Page Table Entries counter.</p> |`5000` |
-|{$MEMORY.UTIL.MAX} |<p>The warning threshold of the Memory util item.</p> |`90` |
-|{$SWAP.PFREE.MIN.WARN} |<p>The warning threshold of the minimum free swap.</p> |`20` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|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 |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> |
-|Memory |Used swap space in % |<p>The used space of swap volume/file in percent.</p> |ZABBIX_PASSIVE |perf_counter_en["\Paging file(_Total)\% Usage"] |
-|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_PASSIVE |system.swap.size[,total] |
-|Memory |Free system page table entries |<p>This indicates the number of page table entries not currently in use by the system. If the number is less</p><p>than 5,000, there may well be a memory leak or you running out of memory.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Free System Page Table Entries"] |
-|Memory |Memory page faults per second |<p>Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages</p><p>faulted per second because only one page is faulted in each fault operation, hence this is also equal</p><p>to the number of page fault operations. This counter includes both hard faults (those that require</p><p>disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most</p><p>processors can handle large numbers of soft faults without significant consequence. However, hard faults,</p><p>which require disk access, can cause significant delays.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Page Faults/sec"] |
-|Memory |Memory pages per second |<p>This measures the rate at which pages are read from or written to disk to resolve hard page faults.</p><p>If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Pages/sec"] |
-|Memory |Memory pool non-paged |<p>This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects</p><p>that cannot be written to disk but instead must remain in physical memory as long as they are allocated.</p><p>There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).</p><p>A typical Event ID 2019 is recorded in the system event log.</p> |ZABBIX_PASSIVE |perf_counter_en["\Memory\Pool Nonpaged Bytes"] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
-|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`min(/Windows memory by Zabbix agent/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
-|Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m) |<p>The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.</p> |`max(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
-|The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m) |<p>The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |`min(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows filesystems by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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> |`.*` |
-|{$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> |`.*` |
-|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
-|{$VFS.FS.PUSED.MAX.CRIT} |<p>The critical threshold of the filesystem utilization in percent.</p> |`90` |
-|{$VFS.FS.PUSED.MAX.WARN} |<p>The warning threshold of the filesystem utilization in percent.</p> |`80` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_PASSIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p><p>- {#FSDRIVETYPE} MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.MATCHES}`</p><p>- {#FSDRIVETYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Filesystems |{#FSLABEL}({#FSNAME}): Used space |<p>Used storage in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},used] |
-|Filesystems |{#FSLABEL}({#FSNAME}): Total space |<p>Total space in Bytes</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},total] |
-|Filesystems |{#FSLABEL}({#FSNAME}): Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_PASSIVE |vfs.fs.size[{#FSNAME},pused] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
-|{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows physical disks by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$VFS.DEV.DEVNAME.MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`_Total` |
-|{$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` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Physical disks discovery |<p>Discovery of installed physical disks.</p> |ZABBIX_PASSIVE |perf_instance_en.discovery[PhysicalDisk]<p>**Preprocessing**:</p><p>- STR_REPLACE: `{#INSTANCE} {#DEVNAME}`</p><p>**Filter**:</p>AND <p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Storage |{#DEVNAME}: Disk read rate |<p>Rate of read operations on the disk.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] |
-|Storage |{#DEVNAME}: Disk write rate |<p>Rate of write operations on the disk.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] |
-|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] |
-|Storage |{#DEVNAME}: Disk utilization by idle time |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
-|Storage |{#DEVNAME}: Disk read request avg waiting time |<p>The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] |
-|Storage |{#DEVNAME}: Disk write request avg waiting time |<p>The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] |
-|Storage |{#DEVNAME}: Average disk read queue length |<p>Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] |
-|Storage |{#DEVNAME}: Average disk write queue length |<p>Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_PASSIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m) |<p>The disk appears to be under heavy load</p> |`min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m</p><p>- {#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)</p> |
-|{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
-|{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows generic by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$SYSTEM.FUZZYTIME.MAX} |<p>The threshold for difference of system time in seconds.</p> |`60` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|General |System local time |<p>System local time of the host.</p> |ZABBIX_PASSIVE |system.localtime |
-|General |System name |<p>System host name.</p> |ZABBIX_PASSIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|General |System description |<p>System description of the host.</p> |ZABBIX_PASSIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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> |
-|Status |Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_PASSIVE |system.uptime |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Windows generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
-|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Windows generic by Zabbix agent/system.hostname,#1)<>last(/Windows generic by Zabbix agent/system.hostname,#2) and length(last(/Windows generic by Zabbix agent/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
-|Host has been restarted (uptime < 10m) |<p>The device uptime is less than 10 minutes.</p> |`last(/Windows generic by Zabbix agent/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows network by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
-|{$IF.UTIL.MAX} |<p>-</p> |`90` |
-|{$IFCONTROL} |<p>-</p> |`1` |
-|{$NET.IF.IFALIAS.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$NET.IF.IFALIAS.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
-|{$NET.IF.IFDESCR.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$NET.IF.IFDESCR.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
-|{$NET.IF.IFNAME.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$NET.IF.IFNAME.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Network interfaces discovery |<p>Discovery of installed network interfaces.</p> |DEPENDENT |net.if.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p><p>- {#IFDESCR} MATCHES_REGEX `{$NET.IF.IFDESCR.MATCHES}`</p><p>- {#IFDESCR} NOT_MATCHES_REGEX `{$NET.IF.IFDESCR.NOT_MATCHES}`</p><p>- {#IFALIAS} MATCHES_REGEX `{$NET.IF.IFALIAS.MATCHES}`</p><p>- {#IFALIAS} NOT_MATCHES_REGEX `{$NET.IF.IFALIAS.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>Incoming traffic on the network interface.</p> |ZABBIX_PASSIVE |net.if.in["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits sent |<p>Outgoing traffic on the network interface.</p> |ZABBIX_PASSIVE |net.if.out["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded |<p>The number of incoming packets dropped on the network interface.</p> |ZABBIX_PASSIVE |net.if.in["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded |<p>The number of outgoing packets dropped on the network interface.</p> |ZABBIX_PASSIVE |net.if.out["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors |<p>The number of incoming packets with errors on the network interface.</p> |ZABBIX_PASSIVE |net.if.in["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors |<p>The number of outgoing packets with errors on the network interface.</p> |ZABBIX_PASSIVE |net.if.out["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Speed |<p>Estimated bandwidth of the network interface if any.</p> |DEPENDENT |net.if.speed["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].Speed.first()`</p><p>⛔️ON_FAIL: `CUSTOM_VALUE -> 0`</p><p>- JAVASCRIPT: `return (value=='9223372036854775807' ? 0 : value) `</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Interface type |<p>The type of the network interface.</p> |DEPENDENT |net.if.type["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>The operational status of the network interface.</p> |DEPENDENT |net.if.status["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Zabbix raw items |Network interfaces WMI get |<p>Raw data of win32_networkadapter.</p> |ZABBIX_PASSIVE |wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) or avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])) and last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0`<p>Recovery expression:</p>`avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) and avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
-|Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} `<p>Recovery expression:</p>`max(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
-|Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])<0 and last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
-|Interface {#IFNAME}({#IFALIAS}): Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.</p><p> No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))`<p>Recovery expression:</p>`last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows services by Zabbix agent
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-Special version of services template that is required for Windows OS.
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$SERVICE.NAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^.*$` |
-|{$SERVICE.NAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$` |
-|{$SERVICE.STARTUPNAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:automatic|automatic delayed)$` |
-|{$SERVICE.STARTUPNAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:manual|disabled)$` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Windows services discovery |<p>Discovery of Windows services of different types as defined in template's macros.</p> |ZABBIX_PASSIVE |service.discovery<p>**Filter**:</p>AND <p>- {#SERVICE.NAME} MATCHES_REGEX `{$SERVICE.NAME.MATCHES}`</p><p>- {#SERVICE.NAME} NOT_MATCHES_REGEX `{$SERVICE.NAME.NOT_MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} MATCHES_REGEX `{$SERVICE.STARTUPNAME.MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} NOT_MATCHES_REGEX `{$SERVICE.STARTUPNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Services |State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) |<p>-</p> |ZABBIX_PASSIVE |service.info["{#SERVICE.NAME}",state] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) |<p>The service has a state other than "Running" for the last three times.</p> |`min(/Windows services by Zabbix agent/service.info["{#SERVICE.NAME}",state],#3)<>0` |AVERAGE | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Windows by Zabbix agent
## Overview
diff --git a/templates/os/windows_agent/template_os_windows_agent.yaml b/templates/os/windows_agent/template_os_windows_agent.yaml
index 7603d32bd55..ed4836ecdbd 100644
--- a/templates/os/windows_agent/template_os_windows_agent.yaml
+++ b/templates/os/windows_agent/template_os_windows_agent.yaml
@@ -1,11 +1,8 @@
zabbix_export:
version: '6.0'
- date: '2022-01-26T10:41:09Z'
+ date: '2022-02-04T09:16:58Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 846977d1dfed4968bc5f8bdb363285bc
name: 'Templates/Operating systems'
templates:
@@ -2012,1799 +2009,6 @@ zabbix_export:
-
value: '1'
newvalue: Up
- -
- uuid: e358504d59404f688e236444dd82d2c3
- template: 'Windows CPU by Zabbix agent'
- name: 'Windows CPU by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 8362346c013546f39f8140061f7b3f01
- name: 'CPU DPC time'
- key: 'perf_counter_en["\Processor Information(_total)\% DPC Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure
- calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a
- component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is
- sustained, there may be a processor bottleneck or an application or hardware related issue that can
- significantly diminish overall system performance.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 609619e2b6364d9e90bef828610b23f8
- name: 'CPU interrupt time'
- key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
- hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
- devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
- lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
- hardware failure. This should never be higher than 20%.
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 3f6cca07bc6c48f0b21fee3aeb89bf6b
- expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
- name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
- priority: WARNING
- description: |
- "The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."
- The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
- hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
- devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
- lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
- hardware failure. This should never be higher than 20%.
- dependencies:
- -
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: eb5144d1e3cb4417ae0abcdeca10e0ed
- name: 'CPU privileged time'
- key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent
- executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt
- Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode
- functions of the Windows® Operating System.
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 999464a5a73540d3b7b7cd86efa5488e
- expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}'
- name: 'CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m)'
- priority: WARNING
- description: 'The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.'
- dependencies:
- -
- name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
- -
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 5611c125bf01479fadc2e59db073cc9c
- name: 'CPU user time'
- key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing
- in User mode.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 8ee61e8919984a3d9a7125fd4fe7c397
- name: 'Context switches per second'
- key: 'perf_counter_en["\System\Context Switches/sec"]'
- history: 7d
- value_type: FLOAT
- description: |
- Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.
- 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.
- 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.
- 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.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 1a2b85fb8355459e9c5c723164d09d41
- name: 'CPU queue length'
- key: 'perf_counter_en["\System\Processor Queue Length"]'
- history: 7d
- value_type: FLOAT
- description: |
- The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue
- and are waiting to be executed.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 177e472955434cb19dadb06c0f34eb31
- name: 'CPU utilization'
- key: system.cpu.util
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'CPU utilization in %'
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: afd1711dca1542a5bec9091cbae2bcf0
- expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: d6b17d211ed746aaabac591a3dad5813
- name: 'Number of cores'
- key: 'wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]'
- history: 7d
- description: 'The number of logical processors available on the computer.'
- tags:
- -
- tag: component
- value: cpu
- macros:
- -
- macro: '{$CPU.INTERRUPT.CRIT.MAX}'
- value: '50'
- description: 'The critical threshold of the % Interrupt Time counter.'
- -
- macro: '{$CPU.PRIV.CRIT.MAX}'
- value: '30'
- description: 'The threshold of the % Privileged Time counter.'
- -
- macro: '{$CPU.QUEUE.CRIT.MAX}'
- value: '3'
- description: 'The threshold of the Processor Queue Length counter.'
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- description: 'The critical threshold of the CPU utilization in %.'
- -
- uuid: cb28abff977b4b6eb34665ff2218163b
- template: 'Windows filesystems by Zabbix agent'
- name: 'Windows filesystems by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: f603eb3367ad4326a1f1ec7b9c14c07a
- name: 'Mounted filesystem discovery'
- key: vfs.fs.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.MATCHES}'
- formulaid: E
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: F
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.MATCHES}'
- formulaid: C
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#FSDRIVETYPE}'
- value: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
- formulaid: A
- -
- macro: '{#FSDRIVETYPE}'
- value: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of file systems of different types.'
- item_prototypes:
- -
- uuid: 84c999eefbdd43319d0b992aff43f3c5
- name: '{#FSLABEL}({#FSNAME}): Space utilization'
- key: 'vfs.fs.size[{#FSNAME},pused]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Space utilization in % for {#FSNAME}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: a1661dae47c640be9cfa9e807e125ff3
- name: '{#FSLABEL}({#FSNAME}): Total space'
- key: 'vfs.fs.size[{#FSNAME},total]'
- history: 7d
- units: B
- description: 'Total space in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: ed0c1057b2704ab098847ae62fec9064
- name: '{#FSLABEL}({#FSNAME}): Used space'
- key: 'vfs.fs.size[{#FSNAME},used]'
- history: 7d
- units: B
- description: 'Used storage in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- 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)
- 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})'
- priority: AVERAGE
- 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 will be full in less than 24 hours.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: capacity
- -
- 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)
- name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- dependencies:
- -
- name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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)
- tags:
- -
- tag: scope
- value: capacity
- graph_prototypes:
- -
- uuid: 78d604a4bde244c38bcfbabd7ef5e09d
- name: '{#FSLABEL}({#FSNAME}): Disk space usage'
- width: '600'
- height: '340'
- type: PIE
- show_3d: 'YES'
- graph_items:
- -
- color: '969696'
- calc_fnc: LAST
- type: GRAPH_SUM
- item:
- host: 'Windows filesystems by Zabbix agent'
- key: 'vfs.fs.size[{#FSNAME},total]'
- -
- sortorder: '1'
- color: C80000
- calc_fnc: LAST
- item:
- host: 'Windows filesystems by Zabbix agent'
- key: 'vfs.fs.size[{#FSNAME},used]'
- macros:
- -
- 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.'
- -
- macro: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSNAME.MATCHES}'
- value: '.*'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- value: '^(?:/dev|/sys|/run|/proc|.+/shm$)'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSTYPE.MATCHES}'
- value: '.*'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.PUSED.MAX.CRIT}'
- value: '90'
- description: 'The critical threshold of the filesystem utilization in percent.'
- -
- macro: '{$VFS.FS.PUSED.MAX.WARN}'
- value: '80'
- description: 'The warning threshold of the filesystem utilization in percent.'
- -
- uuid: 95c4026f8ade4fa7b72f8140fc152aea
- template: 'Windows generic by Zabbix agent'
- name: 'Windows generic by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 1245fca060fb424897387d56d29fe030
- name: 'Number of threads'
- key: 'perf_counter_en["\System\Threads"]'
- history: 7d
- description: 'The number of threads used by all running processes.'
- tags:
- -
- tag: component
- value: os
- -
- uuid: 8401ea3152ea45269eeb6cc7fa70f1aa
- name: 'Number of processes'
- key: 'proc.num[]'
- history: 7d
- description: 'The number of processes.'
- tags:
- -
- tag: component
- value: os
- -
- uuid: 78ae4dbd2d894819a36a7d3d00f2e508
- name: 'System name'
- key: system.hostname
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'System host name.'
- inventory_link: NAME
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 13c5f9c0f7f645cc9dde522ff20a1860
- expression: 'last(/Windows generic by Zabbix agent/system.hostname,#1)<>last(/Windows generic by Zabbix agent/system.hostname,#2) and length(last(/Windows generic by Zabbix agent/system.hostname))>0'
- name: 'System name has changed (new name: {ITEM.VALUE})'
- priority: INFO
- description: 'System name has changed. Ack to close.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 25454c401bea41a4b3c49da3165f3d3d
- name: 'System local time'
- key: system.localtime
- history: 7d
- units: unixtime
- description: 'System local time of the host.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 3144a1b15227479e9ea4ce858faea74b
- expression: 'fuzzytime(/Windows generic by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
- name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
- priority: WARNING
- description: 'The host system time is different from the Zabbix server time.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 5ed680dff3154af58e7adc0571a6ee9d
- name: 'Operating system architecture'
- key: system.sw.arch
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'Operating system architecture of the host.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- -
- uuid: 76ef3297b4b740bfaf891e039f7d4dff
- name: 'System description'
- key: system.uname
- delay: 15m
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'System description of the host.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- -
- uuid: 24411175d64f48a195ee4a2323d8e799
- name: Uptime
- key: system.uptime
- delay: 30s
- history: 2w
- trends: 0d
- units: uptime
- description: 'System uptime in ''N days, hh:mm:ss'' format.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: d24a0366e99c4e31815bbbaa3af71ac6
- expression: 'last(/Windows generic by Zabbix agent/system.uptime)<10m'
- name: 'Host has been restarted (uptime < 10m)'
- priority: WARNING
- description: 'The device uptime is less than 10 minutes.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- macros:
- -
- macro: '{$SYSTEM.FUZZYTIME.MAX}'
- value: '60'
- description: 'The threshold for difference of system time in seconds.'
- -
- uuid: 539b4b98f6fb4e12bbdf3bcdb85df2d1
- template: 'Windows memory by Zabbix agent'
- name: 'Windows memory by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: dbbd157ca9464e858bcfbf9a88cac775
- name: 'Cache bytes'
- key: 'perf_counter_en["\Memory\Cache Bytes"]'
- history: 7d
- units: B
- description: |
- Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,
- Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays
- the last observed value only; it is not an average.
- tags:
- -
- tag: component
- value: memory
- -
- uuid: bea4109baa6e425eaa7b8cb3bbb1c01a
- name: 'Free system page table entries'
- key: 'perf_counter_en["\Memory\Free System Page Table Entries"]'
- history: 7d
- description: |
- This indicates the number of page table entries not currently in use by the system. If the number is less
- than 5,000, there may well be a memory leak or you running out of memory.
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 5055a8fdc127479cbe97fdfd849831ea
- expression: 'max(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}'
- name: 'Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m)'
- priority: WARNING
- description: 'The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- tags:
- -
- tag: scope
- value: capacity
- -
- uuid: c54782d0e8384d9cba8fe79af050e7ac
- name: 'Memory page faults per second'
- key: 'perf_counter_en["\Memory\Page Faults/sec"]'
- history: 7d
- value_type: FLOAT
- description: |
- Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages
- faulted per second because only one page is faulted in each fault operation, hence this is also equal
- to the number of page fault operations. This counter includes both hard faults (those that require
- disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most
- processors can handle large numbers of soft faults without significant consequence. However, hard faults,
- which require disk access, can cause significant delays.
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 1ce3e64002424f29b73a5159152ae529
- name: 'Memory pages per second'
- key: 'perf_counter_en["\Memory\Pages/sec"]'
- history: 7d
- value_type: FLOAT
- description: |
- This measures the rate at which pages are read from or written to disk to resolve hard page faults.
- If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 045574e4dd814b7e97d292b134f0a755
- expression: 'min(/Windows memory by Zabbix agent/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}'
- name: 'The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m)'
- priority: WARNING
- description: 'The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- tags:
- -
- tag: scope
- value: capacity
- -
- uuid: b4ae2ff5830b47f882744f5fbcfcca05
- name: 'Memory pool non-paged'
- key: 'perf_counter_en["\Memory\Pool Nonpaged Bytes"]'
- history: 7d
- units: B
- description: |
- This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects
- that cannot be written to disk but instead must remain in physical memory as long as they are allocated.
- There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).
- A typical Event ID 2019 is recorded in the system event log.
- tags:
- -
- tag: component
- value: memory
- -
- uuid: d24566c5c0fc4c219f521a1d4ae18546
- name: 'Used swap space in %'
- key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The used space of swap volume/file in percent.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 3b8acdfa9b744fb595590daa370b16a9
- name: 'Free swap space'
- type: CALCULATED
- key: system.swap.free
- history: 7d
- units: B
- params: 'last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])'
- description: 'The free space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 88eb59f25fde40a49f3b35f576fab29d
- name: 'Free swap space in %'
- type: DEPENDENT
- key: system.swap.pfree
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The free space of swap volume/file in percent.'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100 - value)'
- master_item:
- key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 711aae9de25e43728bfc9c26f06c800a
- name: 'Total swap space'
- key: 'system.swap.size[,total]'
- history: 7d
- units: B
- description: 'The total space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 35f397ade625477eba0b557a58113761
- name: 'Total memory'
- key: 'vm.memory.size[total]'
- history: 7d
- units: B
- description: 'Total memory in Bytes'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 69f61ded5de04623be01a77e160a41e6
- name: 'Used memory'
- key: 'vm.memory.size[used]'
- history: 7d
- units: B
- description: 'Used memory in Bytes'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 97295c0987bd44f1af578a2e37f469f4
- name: 'Memory utilization'
- type: CALCULATED
- key: vm.memory.util
- history: 7d
- value_type: FLOAT
- units: '%'
- params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
- description: 'Memory utilization in %'
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 2766be7a10d444be9893dcdfab75f3be
- expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$MEM.PAGE_SEC.CRIT.MAX}'
- value: '1000'
- description: 'The warning threshold of the Memory Pages/sec counter.'
- -
- macro: '{$MEM.PAGE_TABLE_CRIT.MIN}'
- value: '5000'
- description: 'The warning threshold of the Free System Page Table Entries counter.'
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- description: 'The warning threshold of the Memory util item.'
- -
- macro: '{$SWAP.PFREE.MIN.WARN}'
- value: '20'
- description: 'The warning threshold of the minimum free swap.'
- -
- uuid: 6ad6a4d1e677461ca6d1d5b2dcaba6d2
- template: 'Windows network by Zabbix agent'
- name: 'Windows network by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 52d75ac9adc347959053860a7e0ac199
- name: 'Network interfaces WMI get'
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- history: '0'
- trends: '0'
- value_type: TEXT
- description: 'Raw data of win32_networkadapter.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: raw
- discovery_rules:
- -
- uuid: e4ea554f9a1c4d3db0233c8babdf9bc1
- name: 'Network interfaces discovery'
- type: DEPENDENT
- key: net.if.discovery
- delay: '0'
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.MATCHES}'
- formulaid: E
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: F
- -
- macro: '{#IFDESCR}'
- value: '{$NET.IF.IFDESCR.MATCHES}'
- formulaid: C
- -
- macro: '{#IFDESCR}'
- value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#IFALIAS}'
- value: '{$NET.IF.IFALIAS.MATCHES}'
- formulaid: A
- -
- macro: '{#IFALIAS}'
- value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of installed network interfaces.'
- item_prototypes:
- -
- uuid: 9e9fdb17beee45ef9bc0eac67c512da4
- name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
- key: 'net.if.in["{#IFGUID}",dropped]'
- delay: 3m
- history: 7d
- description: 'The number of incoming packets dropped on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 29d94ac228794aa9a89a4147014c35d1
- name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
- key: 'net.if.in["{#IFGUID}",errors]'
- delay: 3m
- history: 7d
- description: 'The number of incoming packets with errors on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 18cb6d1cde06482a8adb10e78576b512
- name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
- key: 'net.if.in["{#IFGUID}"]'
- delay: 3m
- history: 7d
- units: bps
- description: 'Incoming traffic on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: e3065d25674045938470ce2e10fbd6c0
- name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
- key: 'net.if.out["{#IFGUID}",dropped]'
- delay: 3m
- history: 7d
- description: 'The number of outgoing packets dropped on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: b3472a08272143bead7b9dc366b4992f
- name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
- key: 'net.if.out["{#IFGUID}",errors]'
- delay: 3m
- history: 7d
- description: 'The number of outgoing packets with errors on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 2e208f1d9ca949f582f24015350395b6
- name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
- key: 'net.if.out["{#IFGUID}"]'
- delay: 3m
- history: 7d
- units: bps
- description: 'Outgoing traffic on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: db8d1c51fdcc4cffbff0c8974b5233f9
- name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
- type: DEPENDENT
- key: 'net.if.speed["{#IFGUID}"]'
- delay: '0'
- history: 7d
- trends: 0d
- units: bps
- description: 'Estimated bandwidth of the network interface if any.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[?(@.GUID == "{#IFGUID}")].Speed.first()'
- error_handler: CUSTOM_VALUE
- error_handler_params: '0'
- -
- type: JAVASCRIPT
- parameters:
- - 'return (value==''9223372036854775807'' ? 0 : value)'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: efe5e7b10dbe4b5c8f86a60e6611c22f
- name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
- type: DEPENDENT
- key: 'net.if.status["{#IFGUID}"]'
- delay: '0'
- history: 7d
- trends: '0'
- description: 'The operational status of the network interface.'
- valuemap:
- name: 'Win32_NetworkAdapter::NetConnectionStatus'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: 36effba3975c408aba50096464719479
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- This trigger expression works as follows:
- 1. Can be triggered if operations status is down.
- 2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.
- No new trigger will be fired if this interface is down.
- 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).
-
- WARNING: if closed manually - won't fire again on next poll, because of .diff.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- uuid: 9ea1818be4d7423fb7799b9cf1546491
- name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
- type: DEPENDENT
- key: 'net.if.type["{#IFGUID}"]'
- delay: '0'
- history: 7d
- trends: 0d
- description: 'The type of the network interface.'
- valuemap:
- name: 'Win32_NetworkAdapter::AdapterTypeId'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: 81cea5af79844f298849ca5ef6cde4b3
- expression: |
- change(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])<0 and
- last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0 and
- last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2
- name: 'Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
- opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
- priority: INFO
- description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
- recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: capacity
- -
- uuid: c0e8e89730f04d92b26dd5da215894e1
- expression: |
- (avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) or
- avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])) and
- last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])>0
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- avg(/Windows network by Zabbix agent/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"]) and
- avg(/Windows network by Zabbix agent/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent/net.if.speed["{#IFGUID}"])
- name: 'Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
- opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'The network interface utilization is close to its estimated maximum bandwidth.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
- recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 2a59eec0032a41e48e2443507cbd173d
- expression: |
- min(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- or min(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- max(/Windows network by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- and max(/Windows network by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- name: 'Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
- opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"],#2))'
- recovery_expression: 'last(/Windows network by Zabbix agent/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: availability
- graph_prototypes:
- -
- uuid: 08ea837e8c2448018cff873dacd95dcb
- name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Windows network by Zabbix agent'
- key: 'net.if.in["{#IFGUID}"]'
- -
- sortorder: '1'
- drawtype: BOLD_LINE
- color: 2774A4
- item:
- host: 'Windows network by Zabbix agent'
- key: 'net.if.out["{#IFGUID}"]'
- -
- sortorder: '2'
- color: F63100
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent'
- key: 'net.if.out["{#IFGUID}",errors]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent'
- key: 'net.if.in["{#IFGUID}",errors]'
- -
- sortorder: '4'
- color: FC6EA3
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent'
- key: 'net.if.out["{#IFGUID}",dropped]'
- -
- sortorder: '5'
- color: 6C59DC
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent'
- key: 'net.if.in["{#IFGUID}",dropped]'
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- output = JSON.parse(value).map(function(net){
- return {
- "{#IFNAME}": net.Name,
- "{#IFDESCR}": net.Description,
- "{#IFALIAS}": net.NetConnectionID,
- "{#IFGUID}": net.GUID
- }})
- return JSON.stringify({"data": output})
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- macros:
- -
- macro: '{$IF.ERRORS.WARN}'
- value: '2'
- -
- macro: '{$IF.UTIL.MAX}'
- value: '90'
- -
- macro: '{$IFCONTROL}'
- value: '1'
- -
- macro: '{$NET.IF.IFALIAS.MATCHES}'
- value: '.*'
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
- value: CHANGE_THIS
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFDESCR.MATCHES}'
- value: '.*'
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
- value: CHANGE_THIS
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFNAME.MATCHES}'
- value: '.*'
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
- value: Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- dashboards:
- -
- uuid: 9ddc1ce7e9ea4d7dba8e282366084f3b
- name: 'Network interfaces'
- pages:
- -
- widgets:
- -
- type: GRAPH_PROTOTYPE
- width: '24'
- height: '5'
- fields:
- -
- type: INTEGER
- name: source_type
- value: '2'
- -
- type: INTEGER
- name: columns
- value: '1'
- -
- type: INTEGER
- name: rows
- value: '1'
- -
- type: GRAPH_PROTOTYPE
- name: graphid
- value:
- name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
- host: 'Windows network by Zabbix agent'
- valuemaps:
- -
- uuid: dd37c51d4ded48ceb449fa633dd707e2
- name: 'Win32_NetworkAdapter::AdapterTypeId'
- mappings:
- -
- value: '0'
- newvalue: 'Ethernet 802.3'
- -
- value: '1'
- newvalue: 'Token Ring 802.5'
- -
- value: '2'
- newvalue: 'Fiber Distributed Data Interface (FDDI)'
- -
- value: '3'
- newvalue: 'Wide Area Network (WAN)'
- -
- value: '4'
- newvalue: LocalTalk
- -
- value: '5'
- newvalue: 'Ethernet using DIX header format'
- -
- value: '6'
- newvalue: ARCNET
- -
- value: '7'
- newvalue: 'ARCNET (878.2)'
- -
- value: '8'
- newvalue: ATM
- -
- value: '9'
- newvalue: Wireless
- -
- value: '10'
- newvalue: 'Infrared Wireless'
- -
- value: '11'
- newvalue: Bpc
- -
- value: '12'
- newvalue: CoWan
- -
- value: '13'
- newvalue: '1394'
- -
- uuid: 3265d77e34ba44f688b7aaceeeccda6b
- name: 'Win32_NetworkAdapter::NetConnectionStatus'
- mappings:
- -
- value: '0'
- newvalue: Disconnected
- -
- value: '1'
- newvalue: Connecting
- -
- value: '2'
- newvalue: Connected
- -
- value: '3'
- newvalue: Disconnecting
- -
- value: '4'
- newvalue: 'Hardware Not Present'
- -
- value: '5'
- newvalue: 'Hardware Disabled'
- -
- value: '6'
- newvalue: 'Hardware Malfunction'
- -
- value: '7'
- newvalue: 'Media Disconnected'
- -
- value: '8'
- newvalue: Authenticating
- -
- value: '9'
- newvalue: 'Authentication Succeeded'
- -
- value: '10'
- newvalue: 'Authentication Failed'
- -
- value: '11'
- newvalue: 'Invalid Address'
- -
- value: '12'
- newvalue: 'Credentials Required'
- -
- uuid: 4026647be95a47de98b0f09dc36ce72f
- template: 'Windows physical disks by Zabbix agent'
- name: 'Windows physical disks by Zabbix agent'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: d03f20ec394e4725a5dfdceecb79c8bd
- name: 'Physical disks discovery'
- key: 'perf_instance_en.discovery[PhysicalDisk]'
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of installed physical disks.'
- item_prototypes:
- -
- uuid: 44d9353d47274309bb3edaa34b7b3470
- name: '{#DEVNAME}: Disk utilization by idle time'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100 - value)'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- trigger_prototypes:
- -
- uuid: c194f813f0c5417aaac56875b955637a
- expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}'
- name: '{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m)'
- priority: WARNING
- description: 'The disk appears to be under heavy load'
- manual_close: 'YES'
- dependencies:
- -
- name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
- expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
- -
- name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
- expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 8122d6fd46a54d5f8b23c4b21a333959
- name: '{#DEVNAME}: Average disk read queue length'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
- history: 7d
- value_type: FLOAT
- description: 'Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: f6896b69665d4a9bb160b23a322919d4
- name: '{#DEVNAME}: Disk read request avg waiting time'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
- history: 7d
- value_type: FLOAT
- units: s
- description: 'The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- trigger_prototypes:
- -
- uuid: d96338f9104a4eb4bc7725a5736c96d0
- expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
- name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
- priority: WARNING
- description: 'This trigger might indicate disk {#DEVNAME} saturation.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 704680610f6a42dc9373db929a3d0d53
- name: '{#DEVNAME}: Disk write request avg waiting time'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
- history: 7d
- value_type: FLOAT
- units: s
- description: 'The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- trigger_prototypes:
- -
- uuid: 205acd9a37424bd78618ebdc197f251f
- expression: 'min(/Windows physical disks by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
- name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
- priority: WARNING
- description: 'This trigger might indicate disk {#DEVNAME} saturation.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 9f5d1cdb629847ad97e0fa0804883e91
- name: '{#DEVNAME}: Average disk write queue length'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
- history: 7d
- value_type: FLOAT
- description: 'Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 3565ad70600d4c8aa5ebbbebd3f67270
- name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
- history: 7d
- value_type: FLOAT
- description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 3485202f1e6b42ce8099ce6d6347a994
- name: '{#DEVNAME}: Disk read rate'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
- history: 7d
- value_type: FLOAT
- units: '!r/s'
- description: 'Rate of read operations on the disk.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 66e312629db1460c8b215d34d29f7418
- name: '{#DEVNAME}: Disk write rate'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
- history: 7d
- value_type: FLOAT
- units: '!w/s'
- description: 'Rate of write operations on the disk.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- graph_prototypes:
- -
- uuid: 5fcd9dc53cd34e4981bf5e48a88951a0
- name: '{#DEVNAME}: Disk average queue length'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
- -
- uuid: 6561058a9cd748728bb46d8d04a5b74b
- name: '{#DEVNAME}: Disk average waiting time'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
- -
- uuid: 83dee3e21b2f4b3c8c7552f87ebec81c
- name: '{#DEVNAME}: Disk read/write rates'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
- -
- uuid: d3b5ccf4530447c2aee84fb23a6934d0
- name: '{#DEVNAME}: Disk utilization and queue'
- graph_items:
- -
- color: 1A7C11
- yaxisside: RIGHT
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
- preprocessing:
- -
- type: STR_REPLACE
- parameters:
- - '{#INSTANCE}'
- - '{#DEVNAME}'
- macros:
- -
- macro: '{$VFS.DEV.DEVNAME.MATCHES}'
- value: '.*'
- description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- value: _Total
- description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.DEV.READ.AWAIT.WARN}'
- value: '0.02'
- description: 'Disk read average response time (in s) before the trigger would fire.'
- -
- macro: '{$VFS.DEV.UTIL.MAX.WARN}'
- value: '95'
- description: 'The warning threshold of disk time utilization in percent.'
- -
- macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
- value: '0.02'
- description: 'Disk write average response time (in s) before the trigger would fire.'
- -
- uuid: dfd6f32510a840c29f9cb4b974977770
- template: 'Windows services by Zabbix agent'
- name: 'Windows services by Zabbix agent'
- description: |
- Template Services OS Windows
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: d4fb5efff5494013b452e5a47ac265f5
- name: 'Windows services discovery'
- key: service.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#SERVICE.NAME}'
- value: '{$SERVICE.NAME.MATCHES}'
- formulaid: A
- -
- macro: '{#SERVICE.NAME}'
- value: '{$SERVICE.NAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- -
- macro: '{#SERVICE.STARTUPNAME}'
- value: '{$SERVICE.STARTUPNAME.MATCHES}'
- formulaid: C
- -
- macro: '{#SERVICE.STARTUPNAME}'
- value: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- description: 'Discovery of Windows services of different types as defined in template''s macros.'
- item_prototypes:
- -
- uuid: 934d8e7f237d42739e880803f02f0da9
- name: 'State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME})'
- key: 'service.info["{#SERVICE.NAME}",state]'
- history: 7d
- valuemap:
- name: 'Windows service state'
- tags:
- -
- tag: component
- value: system
- -
- tag: name
- value: '{#SERVICE.DISPLAYNAME}'
- -
- tag: service
- value: '{#SERVICE.NAME}'
- trigger_prototypes:
- -
- uuid: 9fab20eab61d48c09682fe5c142cc917
- expression: 'min(/Windows services by Zabbix agent/service.info["{#SERVICE.NAME}",state],#3)<>0'
- name: '"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME})'
- priority: AVERAGE
- description: 'The service has a state other than "Running" for the last three times.'
- tags:
- -
- tag: scope
- value: notice
- macros:
- -
- macro: '{$SERVICE.NAME.MATCHES}'
- value: '^.*$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$SERVICE.NAME.NOT_MATCHES}'
- value: '^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$SERVICE.STARTUPNAME.MATCHES}'
- value: '^(?:automatic|automatic delayed)$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
- value: '^(?:manual|disabled)$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- valuemaps:
- -
- uuid: 5d9a045df1df48daaa6752bd75f1681d
- name: 'Windows service state'
- mappings:
- -
- value: '0'
- newvalue: Running
- -
- value: '1'
- newvalue: Paused
- -
- value: '2'
- newvalue: 'Start pending'
- -
- value: '3'
- newvalue: 'Pause pending'
- -
- value: '4'
- newvalue: 'Continue pending'
- -
- value: '5'
- newvalue: 'Stop pending'
- -
- value: '6'
- newvalue: Stopped
- -
- value: '7'
- newvalue: Unknown
- -
- value: '255'
- newvalue: 'No such service'
triggers:
-
uuid: 8b1baeb26e154f99aefeaba3ea4fa63b
@@ -3821,20 +2025,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: cc301d844a7b42e79756d1bc74adf307
- expression: 'min(/Windows CPU by Zabbix agent/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}'
- name: 'CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m)'
- priority: WARNING
- description: 'The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.'
- dependencies:
- -
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- tags:
- -
- tag: scope
- value: performance
- -
uuid: 7c23e03060ce42b094aac2f8aea1a9ad
expression: 'min(/Windows by Zabbix agent/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows by Zabbix agent/system.swap.size[,total])>0'
name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
@@ -3849,21 +2039,6 @@ zabbix_export:
-
tag: scope
value: performance
- -
- uuid: b2a97432e79e4a999324d3fde7dacdeb
- expression: 'min(/Windows memory by Zabbix agent/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent/system.swap.size[,total])>0'
- 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'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Windows memory by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- tags:
- -
- tag: scope
- value: performance
graphs:
-
uuid: 02ec085b49614b30a45287a7e88a8da1
@@ -3881,21 +2056,6 @@ zabbix_export:
host: 'Windows by Zabbix agent'
key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
-
- uuid: e3029427b9124e30a9aa06000219f572
- name: 'CPU jumps'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows CPU by Zabbix agent'
- key: 'perf_counter_en["\System\Context Switches/sec"]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows CPU by Zabbix agent'
- key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
- -
uuid: 0c2db401fe574282ab0beb6955049330
name: 'CPU usage'
type: STACKED
@@ -3914,24 +2074,6 @@ zabbix_export:
host: 'Windows by Zabbix agent'
key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
-
- uuid: 0b520e68348e4c17983672c5ca4dffb1
- name: 'CPU usage'
- type: STACKED
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows CPU by Zabbix agent'
- key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows CPU by Zabbix agent'
- key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
- -
uuid: 5de711b16f3845659289483f6deb4761
name: 'CPU utilization'
ymin_type_1: FIXED
@@ -3944,18 +2086,6 @@ zabbix_export:
host: 'Windows by Zabbix agent'
key: system.cpu.util
-
- uuid: d7543150b21e4678a29ca1072c8660df
- name: 'CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Windows CPU by Zabbix agent'
- key: system.cpu.util
- -
uuid: 1b86c8f6fe3343e6838c5d02f4f64b2b
name: 'Memory utilization'
ymin_type_1: FIXED
@@ -3968,18 +2098,6 @@ zabbix_export:
host: 'Windows by Zabbix agent'
key: vm.memory.util
-
- uuid: 61a375b6875641bf93145be801809ece
- name: 'Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Windows memory by Zabbix agent'
- key: vm.memory.util
- -
uuid: 518f6bcdcefc4cf493244798ccd09ec1
name: 'Swap usage'
graph_items:
@@ -3994,18 +2112,3 @@ zabbix_export:
item:
host: 'Windows by Zabbix agent'
key: 'system.swap.size[,total]'
- -
- uuid: 8891c435d3df489ea18847abb82054ca
- name: 'Swap usage'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows memory by Zabbix agent'
- key: system.swap.free
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows memory by Zabbix agent'
- key: 'system.swap.size[,total]'
diff --git a/templates/os/windows_agent_active/README.md b/templates/os/windows_agent_active/README.md
index e1027a94737..e093fd75f4a 100644
--- a/templates/os/windows_agent_active/README.md
+++ b/templates/os/windows_agent_active/README.md
@@ -1,402 +1,4 @@
-# Windows CPU by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.INTERRUPT.CRIT.MAX} |<p>The critical threshold of the % Interrupt Time counter.</p> |`50` |
-|{$CPU.PRIV.CRIT.MAX} |<p>The threshold of the % Privileged Time counter.</p> |`30` |
-|{$CPU.QUEUE.CRIT.MAX} |<p>The threshold of the Processor Queue Length counter.</p> |`3` |
-|{$CPU.UTIL.CRIT} |<p>The critical threshold of the CPU utilization in %.</p> |`90` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|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"] |
-|CPU |CPU DPC time |<p>Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure</p><p>calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a</p><p>component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is</p><p>sustained, there may be a processor bottleneck or an application or hardware related issue that can</p><p>significantly diminish overall system performance.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% DPC Time"] |
-|CPU |CPU user time |<p>The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing</p><p>in User mode.</p> |ZABBIX_ACTIVE |perf_counter_en["\Processor Information(_total)\% User Time"] |
-|CPU |Number of cores |<p>The number of logical processors available on the computer.</p> |ZABBIX_ACTIVE |wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] |
-|CPU |CPU queue length |<p>The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue</p><p>and are waiting to be executed.</p> |ZABBIX_ACTIVE |perf_counter_en["\System\Processor Queue Length"] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}` |WARNING | |
-|CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m) |<p>"The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."</p><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> |`min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-|CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m) |<p>The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.</p> |`min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-|CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m) |<p>The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.</p> |`min(/Windows CPU by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows memory by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$MEM.PAGE_SEC.CRIT.MAX} |<p>The warning threshold of the Memory Pages/sec counter.</p> |`1000` |
-|{$MEM.PAGE_TABLE_CRIT.MIN} |<p>The warning threshold of the Free System Page Table Entries counter.</p> |`5000` |
-|{$MEMORY.UTIL.MAX} |<p>The warning threshold of the Memory util item.</p> |`90` |
-|{$SWAP.PFREE.MIN.WARN} |<p>The warning threshold of the minimum free swap.</p> |`20` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|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 |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> |
-|Memory |Used swap space in % |<p>The used space of swap volume/file in percent.</p> |ZABBIX_ACTIVE |perf_counter_en["\Paging file(_Total)\% Usage"] |
-|Memory |Total swap space |<p>The total space of swap volume/file in bytes.</p> |ZABBIX_ACTIVE |system.swap.size[,total] |
-|Memory |Free system page table entries |<p>This indicates the number of page table entries not currently in use by the system. If the number is less</p><p>than 5,000, there may well be a memory leak or you running out of memory.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Free System Page Table Entries"] |
-|Memory |Memory page faults per second |<p>Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages</p><p>faulted per second because only one page is faulted in each fault operation, hence this is also equal</p><p>to the number of page fault operations. This counter includes both hard faults (those that require</p><p>disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most</p><p>processors can handle large numbers of soft faults without significant consequence. However, hard faults,</p><p>which require disk access, can cause significant delays.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Page Faults/sec"] |
-|Memory |Memory pages per second |<p>This measures the rate at which pages are read from or written to disk to resolve hard page faults.</p><p>If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Pages/sec"] |
-|Memory |Memory pool non-paged |<p>This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects</p><p>that cannot be written to disk but instead must remain in physical memory as long as they are allocated.</p><p>There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).</p><p>A typical Event ID 2019 is recorded in the system event log.</p> |ZABBIX_ACTIVE |perf_counter_en["\Memory\Pool Nonpaged Bytes"] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
-|High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free) |<p>This trigger is ignored, if there is no swap configured</p> |`min(/Windows memory by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent active/system.swap.size[,total])>0` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
-|Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m) |<p>The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.</p> |`max(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
-|The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m) |<p>The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.</p> |`min(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows filesystems by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$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> |`.*` |
-|{$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> |`.*` |
-|{$VFS.FS.FSTYPE.NOT_MATCHES} |<p>This macro is used in filesystems discovery. Can be overridden on the host or linked template level.</p> |`^\s$` |
-|{$VFS.FS.PUSED.MAX.CRIT} |<p>The critical threshold of the filesystem utilization in percent.</p> |`90` |
-|{$VFS.FS.PUSED.MAX.WARN} |<p>The warning threshold of the filesystem utilization in percent.</p> |`80` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Mounted filesystem discovery |<p>Discovery of file systems of different types.</p> |ZABBIX_ACTIVE |vfs.fs.discovery<p>**Filter**:</p>AND <p>- {#FSTYPE} MATCHES_REGEX `{$VFS.FS.FSTYPE.MATCHES}`</p><p>- {#FSTYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSTYPE.NOT_MATCHES}`</p><p>- {#FSNAME} MATCHES_REGEX `{$VFS.FS.FSNAME.MATCHES}`</p><p>- {#FSNAME} NOT_MATCHES_REGEX `{$VFS.FS.FSNAME.NOT_MATCHES}`</p><p>- {#FSDRIVETYPE} MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.MATCHES}`</p><p>- {#FSDRIVETYPE} NOT_MATCHES_REGEX `{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Filesystems |{#FSLABEL}({#FSNAME}): Used space |<p>Used storage in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},used] |
-|Filesystems |{#FSLABEL}({#FSNAME}): Total space |<p>Total space in Bytes</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},total] |
-|Filesystems |{#FSLABEL}({#FSNAME}): Space utilization |<p>Space utilization in % for {#FSNAME}</p> |ZABBIX_ACTIVE |vfs.fs.size[{#FSNAME},pused] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
-|{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows physical disks by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$VFS.DEV.DEVNAME.MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$VFS.DEV.DEVNAME.NOT_MATCHES} |<p>This macro is used in physical disks discovery. Can be overridden on the host or linked template level.</p> |`_Total` |
-|{$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` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Physical disks discovery |<p>Discovery of installed physical disks.</p> |ZABBIX_ACTIVE |perf_instance_en.discovery[PhysicalDisk]<p>**Preprocessing**:</p><p>- STR_REPLACE: `{#INSTANCE} {#DEVNAME}`</p><p>**Filter**:</p>AND <p>- {#DEVNAME} MATCHES_REGEX `{$VFS.DEV.DEVNAME.MATCHES}`</p><p>- {#DEVNAME} NOT_MATCHES_REGEX `{$VFS.DEV.DEVNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Storage |{#DEVNAME}: Disk read rate |<p>Rate of read operations on the disk.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] |
-|Storage |{#DEVNAME}: Disk write rate |<p>Rate of write operations on the disk.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] |
-|Storage |{#DEVNAME}: Disk average queue size (avgqu-sz) |<p>Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] |
-|Storage |{#DEVNAME}: Disk utilization by idle time |<p>This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `return (100 - value)`</p> |
-|Storage |{#DEVNAME}: Disk read request avg waiting time |<p>The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] |
-|Storage |{#DEVNAME}: Disk write request avg waiting time |<p>The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] |
-|Storage |{#DEVNAME}: Average disk read queue length |<p>Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] |
-|Storage |{#DEVNAME}: Average disk write queue length |<p>Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.</p> |ZABBIX_ACTIVE |perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m) |<p>The disk appears to be under heavy load</p> |`min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m</p><p>- {#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)</p> |
-|{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
-|{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m) |<p>This trigger might indicate disk {#DEVNAME} saturation.</p> |`min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows generic by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$SYSTEM.FUZZYTIME.MAX} |<p>The threshold for difference of system time in seconds.</p> |`60` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|General |System local time |<p>System local time of the host.</p> |ZABBIX_ACTIVE |system.localtime |
-|General |System name |<p>System host name.</p> |ZABBIX_ACTIVE |system.hostname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|General |System description |<p>System description of the host.</p> |ZABBIX_ACTIVE |system.uname<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|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> |
-|Status |Uptime |<p>System uptime in 'N days, hh:mm:ss' format.</p> |ZABBIX_ACTIVE |system.uptime |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Windows generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
-|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Windows generic by Zabbix agent active/system.hostname,#1)<>last(/Windows generic by Zabbix agent active/system.hostname,#2) and length(last(/Windows generic by Zabbix agent active/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
-|Host has been restarted (uptime < 10m) |<p>The device uptime is less than 10 minutes.</p> |`last(/Windows generic by Zabbix agent active/system.uptime)<10m` |WARNING |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows network by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$IF.ERRORS.WARN} |<p>-</p> |`2` |
-|{$IF.UTIL.MAX} |<p>-</p> |`90` |
-|{$IFCONTROL} |<p>-</p> |`1` |
-|{$NET.IF.IFALIAS.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$NET.IF.IFALIAS.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
-|{$NET.IF.IFDESCR.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$NET.IF.IFDESCR.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`CHANGE_THIS` |
-|{$NET.IF.IFNAME.MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`.*` |
-|{$NET.IF.IFNAME.NOT_MATCHES} |<p>This macro is used in Network interface discovery. Can be overridden on the host or linked template level.</p> |`Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Network interfaces discovery |<p>Discovery of installed network interfaces.</p> |DEPENDENT |net.if.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p><p>**Filter**:</p>AND <p>- {#IFNAME} MATCHES_REGEX `{$NET.IF.IFNAME.MATCHES}`</p><p>- {#IFNAME} NOT_MATCHES_REGEX `{$NET.IF.IFNAME.NOT_MATCHES}`</p><p>- {#IFDESCR} MATCHES_REGEX `{$NET.IF.IFDESCR.MATCHES}`</p><p>- {#IFDESCR} NOT_MATCHES_REGEX `{$NET.IF.IFDESCR.NOT_MATCHES}`</p><p>- {#IFALIAS} MATCHES_REGEX `{$NET.IF.IFALIAS.MATCHES}`</p><p>- {#IFALIAS} NOT_MATCHES_REGEX `{$NET.IF.IFALIAS.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits received |<p>Incoming traffic on the network interface.</p> |ZABBIX_ACTIVE |net.if.in["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Bits sent |<p>Outgoing traffic on the network interface.</p> |ZABBIX_ACTIVE |net.if.out["{#IFGUID}"]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p><p>- MULTIPLIER: `8`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded |<p>The number of incoming packets dropped on the network interface.</p> |ZABBIX_ACTIVE |net.if.in["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded |<p>The number of outgoing packets dropped on the network interface.</p> |ZABBIX_ACTIVE |net.if.out["{#IFGUID}",dropped]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors |<p>The number of incoming packets with errors on the network interface.</p> |ZABBIX_ACTIVE |net.if.in["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors |<p>The number of outgoing packets with errors on the network interface.</p> |ZABBIX_ACTIVE |net.if.out["{#IFGUID}",errors]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Speed |<p>Estimated bandwidth of the network interface if any.</p> |DEPENDENT |net.if.speed["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].Speed.first()`</p><p>⛔️ON_FAIL: `CUSTOM_VALUE -> 0`</p><p>- JAVASCRIPT: `return (value=='9223372036854775807' ? 0 : value) `</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Interface type |<p>The type of the network interface.</p> |DEPENDENT |net.if.type["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Network interfaces |Interface {#IFNAME}({#IFALIAS}): Operational status |<p>The operational status of the network interface.</p> |DEPENDENT |net.if.status["{#IFGUID}"]<p>**Preprocessing**:</p><p>- JSONPATH: `$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
-|Zabbix raw items |Network interfaces WMI get |<p>Raw data of win32_networkadapter.</p> |ZABBIX_ACTIVE |wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%) |<p>The network interface utilization is close to its estimated maximum bandwidth.</p> |`(avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) or avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])) and last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0`<p>Recovery expression:</p>`avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) and avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
-|Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m) |<p>Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold</p> |`min(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} `<p>Recovery expression:</p>`max(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
-|Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before |<p>This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.</p> |`change(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])<0 and last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 ` |INFO |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Interface {#IFNAME}({#IFALIAS}): Link down</p> |
-|Interface {#IFNAME}({#IFALIAS}): Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.</p><p> No new trigger will be fired if this interface is down.</p><p>3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))`<p>Recovery expression:</p>`last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0` |AVERAGE |<p>Manual close: YES</p> |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Windows services by Zabbix agent active
-
-## Overview
-
-For Zabbix version: 6.0 and higher
-Special version of services template that is required for Windows OS.
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$SERVICE.NAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^.*$` |
-|{$SERVICE.NAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$` |
-|{$SERVICE.STARTUPNAME.MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:automatic|automatic delayed)$` |
-|{$SERVICE.STARTUPNAME.NOT_MATCHES} |<p>This macro is used in Service discovery. Can be overridden on the host or linked template level.</p> |`^(?:manual|disabled)$` |
-
-## Template links
-
-There are no template links in this template.
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Windows services discovery |<p>Discovery of Windows services of different types as defined in template's macros.</p> |ZABBIX_ACTIVE |service.discovery<p>**Filter**:</p>AND <p>- {#SERVICE.NAME} MATCHES_REGEX `{$SERVICE.NAME.MATCHES}`</p><p>- {#SERVICE.NAME} NOT_MATCHES_REGEX `{$SERVICE.NAME.NOT_MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} MATCHES_REGEX `{$SERVICE.STARTUPNAME.MATCHES}`</p><p>- {#SERVICE.STARTUPNAME} NOT_MATCHES_REGEX `{$SERVICE.STARTUPNAME.NOT_MATCHES}`</p> |
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Services |State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) |<p>-</p> |ZABBIX_ACTIVE |service.info["{#SERVICE.NAME}",state] |
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) |<p>The service has a state other than "Running" for the last three times.</p> |`min(/Windows services by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0` |AVERAGE | |
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
# Windows by Zabbix agent active
## Overview
@@ -538,8 +140,8 @@ There are no template links in this template.
|CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m) |<p>"The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."</p><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> |`min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
|CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m) |<p>The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.</p> |`min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
|CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m) |<p>The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.</p> |`min(/Windows by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}` |WARNING |<p>**Depends on**:</p><p>- High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)</p> |
-|{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 5G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
-|{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p> Second condition should be one of the following:</p><p> - The disk free space is less than 10G.</p><p> - The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
+|{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}.</p><p>Second condition should be one of the following:</p><p>- The disk free space is less than 5G.</p><p>- The disk will be full in less than 24 hours.</p> |`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) ` |AVERAGE |<p>Manual close: YES</p> |
+|{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}.</p><p>Second condition should be one of the following:</p><p>- The disk free space is less than 10G.</p><p>- The disk will be full in less than 24 hours.</p> |`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) ` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- {#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)</p> |
|System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s) |<p>The host system time is different from the Zabbix server time.</p> |`fuzzytime(/Windows by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0` |WARNING |<p>Manual close: YES</p> |
|System name has changed (new name: {ITEM.VALUE}) |<p>System name has changed. Ack to close.</p> |`last(/Windows by Zabbix agent active/system.hostname,#1)<>last(/Windows by Zabbix agent active/system.hostname,#2) and length(last(/Windows by Zabbix agent active/system.hostname))>0` |INFO |<p>Manual close: YES</p> |
|High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}` |AVERAGE | |
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 c3342323871..bfe74affe90 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,11 +1,8 @@
zabbix_export:
version: '6.0'
- date: '2022-01-26T10:42:18Z'
+ date: '2022-02-04T09:17:05Z'
groups:
-
- uuid: 57b7ae836ca64446ba2c296389c009b7
- name: Templates/Modules
- -
uuid: 846977d1dfed4968bc5f8bdb363285bc
name: 'Templates/Operating systems'
templates:
@@ -1507,9 +1504,9 @@ zabbix_export:
priority: AVERAGE
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 will be full in less than 24 hours.
+ 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.
manual_close: 'YES'
tags:
-
@@ -1525,9 +1522,9 @@ zabbix_export:
priority: WARNING
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 will be full in less than 24 hours.
+ 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.
manual_close: 'YES'
dependencies:
-
@@ -2048,1845 +2045,6 @@ zabbix_export:
-
value: '1'
newvalue: Up
- -
- uuid: 296cb27ad93b4063b77aaf1a8339d40c
- template: 'Windows CPU by Zabbix agent active'
- name: 'Windows CPU by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 94cedfa2390f4e509456222a69207023
- name: 'CPU DPC time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Processor Information(_total)\% DPC Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure
- calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a
- component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is
- sustained, there may be a processor bottleneck or an application or hardware related issue that can
- significantly diminish overall system performance.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 9c3ee1744a604a41b90dcec49effaff7
- name: 'CPU interrupt time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
- hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
- devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
- lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
- hardware failure. This should never be higher than 20%.
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: cbcd8d6c2eab4f18be5a40c2128e1b76
- expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
- name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
- priority: WARNING
- description: |
- "The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%."
- The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing
- hardware interrupts during sample intervals. This value is an indirect indicator of the activity of
- devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication
- lines, network interface cards and other peripheral devices. This is an easy way to identify a potential
- hardware failure. This should never be higher than 20%.
- dependencies:
- -
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 49073e4ccf964d349945824888ec46b0
- name: 'CPU privileged time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent
- executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt
- Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode
- functions of the Windows® Operating System.
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 150f35f3b43c48eb995a1e8f1211e9b3
- expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}'
- name: 'CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m)'
- priority: WARNING
- description: 'The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.'
- dependencies:
- -
- name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}'
- -
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: bebffbf027bb48feba459e7f344d67f2
- name: 'CPU user time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: |
- The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing
- in User mode.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 8d1d279c74324690a1ee37dbc90a7f88
- name: 'Context switches per second'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\System\Context Switches/sec"]'
- history: 7d
- value_type: FLOAT
- description: |
- Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another.
- 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.
- 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.
- 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.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: b7a1b8f5c4664195921d459a60f09d57
- name: 'CPU queue length'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\System\Processor Queue Length"]'
- history: 7d
- value_type: FLOAT
- description: |
- The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue
- and are waiting to be executed.
- tags:
- -
- tag: component
- value: cpu
- -
- uuid: 6f3c6b7312be445eb54e0851447a879e
- name: 'CPU utilization'
- type: ZABBIX_ACTIVE
- key: system.cpu.util
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'CPU utilization in %'
- tags:
- -
- tag: component
- value: cpu
- triggers:
- -
- uuid: 5f1bdb9eb4c44e8a8f33afee709b0667
- expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- opdata: 'Current utilization: {ITEM.LASTVALUE1}'
- priority: WARNING
- description: 'CPU utilization is too high. The system might be slow to respond.'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: cb071eb5cc82471c83e88b9125c2832a
- name: 'Number of cores'
- type: ZABBIX_ACTIVE
- key: 'wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]'
- history: 7d
- description: 'The number of logical processors available on the computer.'
- tags:
- -
- tag: component
- value: cpu
- macros:
- -
- macro: '{$CPU.INTERRUPT.CRIT.MAX}'
- value: '50'
- description: 'The critical threshold of the % Interrupt Time counter.'
- -
- macro: '{$CPU.PRIV.CRIT.MAX}'
- value: '30'
- description: 'The threshold of the % Privileged Time counter.'
- -
- macro: '{$CPU.QUEUE.CRIT.MAX}'
- value: '3'
- description: 'The threshold of the Processor Queue Length counter.'
- -
- macro: '{$CPU.UTIL.CRIT}'
- value: '90'
- description: 'The critical threshold of the CPU utilization in %.'
- -
- uuid: 1b04ac025fcf474cb97e6c8c95855eeb
- template: 'Windows filesystems by Zabbix agent active'
- name: 'Windows filesystems by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: c6af2bf05ad2458babf0a3533d6c36f3
- name: 'Mounted filesystem discovery'
- type: ZABBIX_ACTIVE
- key: vfs.fs.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.MATCHES}'
- formulaid: E
- -
- macro: '{#FSTYPE}'
- value: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: F
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.MATCHES}'
- formulaid: C
- -
- macro: '{#FSNAME}'
- value: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#FSDRIVETYPE}'
- value: '{$VFS.FS.FSDRIVETYPE.MATCHES}'
- formulaid: A
- -
- macro: '{#FSDRIVETYPE}'
- value: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of file systems of different types.'
- item_prototypes:
- -
- uuid: 6d3c76d7f4644e07a351aacc0c2b0651
- name: '{#FSLABEL}({#FSNAME}): Space utilization'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.size[{#FSNAME},pused]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'Space utilization in % for {#FSNAME}'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: 4ca1e75a143f4b1c9cb1b1e9d0d02286
- name: '{#FSLABEL}({#FSNAME}): Total space'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.size[{#FSNAME},total]'
- history: 7d
- units: B
- description: 'Total space in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- -
- uuid: c221010d5aef4bb182681092d0df3586
- name: '{#FSLABEL}({#FSNAME}): Used space'
- type: ZABBIX_ACTIVE
- key: 'vfs.fs.size[{#FSNAME},used]'
- history: 7d
- units: B
- description: 'Used storage in Bytes'
- tags:
- -
- tag: component
- value: storage
- -
- tag: filesystem
- value: '{#FSNAME}'
- trigger_prototypes:
- -
- 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)
- 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})'
- priority: AVERAGE
- 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 will be full in less than 24 hours.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: capacity
- -
- 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)
- name: '{#FSLABEL}({#FSNAME}): Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%)'
- 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:"{#FSNAME}"}.
- 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.
- manual_close: 'YES'
- dependencies:
- -
- name: '{#FSLABEL}({#FSNAME}): Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%)'
- 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)
- tags:
- -
- tag: scope
- value: capacity
- graph_prototypes:
- -
- uuid: 112006f664834dcf932373b57900425c
- name: '{#FSLABEL}({#FSNAME}): Disk space usage'
- width: '600'
- height: '340'
- type: PIE
- show_3d: 'YES'
- graph_items:
- -
- color: '969696'
- calc_fnc: LAST
- type: GRAPH_SUM
- item:
- host: 'Windows filesystems by Zabbix agent active'
- key: 'vfs.fs.size[{#FSNAME},total]'
- -
- sortorder: '1'
- color: C80000
- calc_fnc: LAST
- item:
- host: 'Windows filesystems by Zabbix agent active'
- key: 'vfs.fs.size[{#FSNAME},used]'
- macros:
- -
- 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.'
- -
- macro: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSNAME.MATCHES}'
- value: '.*'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSNAME.NOT_MATCHES}'
- value: '^(?:/dev|/sys|/run|/proc|.+/shm$)'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSTYPE.MATCHES}'
- value: '.*'
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}'
- value: ^\s$
- description: 'This macro is used in filesystems discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.FS.PUSED.MAX.CRIT}'
- value: '90'
- description: 'The critical threshold of the filesystem utilization in percent.'
- -
- macro: '{$VFS.FS.PUSED.MAX.WARN}'
- value: '80'
- description: 'The warning threshold of the filesystem utilization in percent.'
- -
- uuid: 6dd37a415f4c40aa960d7ba91b6b5143
- template: 'Windows generic by Zabbix agent active'
- name: 'Windows generic by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 09ff6e03432f4db58e5f43697d0333e8
- name: 'Number of threads'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\System\Threads"]'
- history: 7d
- description: 'The number of threads used by all running processes.'
- tags:
- -
- tag: component
- value: os
- -
- uuid: 665093a48f39404e9ae3221657a5e962
- name: 'Number of processes'
- type: ZABBIX_ACTIVE
- key: 'proc.num[]'
- history: 7d
- description: 'The number of processes.'
- tags:
- -
- tag: component
- value: os
- -
- uuid: 73b821a638a74e6d86be642952d2d6fe
- name: 'System name'
- type: ZABBIX_ACTIVE
- key: system.hostname
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'System host name.'
- inventory_link: NAME
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 2f5aa644755c4d18a3eafc74bde2d3ad
- expression: 'last(/Windows generic by Zabbix agent active/system.hostname,#1)<>last(/Windows generic by Zabbix agent active/system.hostname,#2) and length(last(/Windows generic by Zabbix agent active/system.hostname))>0'
- name: 'System name has changed (new name: {ITEM.VALUE})'
- priority: INFO
- description: 'System name has changed. Ack to close.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 78f2089b58f54042ac70fd9ac3b2aa7e
- name: 'System local time'
- type: ZABBIX_ACTIVE
- key: system.localtime
- history: 7d
- units: unixtime
- description: 'System local time of the host.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: ed8075fd5332427ca0f9b56d55f4912b
- expression: 'fuzzytime(/Windows generic by Zabbix agent active/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0'
- name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX}s)'
- priority: WARNING
- description: 'The host system time is different from the Zabbix server time.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- -
- uuid: 0522b89bdee248c5aad6ff77d9a68311
- name: 'Operating system architecture'
- type: ZABBIX_ACTIVE
- key: system.sw.arch
- delay: 1h
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'Operating system architecture of the host.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: os
- -
- uuid: 383c3f59afee455d8981fe85e46c94dd
- name: 'System description'
- type: ZABBIX_ACTIVE
- key: system.uname
- delay: 15m
- history: 2w
- trends: '0'
- value_type: CHAR
- description: 'System description of the host.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- tags:
- -
- tag: component
- value: system
- -
- uuid: e5342587828d40ed8feafdccdd6d92e3
- name: Uptime
- type: ZABBIX_ACTIVE
- key: system.uptime
- delay: 30s
- history: 2w
- trends: 0d
- units: uptime
- description: 'System uptime in ''N days, hh:mm:ss'' format.'
- tags:
- -
- tag: component
- value: system
- triggers:
- -
- uuid: 13f9c722d9664d988a97a1c8123ad17a
- expression: 'last(/Windows generic by Zabbix agent active/system.uptime)<10m'
- name: 'Host has been restarted (uptime < 10m)'
- priority: WARNING
- description: 'The device uptime is less than 10 minutes.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: notice
- macros:
- -
- macro: '{$SYSTEM.FUZZYTIME.MAX}'
- value: '60'
- description: 'The threshold for difference of system time in seconds.'
- -
- uuid: e6535f54a0554463889fb8c65db11250
- template: 'Windows memory by Zabbix agent active'
- name: 'Windows memory by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 50610f9c46a848bdbdc08ed5b9c2a156
- name: 'Cache bytes'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Memory\Cache Bytes"]'
- history: 7d
- units: B
- description: |
- Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes,
- Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays
- the last observed value only; it is not an average.
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 6faf395b5bb14456a33e6689b7618613
- name: 'Free system page table entries'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Memory\Free System Page Table Entries"]'
- history: 7d
- description: |
- This indicates the number of page table entries not currently in use by the system. If the number is less
- than 5,000, there may well be a memory leak or you running out of memory.
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 24fd9695799846b3ba812f8ec6148972
- expression: 'max(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}'
- name: 'Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m)'
- priority: WARNING
- description: 'The Memory Free System Page Table Entries is less than {$MEM.PAGE_TABLE_CRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak.'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- tags:
- -
- tag: scope
- value: capacity
- -
- uuid: 9529c721229841f78362b4759cf2a910
- name: 'Memory page faults per second'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Memory\Page Faults/sec"]'
- history: 7d
- value_type: FLOAT
- description: |
- Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages
- faulted per second because only one page is faulted in each fault operation, hence this is also equal
- to the number of page fault operations. This counter includes both hard faults (those that require
- disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most
- processors can handle large numbers of soft faults without significant consequence. However, hard faults,
- which require disk access, can cause significant delays.
- tags:
- -
- tag: component
- value: memory
- -
- uuid: f6c50f669f59467e9c5dca1c54f11ba6
- name: 'Memory pages per second'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Memory\Pages/sec"]'
- history: 7d
- value_type: FLOAT
- description: |
- This measures the rate at which pages are read from or written to disk to resolve hard page faults.
- If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: 655191afccad4673a641808be5500b46
- expression: 'min(/Windows memory by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}'
- name: 'The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m)'
- priority: WARNING
- description: 'The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- tags:
- -
- tag: scope
- value: capacity
- -
- uuid: 46dbc910c830421f9a95e0da1e467b39
- name: 'Memory pool non-paged'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Memory\Pool Nonpaged Bytes"]'
- history: 7d
- units: B
- description: |
- This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects
- that cannot be written to disk but instead must remain in physical memory as long as they are allocated.
- There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch).
- A typical Event ID 2019 is recorded in the system event log.
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 81b54eadc3c546858982dc8cf9228dd4
- name: 'Used swap space in %'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The used space of swap volume/file in percent.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 2eec55a22cf74c16b06eb6f9028637f8
- name: 'Free swap space'
- type: CALCULATED
- key: system.swap.free
- history: 7d
- units: B
- params: 'last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])'
- description: 'The free space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 5f86e2a308a342769cb5bf91da3976ef
- name: 'Free swap space in %'
- type: DEPENDENT
- key: system.swap.pfree
- delay: '0'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'The free space of swap volume/file in percent.'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100 - value)'
- master_item:
- key: 'perf_counter_en["\Paging file(_Total)\% Usage"]'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: 9a73bfe24f884eea9bb9a13042b6dbfd
- name: 'Total swap space'
- type: ZABBIX_ACTIVE
- key: 'system.swap.size[,total]'
- history: 7d
- units: B
- description: 'The total space of swap volume/file in bytes.'
- tags:
- -
- tag: component
- value: memory
- -
- tag: component
- value: storage
- -
- uuid: b6b897e08b0f4dd1b858304d5456ab86
- name: 'Total memory'
- type: ZABBIX_ACTIVE
- key: 'vm.memory.size[total]'
- history: 7d
- units: B
- description: 'Total memory in Bytes'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 7b6b29a6d984476785e77b9604874ed5
- name: 'Used memory'
- type: ZABBIX_ACTIVE
- key: 'vm.memory.size[used]'
- history: 7d
- units: B
- description: 'Used memory in Bytes'
- tags:
- -
- tag: component
- value: memory
- -
- uuid: 5731f496327c422e8fb33a1db6412d74
- name: 'Memory utilization'
- type: CALCULATED
- key: vm.memory.util
- history: 7d
- value_type: FLOAT
- units: '%'
- params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100'
- description: 'Memory utilization in %'
- tags:
- -
- tag: component
- value: memory
- triggers:
- -
- uuid: df816288349743ad9b2015dda9066abb
- expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- priority: AVERAGE
- description: 'The system is running out of free memory.'
- tags:
- -
- tag: scope
- value: capacity
- -
- tag: scope
- value: performance
- macros:
- -
- macro: '{$MEM.PAGE_SEC.CRIT.MAX}'
- value: '1000'
- description: 'The warning threshold of the Memory Pages/sec counter.'
- -
- macro: '{$MEM.PAGE_TABLE_CRIT.MIN}'
- value: '5000'
- description: 'The warning threshold of the Free System Page Table Entries counter.'
- -
- macro: '{$MEMORY.UTIL.MAX}'
- value: '90'
- description: 'The warning threshold of the Memory util item.'
- -
- macro: '{$SWAP.PFREE.MIN.WARN}'
- value: '20'
- description: 'The warning threshold of the minimum free swap.'
- -
- uuid: 792cb76a1a6340d8acb36d8802d22c00
- template: 'Windows network by Zabbix agent active'
- name: 'Windows network by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- items:
- -
- uuid: 7c115b04b8904cc187aa3c8bbf456a57
- name: 'Network interfaces WMI get'
- type: ZABBIX_ACTIVE
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- history: '0'
- trends: '0'
- value_type: TEXT
- description: 'Raw data of win32_networkadapter.'
- preprocessing:
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- tags:
- -
- tag: component
- value: raw
- discovery_rules:
- -
- uuid: 876e793097d949e49d23b6c4e7df4988
- name: 'Network interfaces discovery'
- type: DEPENDENT
- key: net.if.discovery
- delay: '0'
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.MATCHES}'
- formulaid: E
- -
- macro: '{#IFNAME}'
- value: '{$NET.IF.IFNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: F
- -
- macro: '{#IFDESCR}'
- value: '{$NET.IF.IFDESCR.MATCHES}'
- formulaid: C
- -
- macro: '{#IFDESCR}'
- value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- -
- macro: '{#IFALIAS}'
- value: '{$NET.IF.IFALIAS.MATCHES}'
- formulaid: A
- -
- macro: '{#IFALIAS}'
- value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of installed network interfaces.'
- item_prototypes:
- -
- uuid: a1c5afacb66f4c9abf4f8e901f42cb64
- name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
- type: ZABBIX_ACTIVE
- key: 'net.if.in["{#IFGUID}",dropped]'
- delay: 3m
- history: 7d
- description: 'The number of incoming packets dropped on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 3ee5bf3e405c4de2856bfaa729b0f469
- name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
- type: ZABBIX_ACTIVE
- key: 'net.if.in["{#IFGUID}",errors]'
- delay: 3m
- history: 7d
- description: 'The number of incoming packets with errors on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: ea8b2a4901254965b40e57f7bdf1ea3f
- name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
- type: ZABBIX_ACTIVE
- key: 'net.if.in["{#IFGUID}"]'
- delay: 3m
- history: 7d
- units: bps
- description: 'Incoming traffic on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 8feffdee85e2486191de0968ec7918b7
- name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
- type: ZABBIX_ACTIVE
- key: 'net.if.out["{#IFGUID}",dropped]'
- delay: 3m
- history: 7d
- description: 'The number of outgoing packets dropped on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 84d1943e15c046f894bf0219288671e4
- name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
- type: ZABBIX_ACTIVE
- key: 'net.if.out["{#IFGUID}",errors]'
- delay: 3m
- history: 7d
- description: 'The number of outgoing packets with errors on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: fb0785a7e7e54743bef715fb60dbe890
- name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
- type: ZABBIX_ACTIVE
- key: 'net.if.out["{#IFGUID}"]'
- delay: 3m
- history: 7d
- units: bps
- description: 'Outgoing traffic on the network interface.'
- preprocessing:
- -
- type: CHANGE_PER_SECOND
- parameters:
- - ''
- -
- type: MULTIPLIER
- parameters:
- - '8'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 27bf112e7c1f4652aa326fa240215e41
- name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
- type: DEPENDENT
- key: 'net.if.speed["{#IFGUID}"]'
- delay: '0'
- history: 7d
- trends: 0d
- units: bps
- description: 'Estimated bandwidth of the network interface if any.'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[?(@.GUID == "{#IFGUID}")].Speed.first()'
- error_handler: CUSTOM_VALUE
- error_handler_params: '0'
- -
- type: JAVASCRIPT
- parameters:
- - 'return (value==''9223372036854775807'' ? 0 : value)'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- -
- uuid: 44fd303ebab348ceb99c74599c587cb4
- name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
- type: DEPENDENT
- key: 'net.if.status["{#IFGUID}"]'
- delay: '0'
- history: 7d
- trends: '0'
- description: 'The operational status of the network interface.'
- valuemap:
- name: 'Win32_NetworkAdapter::NetConnectionStatus'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: d2af1fae64c940f2b2b923e159b836e6
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- opdata: 'Current state: {ITEM.LASTVALUE1}'
- priority: AVERAGE
- description: |
- This trigger expression works as follows:
- 1. Can be triggered if operations status is down.
- 2. {$IFCONTROL:\"{#IFNAME}\"}=1 - user can redefine Context macro to value - 0. That marks this interface as not important.
- No new trigger will be fired if this interface is down.
- 3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status is different from Connected(2).
-
- WARNING: if closed manually - won't fire again on next poll, because of .diff.
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: availability
- -
- uuid: 14f7982f0a1a49799646fe4685df7db8
- name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
- type: DEPENDENT
- key: 'net.if.type["{#IFGUID}"]'
- delay: '0'
- history: 7d
- trends: 0d
- description: 'The type of the network interface.'
- valuemap:
- name: 'Win32_NetworkAdapter::AdapterTypeId'
- preprocessing:
- -
- type: JSONPATH
- parameters:
- - '$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()'
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1d
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- tags:
- -
- tag: component
- value: network
- -
- tag: description
- value: '{#IFALIAS}'
- -
- tag: interface
- value: '{#IFNAME}'
- trigger_prototypes:
- -
- uuid: d2629ca744034cf7b92a39d7f847195a
- expression: |
- change(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])<0 and
- last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 and
- last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2
- name: 'Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
- opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
- priority: INFO
- description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Ack to close.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
- recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: capacity
- -
- uuid: 3bdd014bdaf04f0885816cbf1da11309
- expression: |
- (avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) or
- avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])) and
- last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])>0
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- avg(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"]) and
- avg(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows network by Zabbix agent active/net.if.speed["{#IFGUID}"])
- name: 'Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
- opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'The network interface utilization is close to its estimated maximum bandwidth.'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
- recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: e29c3aa283d74838b45040394a3eabe1
- expression: |
- min(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- or min(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
- recovery_mode: RECOVERY_EXPRESSION
- recovery_expression: |
- max(/Windows network by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- and max(/Windows network by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
- name: 'Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
- opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
- priority: WARNING
- description: 'Recovers when below 80% of {$IF.ERRORS.WARN:"{#IFNAME}"} threshold'
- manual_close: 'YES'
- dependencies:
- -
- name: 'Interface {#IFNAME}({#IFALIAS}): Link down'
- expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"],#2))'
- recovery_expression: 'last(/Windows network by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0'
- tags:
- -
- tag: scope
- value: availability
- graph_prototypes:
- -
- uuid: 5042d069d9364413bc594f2a22a31cb6
- name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Windows network by Zabbix agent active'
- key: 'net.if.in["{#IFGUID}"]'
- -
- sortorder: '1'
- drawtype: BOLD_LINE
- color: 2774A4
- item:
- host: 'Windows network by Zabbix agent active'
- key: 'net.if.out["{#IFGUID}"]'
- -
- sortorder: '2'
- color: F63100
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent active'
- key: 'net.if.out["{#IFGUID}",errors]'
- -
- sortorder: '3'
- color: A54F10
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent active'
- key: 'net.if.in["{#IFGUID}",errors]'
- -
- sortorder: '4'
- color: FC6EA3
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent active'
- key: 'net.if.out["{#IFGUID}",dropped]'
- -
- sortorder: '5'
- color: 6C59DC
- yaxisside: RIGHT
- item:
- host: 'Windows network by Zabbix agent active'
- key: 'net.if.in["{#IFGUID}",dropped]'
- master_item:
- key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - |
- output = JSON.parse(value).map(function(net){
- return {
- "{#IFNAME}": net.Name,
- "{#IFDESCR}": net.Description,
- "{#IFALIAS}": net.NetConnectionID,
- "{#IFGUID}": net.GUID
- }})
- return JSON.stringify({"data": output})
- -
- type: DISCARD_UNCHANGED_HEARTBEAT
- parameters:
- - 1h
- macros:
- -
- macro: '{$IF.ERRORS.WARN}'
- value: '2'
- -
- macro: '{$IF.UTIL.MAX}'
- value: '90'
- -
- macro: '{$IFCONTROL}'
- value: '1'
- -
- macro: '{$NET.IF.IFALIAS.MATCHES}'
- value: '.*'
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
- value: CHANGE_THIS
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFDESCR.MATCHES}'
- value: '.*'
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
- value: CHANGE_THIS
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFNAME.MATCHES}'
- value: '.*'
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
- value: Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer
- description: 'This macro is used in Network interface discovery. Can be overridden on the host or linked template level.'
- dashboards:
- -
- uuid: 1f4737b4a5364b35a8358dccedf6a492
- name: 'Network interfaces'
- pages:
- -
- widgets:
- -
- type: GRAPH_PROTOTYPE
- width: '24'
- height: '5'
- fields:
- -
- type: INTEGER
- name: source_type
- value: '2'
- -
- type: INTEGER
- name: columns
- value: '1'
- -
- type: INTEGER
- name: rows
- value: '1'
- -
- type: GRAPH_PROTOTYPE
- name: graphid
- value:
- name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
- host: 'Windows network by Zabbix agent active'
- valuemaps:
- -
- uuid: 7300d3f66dec4f90bcd6889d206db89f
- name: 'Win32_NetworkAdapter::AdapterTypeId'
- mappings:
- -
- value: '0'
- newvalue: 'Ethernet 802.3'
- -
- value: '1'
- newvalue: 'Token Ring 802.5'
- -
- value: '2'
- newvalue: 'Fiber Distributed Data Interface (FDDI)'
- -
- value: '3'
- newvalue: 'Wide Area Network (WAN)'
- -
- value: '4'
- newvalue: LocalTalk
- -
- value: '5'
- newvalue: 'Ethernet using DIX header format'
- -
- value: '6'
- newvalue: ARCNET
- -
- value: '7'
- newvalue: 'ARCNET (878.2)'
- -
- value: '8'
- newvalue: ATM
- -
- value: '9'
- newvalue: Wireless
- -
- value: '10'
- newvalue: 'Infrared Wireless'
- -
- value: '11'
- newvalue: Bpc
- -
- value: '12'
- newvalue: CoWan
- -
- value: '13'
- newvalue: '1394'
- -
- uuid: a1e647b6b26547bfbc044d213150c71b
- name: 'Win32_NetworkAdapter::NetConnectionStatus'
- mappings:
- -
- value: '0'
- newvalue: Disconnected
- -
- value: '1'
- newvalue: Connecting
- -
- value: '2'
- newvalue: Connected
- -
- value: '3'
- newvalue: Disconnecting
- -
- value: '4'
- newvalue: 'Hardware Not Present'
- -
- value: '5'
- newvalue: 'Hardware Disabled'
- -
- value: '6'
- newvalue: 'Hardware Malfunction'
- -
- value: '7'
- newvalue: 'Media Disconnected'
- -
- value: '8'
- newvalue: Authenticating
- -
- value: '9'
- newvalue: 'Authentication Succeeded'
- -
- value: '10'
- newvalue: 'Authentication Failed'
- -
- value: '11'
- newvalue: 'Invalid Address'
- -
- value: '12'
- newvalue: 'Credentials Required'
- -
- uuid: 222cf73cb40941f6be62db0540524e5e
- template: 'Windows physical disks by Zabbix agent active'
- name: 'Windows physical disks by Zabbix agent active'
- description: 'Template tooling version used: 0.41'
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 355a9297d1fb4cb0b587e40ef152dc0f
- name: 'Physical disks discovery'
- type: ZABBIX_ACTIVE
- key: 'perf_instance_en.discovery[PhysicalDisk]'
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.MATCHES}'
- formulaid: A
- -
- macro: '{#DEVNAME}'
- value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- description: 'Discovery of installed physical disks.'
- item_prototypes:
- -
- uuid: 7d6ab9b1b76041869d7818652b5c5b0e
- name: '{#DEVNAME}: Disk utilization by idle time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
- history: 7d
- value_type: FLOAT
- units: '%'
- description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.'
- preprocessing:
- -
- type: JAVASCRIPT
- parameters:
- - 'return (100 - value)'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- trigger_prototypes:
- -
- uuid: 6baacd2fab15466ab3b12dcfb7e2980a
- expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}'
- name: '{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m)'
- priority: WARNING
- description: 'The disk appears to be under heavy load'
- manual_close: 'YES'
- dependencies:
- -
- name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
- expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
- -
- name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
- expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: ee3e17e348f84f8bb4eb9675cb0ef045
- name: '{#DEVNAME}: Average disk read queue length'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
- history: 7d
- value_type: FLOAT
- description: 'Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 83bc066220ec47bb898351e8d20fb81d
- name: '{#DEVNAME}: Disk read request avg waiting time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
- history: 7d
- value_type: FLOAT
- units: s
- description: 'The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- trigger_prototypes:
- -
- uuid: 32f7d131336348178069bbafbdabcfee
- expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}'
- name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m'
- priority: WARNING
- description: 'This trigger might indicate disk {#DEVNAME} saturation.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 9f906bcb67f847b7bfbca098659063d4
- name: '{#DEVNAME}: Disk write request avg waiting time'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
- history: 7d
- value_type: FLOAT
- units: s
- description: 'The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- trigger_prototypes:
- -
- uuid: d7116046921d441dba5830140f8bf433
- expression: 'min(/Windows physical disks by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}'
- name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)'
- priority: WARNING
- description: 'This trigger might indicate disk {#DEVNAME} saturation.'
- manual_close: 'YES'
- tags:
- -
- tag: scope
- value: performance
- -
- uuid: 584f4a8fba0b4e3cba7f37cba42cd97c
- name: '{#DEVNAME}: Average disk write queue length'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
- history: 7d
- value_type: FLOAT
- description: 'Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 1201592953094d48af20a0e420bfa846
- name: '{#DEVNAME}: Disk average queue size (avgqu-sz)'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
- history: 7d
- value_type: FLOAT
- description: 'Current average disk queue, the number of requests outstanding on the disk at the time the performance data is collected.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: e0f052d64ea544b09dfe619cb91f28c8
- name: '{#DEVNAME}: Disk read rate'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
- history: 7d
- value_type: FLOAT
- units: '!r/s'
- description: 'Rate of read operations on the disk.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- -
- uuid: 33e5e9eccad84737bf428fc54b25fc5c
- name: '{#DEVNAME}: Disk write rate'
- type: ZABBIX_ACTIVE
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
- history: 7d
- value_type: FLOAT
- units: '!w/s'
- description: 'Rate of write operations on the disk.'
- tags:
- -
- tag: component
- value: storage
- -
- tag: disk
- value: '{#DEVNAME}'
- graph_prototypes:
- -
- uuid: b84e9fa116434ec8ba9ab9bb7a2aa6d2
- name: '{#DEVNAME}: Disk average queue length'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]'
- -
- uuid: ece6c5cbff6e4997b52ea1d7652b7680
- name: '{#DEVNAME}: Disk average waiting time'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]'
- -
- uuid: 681afbf26ef340c682f8deffd921ae2d
- name: '{#DEVNAME}: Disk read/write rates'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]'
- -
- uuid: 58fb9ac4f2864730aaeda6a035b1591e
- name: '{#DEVNAME}: Disk utilization and queue'
- graph_items:
- -
- color: 1A7C11
- yaxisside: RIGHT
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]'
- -
- sortorder: '1'
- drawtype: GRADIENT_LINE
- color: 2774A4
- item:
- host: 'Windows physical disks by Zabbix agent active'
- key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]'
- preprocessing:
- -
- type: STR_REPLACE
- parameters:
- - '{#INSTANCE}'
- - '{#DEVNAME}'
- macros:
- -
- macro: '{$VFS.DEV.DEVNAME.MATCHES}'
- value: '.*'
- description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}'
- value: _Total
- description: 'This macro is used in physical disks discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$VFS.DEV.READ.AWAIT.WARN}'
- value: '0.02'
- description: 'Disk read average response time (in s) before the trigger would fire.'
- -
- macro: '{$VFS.DEV.UTIL.MAX.WARN}'
- value: '95'
- description: 'The warning threshold of disk time utilization in percent.'
- -
- macro: '{$VFS.DEV.WRITE.AWAIT.WARN}'
- value: '0.02'
- description: 'Disk write average response time (in s) before the trigger would fire.'
- -
- uuid: 3366a65bbc3e46348bec303e84e23b15
- template: 'Windows services by Zabbix agent active'
- name: 'Windows services by Zabbix agent active'
- description: |
- Template Services OS Windows
-
- Template tooling version used: 0.41
- groups:
- -
- name: Templates/Modules
- discovery_rules:
- -
- uuid: 25e19e75eb4d4fd68df976323c7fac21
- name: 'Windows services discovery'
- type: ZABBIX_ACTIVE
- key: service.discovery
- delay: 1h
- filter:
- evaltype: AND
- conditions:
- -
- macro: '{#SERVICE.NAME}'
- value: '{$SERVICE.NAME.MATCHES}'
- formulaid: A
- -
- macro: '{#SERVICE.NAME}'
- value: '{$SERVICE.NAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: B
- -
- macro: '{#SERVICE.STARTUPNAME}'
- value: '{$SERVICE.STARTUPNAME.MATCHES}'
- formulaid: C
- -
- macro: '{#SERVICE.STARTUPNAME}'
- value: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
- operator: NOT_MATCHES_REGEX
- formulaid: D
- description: 'Discovery of Windows services of different types as defined in template''s macros.'
- item_prototypes:
- -
- uuid: c1606f1f7c9e4eb494c0c5e4e4f21ea5
- name: 'State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME})'
- type: ZABBIX_ACTIVE
- key: 'service.info["{#SERVICE.NAME}",state]'
- history: 7d
- valuemap:
- name: 'Windows service state'
- tags:
- -
- tag: component
- value: system
- -
- tag: name
- value: '{#SERVICE.DISPLAYNAME}'
- -
- tag: service
- value: '{#SERVICE.NAME}'
- trigger_prototypes:
- -
- uuid: df3247515e2e4b48b2decd8401c11736
- expression: 'min(/Windows services by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0'
- name: '"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME})'
- priority: AVERAGE
- description: 'The service has a state other than "Running" for the last three times.'
- tags:
- -
- tag: scope
- value: notice
- macros:
- -
- macro: '{$SERVICE.NAME.MATCHES}'
- value: '^.*$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$SERVICE.NAME.NOT_MATCHES}'
- value: '^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc)$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$SERVICE.STARTUPNAME.MATCHES}'
- value: '^(?:automatic|automatic delayed)$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- -
- macro: '{$SERVICE.STARTUPNAME.NOT_MATCHES}'
- value: '^(?:manual|disabled)$'
- description: 'This macro is used in Service discovery. Can be overridden on the host or linked template level.'
- valuemaps:
- -
- uuid: af7bd46d70ed4058afa4961d130dc0b2
- name: 'Windows service state'
- mappings:
- -
- value: '0'
- newvalue: Running
- -
- value: '1'
- newvalue: Paused
- -
- value: '2'
- newvalue: 'Start pending'
- -
- value: '3'
- newvalue: 'Pause pending'
- -
- value: '4'
- newvalue: 'Continue pending'
- -
- value: '5'
- newvalue: 'Stop pending'
- -
- value: '6'
- newvalue: Stopped
- -
- value: '7'
- newvalue: Unknown
- -
- value: '255'
- newvalue: 'No such service'
triggers:
-
uuid: 384393bb344e497382ea10e7fce7fcb3
@@ -3903,20 +2061,6 @@ zabbix_export:
tag: scope
value: performance
-
- uuid: dfba6b17ab94449181584c8a4410f50f
- expression: 'min(/Windows CPU by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows CPU by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}'
- name: 'CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m)'
- priority: WARNING
- description: 'The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }.'
- dependencies:
- -
- name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
- expression: 'min(/Windows CPU by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}'
- tags:
- -
- tag: scope
- value: performance
- -
uuid: ac93631f79584e2d9909f4bb2f12c866
expression: 'min(/Windows by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows by Zabbix agent active/system.swap.size[,total])>0'
name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)'
@@ -3931,38 +2075,8 @@ zabbix_export:
-
tag: scope
value: performance
- -
- uuid: 237760596cd647bca82044e843992d87
- expression: 'min(/Windows memory by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows memory by Zabbix agent active/system.swap.size[,total])>0'
- 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'
- dependencies:
- -
- name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
- expression: 'min(/Windows memory by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}'
- tags:
- -
- tag: scope
- value: performance
graphs:
-
- uuid: 12c859baa46044a0a439f26d2eb50436
- name: 'CPU jumps'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows CPU by Zabbix agent active'
- key: 'perf_counter_en["\System\Context Switches/sec"]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows CPU by Zabbix agent active'
- key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
- -
uuid: 133a9930f45b448abbf35fe3a00d10c6
name: 'CPU jumps'
graph_items:
@@ -3978,24 +2092,6 @@ zabbix_export:
host: 'Windows by Zabbix agent active'
key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]'
-
- uuid: 523969311486483e93b4704c544861d6
- name: 'CPU usage'
- type: STACKED
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows CPU by Zabbix agent active'
- key: 'perf_counter_en["\Processor Information(_total)\% User Time"]'
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows CPU by Zabbix agent active'
- key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
- -
uuid: 2a650f6de7804835a9a02db021649fca
name: 'CPU usage'
type: STACKED
@@ -4014,18 +2110,6 @@ zabbix_export:
host: 'Windows by Zabbix agent active'
key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]'
-
- uuid: 33392bbdf1d146e2ad347fafa4f9a5d2
- name: 'CPU utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Windows CPU by Zabbix agent active'
- key: system.cpu.util
- -
uuid: 0865f60b2cd845aea2f2daad93c3bf83
name: 'CPU utilization'
ymin_type_1: FIXED
@@ -4038,18 +2122,6 @@ zabbix_export:
host: 'Windows by Zabbix agent active'
key: system.cpu.util
-
- uuid: 3c50693dde6c4f6fa1487e3969a1c87d
- name: 'Memory utilization'
- ymin_type_1: FIXED
- ymax_type_1: FIXED
- graph_items:
- -
- drawtype: GRADIENT_LINE
- color: 1A7C11
- item:
- host: 'Windows memory by Zabbix agent active'
- key: vm.memory.util
- -
uuid: f09c95d4637140c89a7b43165906db96
name: 'Memory utilization'
ymin_type_1: FIXED
@@ -4062,21 +2134,6 @@ zabbix_export:
host: 'Windows by Zabbix agent active'
key: vm.memory.util
-
- uuid: 1d27499155b04933a51e4e0f419ea9e8
- name: 'Swap usage'
- graph_items:
- -
- color: 1A7C11
- item:
- host: 'Windows memory by Zabbix agent active'
- key: system.swap.free
- -
- sortorder: '1'
- color: 2774A4
- item:
- host: 'Windows memory by Zabbix agent active'
- key: 'system.swap.size[,total]'
- -
uuid: 441075d89a7045c283a7da9dd74e2a1b
name: 'Swap usage'
graph_items: