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:
authorAnton Fayantsev <anton.fayantsev@zabbix.com>2020-06-05 05:07:40 +0300
committerAnton Fayantsev <anton.fayantsev@zabbix.com>2020-06-05 05:07:40 +0300
commitf220707326d2a879ef26eb1945c4ac58363fe54b (patch)
tree1e5c87625728539830dfd76fae693e6dedd74c64 /templates/net
parent79ff1f539b8a488d59837baf99309bef54208466 (diff)
.........T [ZBXNEXT-5966] updated SNMP templates for version 5.0 and changed their name suffix
Diffstat (limited to 'templates/net')
-rw-r--r--templates/net/alcatel_timetra_snmp/README.md78
-rw-r--r--templates/net/alcatel_timetra_snmp/template_net_alcatel_timetra_snmp.xml (renamed from templates/net/alcatel_timetra_snmpv2/template_net_alcatel_timetra_snmpv2.xml)70
-rw-r--r--templates/net/alcatel_timetra_snmpv2/README.md78
-rw-r--r--templates/net/arista_snmp/README.md78
-rw-r--r--templates/net/arista_snmp/template_net_arista_snmp.xml (renamed from templates/net/arista_snmpv2/template_net_arista_snmpv2.xml)61
-rw-r--r--templates/net/arista_snmpv2/README.md78
-rw-r--r--templates/net/brocade_fc_sw_snmp/README.md98
-rw-r--r--templates/net/brocade_fc_sw_snmp/template_net_brocade_fc_sw_snmp.xml (renamed from templates/net/brocade_fc_sw_snmpv2/template_net_brocade_fc_sw_snmpv2.xml)73
-rw-r--r--templates/net/brocade_fc_sw_snmpv2/README.md98
-rw-r--r--templates/net/brocade_foundry_sw_snmp/README.md221
-rw-r--r--templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.xml (renamed from templates/net/brocade_foundry_sw_snmpv2/template_net_brocade_foundry_sw_snmpv2.xml)127
-rw-r--r--templates/net/brocade_foundry_sw_snmpv2/README.md221
-rw-r--r--templates/net/cisco_snmp/README.md421
-rw-r--r--templates/net/cisco_snmp/template_net_cisco_snmp.xml (renamed from templates/net/cisco_snmpv2/template_net_cisco_snmpv2.xml)200
-rw-r--r--templates/net/cisco_snmpv2/README.md421
-rw-r--r--templates/net/dell_force_s_series_snmp/README.md78
-rw-r--r--templates/net/dell_force_s_series_snmp/template_net_dell_force_s_series_snmp.xml (renamed from templates/net/dell_force_s_series_snmpv2/template_net_dell_force_s_series_snmpv2.xml)67
-rw-r--r--templates/net/dell_force_s_series_snmpv2/README.md78
-rw-r--r--templates/net/dlink_des7200_snmp/README.md73
-rw-r--r--templates/net/dlink_des7200_snmp/template_net_dlink_des7200_snmp.xml (renamed from templates/net/dlink_des7200_snmpv2/template_net_dlink_des7200_snmpv2.xml)61
-rw-r--r--templates/net/dlink_des7200_snmpv2/README.md73
-rw-r--r--templates/net/dlink_des_snmp/README.md82
-rw-r--r--templates/net/dlink_des_snmp/template_net_dlink_des_snmp.xml (renamed from templates/net/dlink_des_snmpv2/template_net_dlink_des_snmpv2.xml)63
-rw-r--r--templates/net/dlink_des_snmpv2/README.md82
-rw-r--r--templates/net/extreme_snmp/README.md80
-rw-r--r--templates/net/extreme_snmp/template_net_extreme_snmp.xml (renamed from templates/net/extreme_snmpv2/template_net_extreme_snmpv2.xml)84
-rw-r--r--templates/net/extreme_snmpv2/README.md80
-rw-r--r--templates/net/generic_snmp/README.md (renamed from templates/net/generic_snmpv1/README.md)10
-rw-r--r--templates/net/generic_snmp/template_net_generic_snmp.xml (renamed from templates/net/generic_snmpv1/template_net_generic_snmpv1.xml)16
-rw-r--r--templates/net/generic_snmpv2/README.md42
-rw-r--r--templates/net/generic_snmpv2/template_net_generic_snmpv2.xml35
-rw-r--r--templates/net/hp_hh3c_snmp/README.md95
-rw-r--r--templates/net/hp_hh3c_snmp/template_net_hp_hh3c_snmp.xml (renamed from templates/net/hp_hh3c_snmpv2/template_net_hp_hh3c_snmpv2.xml)69
-rw-r--r--templates/net/hp_hh3c_snmpv2/README.md95
-rw-r--r--templates/net/hp_hpn_snmp/README.md91
-rw-r--r--templates/net/hp_hpn_snmp/template_net_hp_hpn_snmp.xml (renamed from templates/net/hp_hpn_snmpv2/template_net_hp_hpn_snmpv2.xml)86
-rw-r--r--templates/net/hp_hpn_snmpv2/README.md91
-rw-r--r--templates/net/huawei_snmp/README.md74
-rw-r--r--templates/net/huawei_snmp/template_net_huawei_snmp.xml (renamed from templates/net/huawei_snmpv2/template_net_huawei_snmpv2.xml)57
-rw-r--r--templates/net/huawei_snmpv2/README.md74
-rw-r--r--templates/net/intel_qlogic_infiniband_snmp/README.md71
-rw-r--r--templates/net/intel_qlogic_infiniband_snmp/template_net_intel_qlogic_infiniband_snmp.xml (renamed from templates/net/intel_qlogic_infiniband_snmpv2/template_net_intel_qlogic_infiniband_snmpv2.xml)67
-rw-r--r--templates/net/intel_qlogic_infiniband_snmpv2/README.md71
-rw-r--r--templates/net/juniper_snmp/README.md78
-rw-r--r--templates/net/juniper_snmp/template_net_juniper_snmp.xml (renamed from templates/net/juniper_snmpv2/template_net_juniper_snmpv2.xml)63
-rw-r--r--templates/net/juniper_snmpv2/README.md78
-rw-r--r--templates/net/mellanox_snmp/README.md68
-rw-r--r--templates/net/mellanox_snmp/template_net_mellanox_snmp.xml (renamed from templates/net/mellanox_snmpv2/template_net_mellanox_snmpv2.xml)59
-rw-r--r--templates/net/mellanox_snmpv2/README.md68
-rw-r--r--templates/net/mikrotik_snmp/README.md93
-rw-r--r--templates/net/mikrotik_snmp/template_net_mikrotik_snmp.xml (renamed from templates/net/mikrotik_snmpv2/template_net_mikrotik_snmpv2.xml)84
-rw-r--r--templates/net/mikrotik_snmpv2/README.md93
-rw-r--r--templates/net/netgear_snmp/README.md83
-rw-r--r--templates/net/netgear_snmp/template_net_netgear_snmp.xml (renamed from templates/net/netgear_snmpv2/template_net_netgear_snmpv2.xml)79
-rw-r--r--templates/net/netgear_snmpv2/README.md83
-rw-r--r--templates/net/qtech_snmp/README.md76
-rw-r--r--templates/net/qtech_snmp/template_net_qtech_snmp.xml (renamed from templates/net/qtech_snmpv2/template_net_qtech_snmpv2.xml)63
-rw-r--r--templates/net/qtech_snmpv2/README.md76
-rw-r--r--templates/net/tplink_snmp/README.md77
-rw-r--r--templates/net/tplink_snmp/template_net_tplink_snmp.xml (renamed from templates/net/tplink_snmpv2/template_net_tplink_snmpv2.xml)42
-rw-r--r--templates/net/tplink_snmpv2/README.md77
-rw-r--r--templates/net/ubiquiti_airos_snmp/README.md75
-rw-r--r--templates/net/ubiquiti_airos_snmp/template_net_ubiquiti_airos_snmp.xml (renamed from templates/net/ubiquiti_airos_snmpv1/template_net_ubiquiti_airos_snmpv1.xml)39
-rw-r--r--templates/net/ubiquiti_airos_snmpv1/README.md75
64 files changed, 2725 insertions, 3072 deletions
diff --git a/templates/net/alcatel_timetra_snmp/README.md b/templates/net/alcatel_timetra_snmp/README.md
new file mode 100644
index 00000000000..66a7ee1f322
--- /dev/null
+++ b/templates/net/alcatel_timetra_snmp/README.md
@@ -0,0 +1,78 @@
+
+# Template Net Alcatel Timetra TiMOS SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`4` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`4` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature Discovery |<p>-</p> |SNMP |temperature.discovery<p>**Filter**:</p>AND_OR <p>- A: {#TEMP_SENSOR} MATCHES_REGEX `1`</p> |
+|FAN Discovery |<p>-</p> |SNMP |fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `[^1]`</p> |
+|PSU Discovery |<p>-</p> |SNMP |psu.discovery |
+|Entity Serial Numbers Discovery |<p>-</p> |SNMP |entity_sn.discovery<p>**Filter**:</p>AND <p>- B: {#ENT_SN} MATCHES_REGEX `.+`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The value of sgiCpuUsage indicates the current CPU utilization for the system.</p> |SNMP |system.cpu.util[sgiCpuUsage.0] |
+|Fans |#{#SNMPINDEX}: Fan status |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>Current status of the Fan tray.</p> |SNMP |sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}] |
+|Inventory |Hardware model name |<p>MIB: SNMPv2-MIB</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- REGEX: `^(\w|-|\.|/)+ (\w|-|\.|/)+ (.+) Copyright \3`</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: `^((\w|-|\.|/)+) \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Hardware serial number |<p>MIB: TIMETRA-CHASSIS-MIB</p> |SNMP |system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Used memory |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in kilobytes, currently in use on the system.</p> |SNMP |vm.memory.used[sgiKbMemoryUsed.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Available memory |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The value of sgiKbMemoryAvailable indicates the amount of free memory, in kilobytes, in the overall system that is not allocated to memory pools, but is available in case a memory pool needs to grow.</p> |SNMP |vm.memory.available[sgiKbMemoryAvailable.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Total memory |<p>Total memory in Bytes</p> |CALCULATED |vm.memory.total[snmp]<p>**Expression**:</p>`last("vm.memory.available[sgiKbMemoryAvailable.0]")+last("vm.memory.used[sgiKbMemoryUsed.0]")` |
+|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[vm.memory.util.0]<p>**Expression**:</p>`last("vm.memory.used[sgiKbMemoryUsed.0]")/(last("vm.memory.available[sgiKbMemoryAvailable.0]")+last("vm.memory.used[sgiKbMemoryUsed.0]"))*100` |
+|Power_supply |#{#SNMPINDEX}: Power supply status |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The overall status of an equipped power supply. </p><p>For AC multiple powersupplies, this represents the overall status of the first power supplyin the tray (or shelf).</p><p>For any other type, this represents the overall status of the power supply.</p><p>If tmnxChassisPowerSupply1Status is'deviceStateOk', then all monitored statuses are 'deviceStateOk'.</p><p>A value of 'deviceStateFailed' represents a condition where at least one monitored status is in a failed state.</p> |SNMP |sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}] |
+|Power_supply |#{#SNMPINDEX}: Power supply status |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The overall status of an equipped power supply.</p><p>For AC multiple powersupplies, this represents the overall status of the second power supplyin the tray (or shelf).</p><p>For any other type, this field is unused and set to 'deviceNotEquipped'.</p><p>If tmnxChassisPowerSupply2Status is 'deviceStateOk', then all monitored statuses are 'deviceStateOk'.</p><p>A value of 'deviceStateFailed' represents a condition where at least one monitored status is in a failed state.</p> |SNMP |sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}] |
+|Temperature |{#SNMPVALUE}: Temperature |<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The current temperature reading in degrees celsius from this hardware component's temperature sensor. If this component does not contain a temperature sensor, then the value -1 is returned.</p> |SNMP |sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}] |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[sgiCpuUsage.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|#{#SNMPINDEX}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>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> |`{TEMPLATE_NAME:system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}].strlen()}>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> |`{TEMPLATE_NAME:vm.memory.util[vm.memory.util.0].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|#{#SNMPINDEX}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|#{#SNMPINDEX}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/alcatel_timetra_snmpv2/template_net_alcatel_timetra_snmpv2.xml b/templates/net/alcatel_timetra_snmp/template_net_alcatel_timetra_snmp.xml
index 25d6ec1973a..2191af946e8 100644
--- a/templates/net/alcatel_timetra_snmpv2/template_net_alcatel_timetra_snmpv2.xml
+++ b/templates/net/alcatel_timetra_snmp/template_net_alcatel_timetra_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:17Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Alcatel Timetra TiMOS SNMPv2</template>
- <name>Template Net Alcatel Timetra TiMOS SNMPv2</name>
+ <template>Template Net Alcatel Timetra TiMOS SNMP</template>
+ <name>Template Net Alcatel Timetra TiMOS SNMP</name>
<description>Template Net Alcatel Timetra TiMOS&#13;
&#13;
MIBs used:&#13;
@@ -18,16 +18,16 @@ TIMETRA-CHASSIS-MIB&#13;
TIMETRA-SYSTEM-MIB&#13;
SNMPv2-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -58,8 +58,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.1.1.1.0</snmp_oid>
<key>system.cpu.util[sgiCpuUsage.0]</key>
<history>7d</history>
@@ -84,8 +83,7 @@ The value of sgiCpuUsage indicates the current CPU utilization for the system.</
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -113,8 +111,7 @@ The value of sgiCpuUsage indicates the current CPU utilization for the system.</
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.sw.os[sysDescr.0]</key>
<delay>1h</delay>
@@ -152,8 +149,7 @@ The value of sgiCpuUsage indicates the current CPU utilization for the system.</
</item>
<item>
<name>Available memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.1.1.10.0</snmp_oid>
<key>vm.memory.available[sgiKbMemoryAvailable.0]</key>
<history>7d</history>
@@ -188,8 +184,7 @@ The value of sgiKbMemoryAvailable indicates the amount of free memory, in kiloby
</item>
<item>
<name>Used memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.1.1.9.0</snmp_oid>
<key>vm.memory.used[sgiKbMemoryUsed.0]</key>
<history>7d</history>
@@ -235,8 +230,7 @@ The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in k
<discovery_rules>
<discovery_rule>
<name>Entity Serial Numbers Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#ENT_NAME},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.8,{#ENT_CLASS},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.7,{#ENT_SN},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.5]</snmp_oid>
<key>entity_sn.discovery</key>
<delay>1h</delay>
@@ -253,8 +247,7 @@ The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in k
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.2.1.8.1.5.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -287,8 +280,7 @@ The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in k
</discovery_rule>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6527.3.1.2.2.1.4.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -305,8 +297,7 @@ The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in k
<item_prototypes>
<item_prototype>
<name>#{#SNMPINDEX}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.2.1.4.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -336,16 +327,14 @@ Current status of the Fan tray.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6527.3.1.2.2.1.5.1.6]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>#{#SNMPINDEX}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.2.1.5.1.6.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -377,8 +366,7 @@ A value of 'deviceStateFailed' represents a condition where at least one monitor
</item_prototype>
<item_prototype>
<name>#{#SNMPINDEX}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.2.1.5.1.7.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -412,8 +400,7 @@ A value of 'deviceStateFailed' represents a condition where at least one monitor
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.8,{#TEMP_SENSOR},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.17]</snmp_oid>
<key>temperature.discovery</key>
<delay>1h</delay>
@@ -430,8 +417,7 @@ A value of 'deviceStateFailed' represents a condition where at least one monitor
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6527.3.1.2.2.1.8.1.18.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -456,8 +442,8 @@ The current temperature reading in degrees celsius from this hardware component'
<dependencies>
<dependency>
<name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Alcatel Timetra TiMOS SNMPv2:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Alcatel Timetra TiMOS SNMPv2:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Alcatel Timetra TiMOS SNMP:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Alcatel Timetra TiMOS SNMP:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -525,7 +511,7 @@ The current temperature reading in degrees celsius from this hardware component'
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Alcatel Timetra TiMOS SNMPv2</host>
+ <host>Template Net Alcatel Timetra TiMOS SNMP</host>
<key>system.cpu.util[sgiCpuUsage.0]</key>
</item>
</graph_item>
@@ -539,7 +525,7 @@ The current temperature reading in degrees celsius from this hardware component'
<drawtype>BOLD_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Alcatel Timetra TiMOS SNMPv2</host>
+ <host>Template Net Alcatel Timetra TiMOS SNMP</host>
<key>vm.memory.total[snmp]</key>
</item>
</graph_item>
@@ -548,7 +534,7 @@ The current temperature reading in degrees celsius from this hardware component'
<drawtype>GRADIENT_LINE</drawtype>
<color>2774A4</color>
<item>
- <host>Template Net Alcatel Timetra TiMOS SNMPv2</host>
+ <host>Template Net Alcatel Timetra TiMOS SNMP</host>
<key>vm.memory.available[sgiKbMemoryAvailable.0]</key>
</item>
</graph_item>
@@ -563,7 +549,7 @@ The current temperature reading in degrees celsius from this hardware component'
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Alcatel Timetra TiMOS SNMPv2</host>
+ <host>Template Net Alcatel Timetra TiMOS SNMP</host>
<key>vm.memory.util[vm.memory.util.0]</key>
</item>
</graph_item>
diff --git a/templates/net/alcatel_timetra_snmpv2/README.md b/templates/net/alcatel_timetra_snmpv2/README.md
deleted file mode 100644
index d5e92b485e0..00000000000
--- a/templates/net/alcatel_timetra_snmpv2/README.md
+++ /dev/null
@@ -1,78 +0,0 @@
-
-# Template Net Alcatel Timetra TiMOS SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT}|<p>-</p>|`90`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`4`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`4`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature Discovery|<p>-</p>|SNMP|temperature.discovery<p>**Filter**:</p>AND_OR <p>- A: {#TEMP_SENSOR} MATCHES_REGEX `1`</p>|
-|FAN Discovery|<p>-</p>|SNMP|fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `[^1]`</p>|
-|PSU Discovery|<p>-</p>|SNMP|psu.discovery|
-|Entity Serial Numbers Discovery|<p>-</p>|SNMP|entity_sn.discovery<p>**Filter**:</p>AND <p>- B: {#ENT_SN} MATCHES_REGEX `.+`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The value of sgiCpuUsage indicates the current CPU utilization for the system.</p>|SNMP|system.cpu.util[sgiCpuUsage.0]|
-|Fans|#{#SNMPINDEX}: Fan status|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>Current status of the Fan tray.</p>|SNMP|sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}]|
-|Inventory|Hardware model name|<p>MIB: SNMPv2-MIB</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- REGEX: `^(\w|-|\.|/)+ (\w|-|\.|/)+ (.+) Copyright \3`</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: `^((\w|-|\.|/)+) \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Hardware serial number|<p>MIB: TIMETRA-CHASSIS-MIB</p>|SNMP|system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|Used memory|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in kilobytes, currently in use on the system.</p>|SNMP|vm.memory.used[sgiKbMemoryUsed.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Available memory|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The value of sgiKbMemoryAvailable indicates the amount of free memory, in kilobytes, in the overall system that is not allocated to memory pools, but is available in case a memory pool needs to grow.</p>|SNMP|vm.memory.available[sgiKbMemoryAvailable.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Total memory|<p>Total memory in Bytes</p>|CALCULATED|vm.memory.total[snmp]<p>**Expression**:</p>`last("vm.memory.available[sgiKbMemoryAvailable.0]")+last("vm.memory.used[sgiKbMemoryUsed.0]")`|
-|Memory|Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[vm.memory.util.0]<p>**Expression**:</p>`last("vm.memory.used[sgiKbMemoryUsed.0]")/(last("vm.memory.available[sgiKbMemoryAvailable.0]")+last("vm.memory.used[sgiKbMemoryUsed.0]"))*100`|
-|Power_supply|#{#SNMPINDEX}: Power supply status|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The overall status of an equipped power supply. </p><p>For AC multiple powersupplies, this represents the overall status of the first power supplyin the tray (or shelf).</p><p>For any other type, this represents the overall status of the power supply.</p><p>If tmnxChassisPowerSupply1Status is'deviceStateOk', then all monitored statuses are 'deviceStateOk'.</p><p>A value of 'deviceStateFailed' represents a condition where at least one monitored status is in a failed state.</p>|SNMP|sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}]|
-|Power_supply|#{#SNMPINDEX}: Power supply status|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The overall status of an equipped power supply.</p><p>For AC multiple powersupplies, this represents the overall status of the second power supplyin the tray (or shelf).</p><p>For any other type, this field is unused and set to 'deviceNotEquipped'.</p><p>If tmnxChassisPowerSupply2Status is 'deviceStateOk', then all monitored statuses are 'deviceStateOk'.</p><p>A value of 'deviceStateFailed' represents a condition where at least one monitored status is in a failed state.</p>|SNMP|sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}]|
-|Temperature|{#SNMPVALUE}: Temperature|<p>MIB: TIMETRA-SYSTEM-MIB</p><p>The current temperature reading in degrees celsius from this hardware component's temperature sensor. If this component does not contain a temperature sensor, then the value -1 is returned.</p>|SNMP|sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}]|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[sgiCpuUsage.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|#{#SNMPINDEX}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Operating system description has changed|<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p>|`{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>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>|`{TEMPLATE_NAME:system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}].strlen()}>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>|`{TEMPLATE_NAME:vm.memory.util[vm.memory.util.0].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|#{#SNMPINDEX}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|#{#SNMPINDEX}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/arista_snmp/README.md b/templates/net/arista_snmp/README.md
new file mode 100644
index 00000000000..378edacc278
--- /dev/null
+++ b/templates/net/arista_snmp/README.md
@@ -0,0 +1,78 @@
+
+# Template Net Arista SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+This template was tested on:
+
+- Arista DCS-7050Q-16, version EOS version 4.12.6
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$FAN_CRIT_STATUS} |<p>-</p> |`3` |
+|{$MEMORY.NAME.NOT_MATCHES} |<p>Filter is overriden to ignore RAM(Cache) and RAM(Buffers) memory objects.</p> |`(Buffer|Cache)` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`2` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN_STATUS} |<p>-</p> |`3` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`95` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`90` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module HOST-RESOURCES-MIB SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature discovery |<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with celsius filter</p> |SNMP |temp.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `8`</p><p>- B: {#SENSOR_PRECISION} MATCHES_REGEX `1`</p> |
+|Fan discovery |<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with rpm filter</p> |SNMP |fan.discovery<p>**Filter**:</p>OR <p>- B: {#SNMPVALUE} MATCHES_REGEX `10`</p> |
+|Entity discovery |<p>-</p> |SNMP |entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p> |
+|PSU discovery |<p>-</p> |SNMP |psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `6`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Fans |{#SENSOR_INFO}: Fan speed |<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p> |SNMP |sensor.fan.speed[entPhySensorValue.{#SNMPINDEX}] |
+|Fans |{#SENSOR_INFO}: Fan status |<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p> |SNMP |sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}] |
+|Inventory |{#ENT_NAME}: Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model[entPhysicalModelName.{#SNMPINDEX}]<p>**Preprocessing**:</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> |
+|Power_supply |{#ENT_NAME}: Power supply status |<p>MIB: ENTITY-STATE-MIB</p> |SNMP |sensor.psu.status[entStateOper.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_INFO}: Temperature |<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p> |SNMP |sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p> |
+|Temperature |{#SENSOR_INFO}: Temperature status |<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p> |SNMP |sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#SENSOR_INFO}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#ENT_NAME}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[entStateOper.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Arista SNMP:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/arista_snmpv2/template_net_arista_snmpv2.xml b/templates/net/arista_snmp/template_net_arista_snmp.xml
index 77f8a40b4dd..05dffc03b5a 100644
--- a/templates/net/arista_snmpv2/template_net_arista_snmpv2.xml
+++ b/templates/net/arista_snmp/template_net_arista_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:08Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Arista SNMPv2</template>
- <name>Template Net Arista SNMPv2</name>
+ <template>Template Net Arista SNMP</template>
+ <name>Template Net Arista SNMP</name>
<description>Template Net Arista&#13;
&#13;
MIBs used:&#13;
@@ -18,19 +18,19 @@ ENTITY-SENSORS-MIB&#13;
ENTITY-STATE-MIB&#13;
ENTITY-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module HOST-RESOURCES-MIB SNMPv2</name>
+ <name>Template Module HOST-RESOURCES-MIB SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -55,8 +55,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>Entity discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>entity.discovery</key>
<delay>1h</delay>
@@ -73,8 +72,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.13.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[entPhysicalModelName.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -96,8 +94,7 @@ Template tooling version used: 0.34</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -130,8 +127,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>Fan discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.2.1.99.1.1.1.1,{#SENSOR_INFO},1.3.6.1.2.1.47.1.1.1.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -149,8 +145,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Fan speed</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.speed[entPhySensorValue.{#SNMPINDEX}]</key>
<units>rpm</units>
@@ -166,8 +161,7 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -197,8 +191,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
</discovery_rule>
<discovery_rule>
<name>PSU discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -215,8 +208,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.131.1.1.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[entStateOper.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -245,8 +237,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
</discovery_rule>
<discovery_rule>
<name>Temperature discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_TYPE},1.3.6.1.2.1.99.1.1.1.1,{#SENSOR_INFO},1.3.6.1.2.1.47.1.1.1.1.2,{#SENSOR_PRECISION},1.3.6.1.2.1.99.1.1.1.3]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -269,8 +260,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -289,8 +279,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -334,11 +323,11 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Net Arista SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
+ <expression>{Template Net Arista SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
or&#13;
-{Template Net Arista SNMPv2:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
+{Template Net Arista SNMP:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Arista SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Arista SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
<name>{#SENSOR_INFO}: Temperature is above warning threshold: &gt;{$TEMP_WARN:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
@@ -346,8 +335,8 @@ or&#13;
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Arista SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Arista SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Arista SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Arista SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
diff --git a/templates/net/arista_snmpv2/README.md b/templates/net/arista_snmpv2/README.md
deleted file mode 100644
index f672fc17bd0..00000000000
--- a/templates/net/arista_snmpv2/README.md
+++ /dev/null
@@ -1,78 +0,0 @@
-
-# Template Net Arista SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-This template was tested on:
-
-- Arista DCS-7050Q-16, version EOS version 4.12.6
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`3`|
-|{$MEMORY.NAME.NOT_MATCHES}|<p>Filter is overriden to ignore RAM(Cache) and RAM(Buffers) memory objects.</p>|`(Buffer|Cache)`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`2`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN_STATUS}|<p>-</p>|`3`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-|{$VFS.FS.PUSED.MAX.CRIT}|<p>-</p>|`95`|
-|{$VFS.FS.PUSED.MAX.WARN}|<p>-</p>|`90`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module HOST-RESOURCES-MIB SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature discovery|<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with celsius filter</p>|SNMP|temp.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `8`</p><p>- B: {#SENSOR_PRECISION} MATCHES_REGEX `1`</p>|
-|Fan discovery|<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with rpm filter</p>|SNMP|fan.discovery<p>**Filter**:</p>OR <p>- B: {#SNMPVALUE} MATCHES_REGEX `10`</p>|
-|Entity discovery|<p>-</p>|SNMP|entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p>|
-|PSU discovery|<p>-</p>|SNMP|psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `6`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Fans|{#SENSOR_INFO}: Fan speed|<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p>|SNMP|sensor.fan.speed[entPhySensorValue.{#SNMPINDEX}]|
-|Fans|{#SENSOR_INFO}: Fan status|<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p>|SNMP|sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}]|
-|Inventory|{#ENT_NAME}: Hardware model name|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.model[entPhysicalModelName.{#SNMPINDEX}]<p>**Preprocessing**:</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>|
-|Power_supply|{#ENT_NAME}: Power supply status|<p>MIB: ENTITY-STATE-MIB</p>|SNMP|sensor.psu.status[entStateOper.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_INFO}: Temperature|<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p>|SNMP|sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p>|
-|Temperature|{#SENSOR_INFO}: Temperature status|<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p>|SNMP|sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}]|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#SENSOR_INFO}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#ENT_NAME}: Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#ENT_NAME}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[entStateOper.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Arista SNMPv2:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/brocade_fc_sw_snmp/README.md b/templates/net/brocade_fc_sw_snmp/README.md
new file mode 100644
index 00000000000..35125dc7853
--- /dev/null
+++ b/templates/net/brocade_fc_sw_snmp/README.md
@@ -0,0 +1,98 @@
+
+# Template Net Brocade FC SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+https://community.brocade.com/dtscp75322/attachments/dtscp75322/fibre/25235/1/FOS_MIB_Reference_v740.pdf
+
+This template was tested on:
+
+- Brocade 6520, version v7.4.1c
+- Brocade 300, version v7.0.0c
+- Brocade BL 5480, version v6.3.1c
+
+## 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` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`2` |
+|{$FAN_OK_STATUS} |<p>-</p> |`4` |
+|{$HEALTH_CRIT_STATUS} |<p>-</p> |`4` |
+|{$HEALTH_WARN_STATUS:"offline"} |<p>-</p> |`2` |
+|{$HEALTH_WARN_STATUS:"testing"} |<p>-</p> |`3` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`2` |
+|{$PSU_OK_STATUS} |<p>-</p> |`4` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN_STATUS} |<p>-</p> |`5` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature Discovery |<p>-</p> |SNMP |temperature.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SENSOR_TYPE} MATCHES_REGEX `1`</p> |
+|PSU Discovery |<p>-</p> |SNMP |psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SENSOR_TYPE} MATCHES_REGEX `3`</p> |
+|FAN Discovery |<p>-</p> |SNMP |fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SENSOR_TYPE} MATCHES_REGEX `2`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: SW-MIB</p><p>System's CPU usage.</p> |SNMP |system.cpu.util[swCpuUsage.0] |
+|Fans |{#SENSOR_INFO}: Fan status |<p>MIB: SW-MIB</p> |SNMP |sensor.fan.status[swSensorStatus.{#SNMPINDEX}] |
+|Fans |{#SENSOR_INFO}: Fan speed |<p>MIB: SW-MIB</p><p>The current value (reading) of the sensor.</p><p>The value, -2147483648, represents an unknown quantity.</p><p>The fan value will be in RPM(revolution per minute)</p> |SNMP |sensor.fan.speed[swSensorValue.{#SNMPINDEX}] |
+|Inventory |Hardware serial number |<p>MIB: SW-MIB</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: SW-MIB</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Memory utilization |<p>MIB: SW-MIB</p><p>Memory utilization in %</p> |SNMP |vm.memory.util[swMemUsage.0] |
+|Power_supply |{#SENSOR_INFO}: Power supply status |<p>MIB: SW-MIB</p> |SNMP |sensor.psu.status[swSensorStatus.{#SNMPINDEX}] |
+|Status |Overall system health status |<p>MIB: SW-MIB</p><p>The current operational status of the switch.The states are as follow:</p><p>online(1) means the switch is accessible by an external Fibre Channel port</p><p>offline(2) means the switch is not accessible</p><p>testing(3) means the switch is in a built-in test mode and is not accessible by an external Fibre Channel port</p><p>faulty(4) means the switch is not operational.</p> |SNMP |system.status[swOperStatus.0] |
+|Temperature |{#SENSOR_INFO}: Temperature |<p>MIB: SW-MIB</p><p>Temperature readings of testpoint: {#SENSOR_INFO}</p> |SNMP |sensor.temp.value[swSensorValue.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_INFO}: Temperature status |<p>MIB: SW-MIB</p><p>Temperature status of testpoint: {#SENSOR_INFO}</p> |SNMP |sensor.temp.status[swSensorStatus.{#SNMPINDEX}] |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[swCpuUsage.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|{#SENSOR_INFO}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SENSOR_INFO}: Fan is not in normal state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Fan is in critical state</p> |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:vm.memory.util[swMemUsage.0].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#SENSOR_INFO}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SENSOR_INFO}: Power supply is not in normal state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Power supply is in critical state</p> |
+|System status is in critical state |<p>Please check the device for errors</p> |`{TEMPLATE_NAME:system.status[swOperStatus.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1` |HIGH | |
+|System status is in warning state |<p>Please check the device for warnings</p> |`{TEMPLATE_NAME:system.status[swOperStatus.0].count(#1,{$HEALTH_WARN_STATUS:"offline"},eq)}=1 or {TEMPLATE_NAME:system.status[swOperStatus.0].count(#1,{$HEALTH_WARN_STATUS:"testing"},eq)}=1` |WARNING |<p>**Depends on**:</p><p>- System status is in critical state</p> |
+|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Brocade FC SNMP:sensor.temp.status[swSensorStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: no IF-MIB::ifAlias is available
+ - Version: v6.3.1c, v7.0.0c, v7.4.1c
+ - Device: all
+
diff --git a/templates/net/brocade_fc_sw_snmpv2/template_net_brocade_fc_sw_snmpv2.xml b/templates/net/brocade_fc_sw_snmp/template_net_brocade_fc_sw_snmp.xml
index eb23d6011a8..ef43e026b7c 100644
--- a/templates/net/brocade_fc_sw_snmpv2/template_net_brocade_fc_sw_snmpv2.xml
+++ b/templates/net/brocade_fc_sw_snmp/template_net_brocade_fc_sw_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:23Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Brocade FC SNMPv2</template>
- <name>Template Net Brocade FC SNMPv2</name>
+ <template>Template Net Brocade FC SNMP</template>
+ <name>Template Net Brocade FC SNMP</name>
<description>Template Net Brocade FC&#13;
&#13;
MIBs used:&#13;
@@ -22,13 +22,13 @@ Known Issues:&#13;
Version: v6.3.1c, v7.0.0c, v7.4.1c&#13;
Device: all&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -62,8 +62,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.26.1.0</snmp_oid>
<key>system.cpu.util[swCpuUsage.0]</key>
<history>7d</history>
@@ -88,8 +87,7 @@ System's CPU usage.</description>
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.6.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -121,8 +119,7 @@ System's CPU usage.</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.10.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -154,8 +151,7 @@ System's CPU usage.</description>
</item>
<item>
<name>Overall system health status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.7.0</snmp_oid>
<key>system.status[swOperStatus.0]</key>
<delay>30s</delay>
@@ -192,7 +188,7 @@ faulty(4) means the switch is not operational.</description>
<dependencies>
<dependency>
<name>System status is in critical state</name>
- <expression>{Template Net Brocade FC SNMPv2:system.status[swOperStatus.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade FC SNMP:system.status[swOperStatus.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger>
@@ -200,8 +196,7 @@ faulty(4) means the switch is not operational.</description>
</item>
<item>
<name>Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.26.6.0</snmp_oid>
<key>vm.memory.util[swMemUsage.0]</key>
<history>7d</history>
@@ -227,8 +222,7 @@ Memory utilization in %</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.1,{#SENSOR_TYPE},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.2,{#SENSOR_INFO},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.5]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -245,8 +239,7 @@ Memory utilization in %</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Fan speed</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.22.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.speed[swSensorValue.{#SNMPINDEX}]</key>
<units>rpm</units>
@@ -262,8 +255,7 @@ The fan value will be in RPM(revolution per minute)</description>
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.22.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[swSensorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -295,7 +287,7 @@ The fan value will be in RPM(revolution per minute)</description>
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Fan is in critical state</name>
- <expression>{Template Net Brocade FC SNMPv2:sensor.fan.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade FC SNMP:sensor.fan.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -305,8 +297,7 @@ The fan value will be in RPM(revolution per minute)</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.1,{#SENSOR_TYPE},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.2,{#SENSOR_INFO},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.5]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -323,8 +314,7 @@ The fan value will be in RPM(revolution per minute)</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.22.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[swSensorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -356,7 +346,7 @@ The fan value will be in RPM(revolution per minute)</description>
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Power supply is in critical state</name>
- <expression>{Template Net Brocade FC SNMPv2:sensor.psu.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade FC SNMP:sensor.psu.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -366,8 +356,7 @@ The fan value will be in RPM(revolution per minute)</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.1,{#SENSOR_TYPE},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.2,{#SENSOR_INFO},1.3.6.1.4.1.1588.2.1.1.1.1.22.1.5]</snmp_oid>
<key>temperature.discovery</key>
<delay>1h</delay>
@@ -384,8 +373,7 @@ The fan value will be in RPM(revolution per minute)</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.22.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[swSensorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -404,8 +392,7 @@ Temperature status of testpoint: {#SENSOR_INFO}</description>
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1588.2.1.1.1.1.22.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[swSensorValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -441,11 +428,11 @@ Temperature readings of testpoint: {#SENSOR_INFO}</description>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Net Brocade FC SNMPv2:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
+ <expression>{Template Net Brocade FC SNMP:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
or&#13;
-{Template Net Brocade FC SNMPv2:sensor.temp.status[swSensorStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
+{Template Net Brocade FC SNMP:sensor.temp.status[swSensorStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Brocade FC SNMPv2:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Brocade FC SNMP:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
<name>{#SENSOR_INFO}: Temperature is above warning threshold: &gt;{$TEMP_WARN:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
@@ -453,8 +440,8 @@ or&#13;
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Brocade FC SNMPv2:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Brocade FC SNMPv2:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Brocade FC SNMP:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Brocade FC SNMP:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -527,7 +514,7 @@ or&#13;
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Brocade FC SNMPv2</host>
+ <host>Template Net Brocade FC SNMP</host>
<key>system.cpu.util[swCpuUsage.0]</key>
</item>
</graph_item>
@@ -542,7 +529,7 @@ or&#13;
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Brocade FC SNMPv2</host>
+ <host>Template Net Brocade FC SNMP</host>
<key>vm.memory.util[swMemUsage.0]</key>
</item>
</graph_item>
diff --git a/templates/net/brocade_fc_sw_snmpv2/README.md b/templates/net/brocade_fc_sw_snmpv2/README.md
deleted file mode 100644
index cdc6d06c36c..00000000000
--- a/templates/net/brocade_fc_sw_snmpv2/README.md
+++ /dev/null
@@ -1,98 +0,0 @@
-
-# Template Net Brocade FC SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-https://community.brocade.com/dtscp75322/attachments/dtscp75322/fibre/25235/1/FOS_MIB_Reference_v740.pdf
-
-This template was tested on:
-
-- Brocade 6520, version v7.4.1c
-- Brocade 300, version v7.0.0c
-- Brocade BL 5480, version v6.3.1c
-
-## 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`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`2`|
-|{$FAN_OK_STATUS}|<p>-</p>|`4`|
-|{$HEALTH_CRIT_STATUS}|<p>-</p>|`4`|
-|{$HEALTH_WARN_STATUS:"offline"}|<p>-</p>|`2`|
-|{$HEALTH_WARN_STATUS:"testing"}|<p>-</p>|`3`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`2`|
-|{$PSU_OK_STATUS}|<p>-</p>|`4`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN_STATUS}|<p>-</p>|`5`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature Discovery|<p>-</p>|SNMP|temperature.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SENSOR_TYPE} MATCHES_REGEX `1`</p>|
-|PSU Discovery|<p>-</p>|SNMP|psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SENSOR_TYPE} MATCHES_REGEX `3`</p>|
-|FAN Discovery|<p>-</p>|SNMP|fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SENSOR_TYPE} MATCHES_REGEX `2`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: SW-MIB</p><p>System's CPU usage.</p>|SNMP|system.cpu.util[swCpuUsage.0]|
-|Fans|{#SENSOR_INFO}: Fan status|<p>MIB: SW-MIB</p>|SNMP|sensor.fan.status[swSensorStatus.{#SNMPINDEX}]|
-|Fans|{#SENSOR_INFO}: Fan speed|<p>MIB: SW-MIB</p><p>The current value (reading) of the sensor.</p><p>The value, -2147483648, represents an unknown quantity.</p><p>The fan value will be in RPM(revolution per minute)</p>|SNMP|sensor.fan.speed[swSensorValue.{#SNMPINDEX}]|
-|Inventory|Hardware serial number|<p>MIB: SW-MIB</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: SW-MIB</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|Memory utilization|<p>MIB: SW-MIB</p><p>Memory utilization in %</p>|SNMP|vm.memory.util[swMemUsage.0]|
-|Power_supply|{#SENSOR_INFO}: Power supply status|<p>MIB: SW-MIB</p>|SNMP|sensor.psu.status[swSensorStatus.{#SNMPINDEX}]|
-|Status|Overall system health status|<p>MIB: SW-MIB</p><p>The current operational status of the switch.The states are as follow:</p><p>online(1) means the switch is accessible by an external Fibre Channel port</p><p>offline(2) means the switch is not accessible</p><p>testing(3) means the switch is in a built-in test mode and is not accessible by an external Fibre Channel port</p><p>faulty(4) means the switch is not operational.</p>|SNMP|system.status[swOperStatus.0]|
-|Temperature|{#SENSOR_INFO}: Temperature|<p>MIB: SW-MIB</p><p>Temperature readings of testpoint: {#SENSOR_INFO}</p>|SNMP|sensor.temp.value[swSensorValue.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_INFO}: Temperature status|<p>MIB: SW-MIB</p><p>Temperature status of testpoint: {#SENSOR_INFO}</p>|SNMP|sensor.temp.status[swSensorStatus.{#SNMPINDEX}]|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[swCpuUsage.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|{#SENSOR_INFO}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SENSOR_INFO}: Fan is not in normal state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Fan is in critical state</p>|
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:vm.memory.util[swMemUsage.0].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#SENSOR_INFO}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SENSOR_INFO}: Power supply is not in normal state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[swSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Power supply is in critical state</p>|
-|System status is in critical state|<p>Please check the device for errors</p>|`{TEMPLATE_NAME:system.status[swOperStatus.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1`|HIGH||
-|System status is in warning state|<p>Please check the device for warnings</p>|`{TEMPLATE_NAME:system.status[swOperStatus.0].count(#1,{$HEALTH_WARN_STATUS:"offline"},eq)}=1 or {TEMPLATE_NAME:system.status[swOperStatus.0].count(#1,{$HEALTH_WARN_STATUS:"testing"},eq)}=1`|WARNING|<p>**Depends on**:</p><p>- System status is in critical state</p>|
-|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Brocade FC SNMPv2:sensor.temp.status[swSensorStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swSensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: no IF-MIB::ifAlias is available
- - Version: v6.3.1c, v7.0.0c, v7.4.1c
- - Device: all
-
diff --git a/templates/net/brocade_foundry_sw_snmp/README.md b/templates/net/brocade_foundry_sw_snmp/README.md
new file mode 100644
index 00000000000..8a66bfcfb8d
--- /dev/null
+++ b/templates/net/brocade_foundry_sw_snmp/README.md
@@ -0,0 +1,221 @@
+
+# Template Module Brocade_Foundry Performance SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### 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> |`{TEMPLATE_NAME:system.cpu.util[snAgGblCpuUtil1MinAvg.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[snAgGblDynMemUtil.0].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Net Brocade_Foundry Nonstackable SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+For devices(old Foundry devices, MLXe and so on) that doesn't support Stackable SNMP Tables: snChasFan2Table, snChasPwrSupply2Table,snAgentTemp2Table -
+FOUNDRY-SN-AGENT-MIB::snChasFanTable, snChasPwrSupplyTable,snAgentTempTable are used instead.
+For example:
+The objects in table snChasPwrSupply2Table is not supported on the NetIron and the FastIron SX devices.
+snChasFan2Table is not supported on on the NetIron devices.
+snAgentTemp2Table is not supported on old versions of MLXe
+
+This template was tested on:
+
+- Brocade MLXe, version (System Mode: MLX), IronWare Version V5.4.0eT163 Compiled on Oct 30 2013 at 16:40:24 labeled as V5.4.00e
+- Foundry FLS648, version Foundry Networks, Inc. FLS648, IronWare Version 04.1.00bT7e1 Compiled on Feb 29 2008 at 21:35:28 labeled as FGS04100b
+- Foundry FWSX424, version Foundry Networks, Inc. FWSX424, IronWare Version 02.0.00aT1e0 Compiled on Dec 10 2004 at 14:40:19 labeled as FWXS02000a
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$FAN_CRIT_STATUS} |<p>-</p> |`3` |
+|{$FAN_OK_STATUS} |<p>-</p> |`2` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`3` |
+|{$PSU_OK_STATUS} |<p>-</p> |`2` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Brocade_Foundry Performance SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|PSU Discovery |<p>snChasPwrSupplyTable: A table of each power supply information. Only installed power supply appears in a table row.</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>snChasFanTable: A table of each fan information. Only installed fan appears in a table row.</p> |SNMP |fan.discovery |
+|Temperature Discovery |<p>snAgentTempTable:Table to list temperatures of the modules in the device. This table is applicable to only those modules with temperature sensors.</p> |SNMP |temp.discovery |
+|Temperature Discovery Chassis |<p>Since temperature of the chassis is not available on all Brocade/Foundry hardware, this LLD is here to avoid unsupported items.</p> |SNMP |temp.chassis.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Fans |Fan {#FAN_INDEX}: Fan status |<p>MIB: FOUNDRY-SN-AGENT-MIB</p> |SNMP |sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}] |
+|Inventory |Hardware serial number |<p>MIB: FOUNDRY-SN-AGENT-MIB</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The version of the running software in the form'major.minor.maintenance[letters]'</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Power_supply |PSU {#PSU_INDEX}: Power supply status |<p>MIB: FOUNDRY-SN-AGENT-MIB</p> |SNMP |sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_DESCR}: Temperature |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>Temperature of the sensor represented by this row. Each unit is 0.5 degrees Celsius.</p> |SNMP |sensor.temp.value[snAgentTempValue.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.5`</p> |
+|Temperature |Chassis #{#SNMPINDEX}: Temperature |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>Temperature of the chassis. Each unit is 0.5 degrees Celcius.</p><p>Only management module built with temperature sensor hardware is applicable.</p><p>For those non-applicable management module, it returns no-such-name.</p> |SNMP |sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.5`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Fan {#FAN_INDEX}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Fan {#FAN_INDEX}: Fan is not in normal state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- Fan {#FAN_INDEX}: Fan is in critical state</p> |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|PSU {#PSU_INDEX}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|PSU {#PSU_INDEX}: Power supply is not in normal state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- PSU {#PSU_INDEX}: Power supply is in critical state</p> |
+|{#SENSOR_DESCR}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_DESCR}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+|Chassis #{#SNMPINDEX}: Temperature is above warning threshold: >{$TEMP_WARN:"Chassis"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:"Chassis"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:"Chassis"}-3` |WARNING |<p>**Depends on**:</p><p>- Chassis #{#SNMPINDEX}: Temperature is above critical threshold: >{$TEMP_CRIT:"Chassis"}</p> |
+|Chassis #{#SNMPINDEX}: Temperature is above critical threshold: >{$TEMP_CRIT:"Chassis"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:"Chassis"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:"Chassis"}-3` |HIGH | |
+|Chassis #{#SNMPINDEX}: Temperature is too low: <{$TEMP_CRIT_LOW:"Chassis"} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:"Chassis"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:"Chassis"}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Net Brocade_Foundry Stackable SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+For devices(most of the IronWare Brocade devices) that support Stackable SNMP Tables in FOUNDRY-SN-AGENT-MIB: snChasFan2Table, snChasPwrSupply2Table,snAgentTemp2Table - so objects from all Stack members are provided.
+
+This template was tested on:
+
+- Brocade ICX7250-48, version ICX7250-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k
+- Brocade ICX7250-48(Stacked), version Stacking System ICX7250-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k
+- Brocade ICX7450-48(Stacked), version Stacking System ICX7450-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k"
+- Brocade ICX7250-48(Stacked), version Stacking System ICX7250-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k
+- Brocade ICX7450-48F(Stacked), version Stacking System ICX7750-48F, IronWare Version 08.0.40bT203 Compiled on Oct 20 2016 at 23:48:43 labeled as SWR08040b
+- Brocade ICX 6600, version
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$FAN_CRIT_STATUS} |<p>-</p> |`3` |
+|{$FAN_OK_STATUS} |<p>-</p> |`2` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`3` |
+|{$PSU_OK_STATUS} |<p>-</p> |`2` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Brocade_Foundry Performance SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|PSU Discovery |<p>snChasPwrSupply2Table: A table of each power supply information for each unit. Only installed power supply appears in a table row.</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>snChasFan2Table: A table of each fan information for each unit. Only installed fan appears in a table row.</p> |SNMP |fan.discovery |
+|Temperature Discovery |<p>snAgentTemp2Table:Table to list temperatures of the modules in the device for each unit. This table is applicable to only those modules with temperature sensors.</p> |SNMP |temp.discovery |
+|Stack Discovery |<p>Discovering snStackingConfigUnitTable for Model names</p> |SNMP |stack.discovery |
+|Chassis Discovery |<p>snChasUnitIndex: The index to chassis table.</p> |SNMP |chassis.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Fans |Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan status |<p>MIB: FOUNDRY-SN-AGENT-MIB</p> |SNMP |sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}] |
+|Inventory |Firmware version |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The version of the running software in the form 'major.minor.maintenance[letters]'</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Unit {#SNMPINDEX}: Hardware model name |<p>MIB: FOUNDRY-SN-STACKING-MIB</p><p>A description of the configured/active system type for each unit.</p> |SNMP |system.hw.model[snStackingConfigUnitType.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Unit {#SNMPVALUE}: Hardware serial number |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The serial number of the chassis for each unit. If the serial number is unknown or unavailable then the value should be a zero length string.</p> |SNMP |system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Power_supply |Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply status |<p>MIB: FOUNDRY-SN-AGENT-MIB</p> |SNMP |sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_DESCR}: Temperature |<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>Temperature of the sensor represented by this row. Each unit is 0.5 degrees Celsius.</p> |SNMP |sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.5`</p> |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is not in normal state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is in critical state</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Unit {#SNMPVALUE}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is not in normal state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is in critical state</p> |
+|{#SENSOR_DESCR}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_DESCR}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: Correct fan(returns fan status as 'other(1)' and temperature (returns 0) for the non-master Switches are not available in SNMP
+ - Version: Version 08.0.40b and above
+ - Device: ICX 7750 in stack
+
diff --git a/templates/net/brocade_foundry_sw_snmpv2/template_net_brocade_foundry_sw_snmpv2.xml b/templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.xml
index 4941f5e4db5..dfde9e10049 100644
--- a/templates/net/brocade_foundry_sw_snmpv2/template_net_brocade_foundry_sw_snmpv2.xml
+++ b/templates/net/brocade_foundry_sw_snmp/template_net_brocade_foundry_sw_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:12Z</date>
<groups>
<group>
<name>Templates/Modules</name>
@@ -12,14 +12,14 @@
</groups>
<templates>
<template>
- <template>Template Module Brocade_Foundry Performance SNMPv2</template>
- <name>Template Module Brocade_Foundry Performance SNMPv2</name>
+ <template>Template Module Brocade_Foundry Performance SNMP</template>
+ <name>Template Module Brocade_Foundry Performance SNMP</name>
<description>Template Module Brocade_Foundry Performance&#13;
&#13;
MIBs used:&#13;
FOUNDRY-SN-AGENT-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -36,8 +36,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.2.1.52.0</snmp_oid>
<key>system.cpu.util[snAgGblCpuUtil1MinAvg.0]</key>
<history>7d</history>
@@ -62,8 +61,7 @@ The statistics collection of 1 minute CPU utilization.</description>
</item>
<item>
<name>Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.2.1.53.0</snmp_oid>
<key>vm.memory.util[snAgGblDynMemUtil.0]</key>
<history>7d</history>
@@ -100,23 +98,23 @@ For NI platforms, refer to snAgentBrdMemoryUtil100thPercent</description>
</macros>
</template>
<template>
- <template>Template Net Brocade_Foundry Nonstackable SNMPv2</template>
- <name>Template Net Brocade_Foundry Nonstackable SNMPv2</name>
+ <template>Template Net Brocade_Foundry Nonstackable SNMP</template>
+ <name>Template Net Brocade_Foundry Nonstackable SNMP</name>
<description>Template Net Brocade_Foundry Nonstackable&#13;
&#13;
MIBs used:&#13;
FOUNDRY-SN-AGENT-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Brocade_Foundry Performance SNMPv2</name>
+ <name>Template Module Brocade_Foundry Performance SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -141,8 +139,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.2.1.11.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -175,8 +172,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.1.2.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -210,8 +206,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#FAN_INDEX},1.3.6.1.4.1.1991.1.1.1.3.1.1.1]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -219,8 +214,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
<item_prototypes>
<item_prototype>
<name>Fan {#FAN_INDEX}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.3.1.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -252,7 +246,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
<dependencies>
<dependency>
<name>Fan {#FAN_INDEX}: Fan is in critical state</name>
- <expression>{Template Net Brocade_Foundry Nonstackable SNMPv2:sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade_Foundry Nonstackable SNMP:sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -262,8 +256,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#PSU_INDEX},1.3.6.1.4.1.1991.1.1.1.2.1.1.1]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -271,8 +264,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
<item_prototypes>
<item_prototype>
<name>PSU {#PSU_INDEX}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.2.1.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -304,7 +296,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
<dependencies>
<dependency>
<name>PSU {#PSU_INDEX}: Power supply is in critical state</name>
- <expression>{Template Net Brocade_Foundry Nonstackable SNMPv2:sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade_Foundry Nonstackable SNMP:sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -314,8 +306,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery Chassis</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1991.1.1.1.1.18]</snmp_oid>
<key>temp.chassis.discovery</key>
<delay>1h</delay>
@@ -323,8 +314,7 @@ The version of the running software in the form'major.minor.maintenance[letters]
<item_prototypes>
<item_prototype>
<name>Chassis #{#SNMPINDEX}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.1.18.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -357,8 +347,8 @@ For those non-applicable management module, it returns no-such-name.</descriptio
<dependencies>
<dependency>
<name>Chassis #{#SNMPINDEX}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:"Chassis"}</name>
- <expression>{Template Net Brocade_Foundry Nonstackable SNMPv2:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:"Chassis"}</expression>
- <recovery_expression>{Template Net Brocade_Foundry Nonstackable SNMPv2:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:"Chassis"}-3</recovery_expression>
+ <expression>{Template Net Brocade_Foundry Nonstackable SNMP:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:"Chassis"}</expression>
+ <recovery_expression>{Template Net Brocade_Foundry Nonstackable SNMP:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:"Chassis"}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -385,8 +375,7 @@ For those non-applicable management module, it returns no-such-name.</descriptio
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_DESCR},1.3.6.1.4.1.1991.1.1.2.13.1.1.3]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -394,8 +383,7 @@ For those non-applicable management module, it returns no-such-name.</descriptio
<item_prototypes>
<item_prototype>
<name>{#SENSOR_DESCR}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.2.13.1.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[snAgentTempValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -426,8 +414,8 @@ Temperature of the sensor represented by this row. Each unit is 0.5 degrees Cels
<dependencies>
<dependency>
<name>{#SENSOR_DESCR}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Brocade_Foundry Nonstackable SNMPv2:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Brocade_Foundry Nonstackable SNMPv2:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Brocade_Foundry Nonstackable SNMP:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Brocade_Foundry Nonstackable SNMP:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -485,8 +473,8 @@ Temperature of the sensor represented by this row. Each unit is 0.5 degrees Cels
</macros>
</template>
<template>
- <template>Template Net Brocade_Foundry Stackable SNMPv2</template>
- <name>Template Net Brocade_Foundry Stackable SNMPv2</name>
+ <template>Template Net Brocade_Foundry Stackable SNMP</template>
+ <name>Template Net Brocade_Foundry Stackable SNMP</name>
<description>Template Brocade_Foundry Stackable&#13;
&#13;
MIBs used:&#13;
@@ -499,16 +487,16 @@ Known Issues:&#13;
Version: Version 08.0.40b and above&#13;
Device: ICX 7750 in stack&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Brocade_Foundry Performance SNMPv2</name>
+ <name>Template Module Brocade_Foundry Performance SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -533,8 +521,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.2.1.11.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -569,8 +556,7 @@ The version of the running software in the form 'major.minor.maintenance[letters
<discovery_rules>
<discovery_rule>
<name>Chassis Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1991.1.1.1.4.1.1.1]</snmp_oid>
<key>chassis.discovery</key>
<delay>1h</delay>
@@ -578,8 +564,7 @@ The version of the running software in the form 'major.minor.maintenance[letters
<item_prototypes>
<item_prototype>
<name>Unit {#SNMPVALUE}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.4.1.1.2.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -613,8 +598,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
</discovery_rule>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#FAN_UNIT},1.3.6.1.4.1.1991.1.1.1.3.2.1.1,{#FAN_INDEX},1.3.6.1.4.1.1991.1.1.1.3.2.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -622,8 +606,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
<item_prototypes>
<item_prototype>
<name>Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.3.2.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -655,7 +638,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
<dependencies>
<dependency>
<name>Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is in critical state</name>
- <expression>{Template Net Brocade_Foundry Stackable SNMPv2:sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade_Foundry Stackable SNMP:sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -665,8 +648,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#PSU_UNIT},1.3.6.1.4.1.1991.1.1.1.2.2.1.1,{#PSU_INDEX},1.3.6.1.4.1.1991.1.1.1.2.2.1.2]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -674,8 +656,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
<item_prototypes>
<item_prototype>
<name>Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.1.2.2.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -707,7 +688,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
<dependencies>
<dependency>
<name>Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is in critical state</name>
- <expression>{Template Net Brocade_Foundry Stackable SNMPv2:sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Brocade_Foundry Stackable SNMP:sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -717,8 +698,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
</discovery_rule>
<discovery_rule>
<name>Stack Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1991.1.1.3.31.2.1.1.5]</snmp_oid>
<key>stack.discovery</key>
<delay>1h</delay>
@@ -726,8 +706,7 @@ The serial number of the chassis for each unit. If the serial number is unknown
<item_prototypes>
<item_prototype>
<name>Unit {#SNMPINDEX}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.3.31.2.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[snStackingConfigUnitType.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -752,8 +731,7 @@ A description of the configured/active system type for each unit.</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_DESCR},1.3.6.1.4.1.1991.1.1.2.13.3.1.4]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -761,8 +739,7 @@ A description of the configured/active system type for each unit.</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_DESCR}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1991.1.1.2.13.3.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -793,8 +770,8 @@ Temperature of the sensor represented by this row. Each unit is 0.5 degrees Cels
<dependencies>
<dependency>
<name>{#SENSOR_DESCR}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Brocade_Foundry Stackable SNMPv2:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Brocade_Foundry Stackable SNMPv2:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Brocade_Foundry Stackable SNMP:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Brocade_Foundry Stackable SNMP:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -862,7 +839,7 @@ Temperature of the sensor represented by this row. Each unit is 0.5 degrees Cels
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Module Brocade_Foundry Performance SNMPv2</host>
+ <host>Template Module Brocade_Foundry Performance SNMP</host>
<key>system.cpu.util[snAgGblCpuUtil1MinAvg.0]</key>
</item>
</graph_item>
@@ -877,7 +854,7 @@ Temperature of the sensor represented by this row. Each unit is 0.5 degrees Cels
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Module Brocade_Foundry Performance SNMPv2</host>
+ <host>Template Module Brocade_Foundry Performance SNMP</host>
<key>vm.memory.util[snAgGblDynMemUtil.0]</key>
</item>
</graph_item>
diff --git a/templates/net/brocade_foundry_sw_snmpv2/README.md b/templates/net/brocade_foundry_sw_snmpv2/README.md
deleted file mode 100644
index 97974bae73d..00000000000
--- a/templates/net/brocade_foundry_sw_snmpv2/README.md
+++ /dev/null
@@ -1,221 +0,0 @@
-
-# Template Module Brocade_Foundry Performance SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### 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>|`{TEMPLATE_NAME:system.cpu.util[snAgGblCpuUtil1MinAvg.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[snAgGblDynMemUtil.0].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Net Brocade_Foundry Nonstackable SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-For devices(old Foundry devices, MLXe and so on) that doesn't support Stackable SNMP Tables: snChasFan2Table, snChasPwrSupply2Table,snAgentTemp2Table -
-FOUNDRY-SN-AGENT-MIB::snChasFanTable, snChasPwrSupplyTable,snAgentTempTable are used instead.
-For example:
-The objects in table snChasPwrSupply2Table is not supported on the NetIron and the FastIron SX devices.
-snChasFan2Table is not supported on on the NetIron devices.
-snAgentTemp2Table is not supported on old versions of MLXe
-
-This template was tested on:
-
-- Brocade MLXe, version (System Mode: MLX), IronWare Version V5.4.0eT163 Compiled on Oct 30 2013 at 16:40:24 labeled as V5.4.00e
-- Foundry FLS648, version Foundry Networks, Inc. FLS648, IronWare Version 04.1.00bT7e1 Compiled on Feb 29 2008 at 21:35:28 labeled as FGS04100b
-- Foundry FWSX424, version Foundry Networks, Inc. FWSX424, IronWare Version 02.0.00aT1e0 Compiled on Dec 10 2004 at 14:40:19 labeled as FWXS02000a
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`3`|
-|{$FAN_OK_STATUS}|<p>-</p>|`2`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`3`|
-|{$PSU_OK_STATUS}|<p>-</p>|`2`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Brocade_Foundry Performance SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|PSU Discovery|<p>snChasPwrSupplyTable: A table of each power supply information. Only installed power supply appears in a table row.</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>snChasFanTable: A table of each fan information. Only installed fan appears in a table row.</p>|SNMP|fan.discovery|
-|Temperature Discovery|<p>snAgentTempTable:Table to list temperatures of the modules in the device. This table is applicable to only those modules with temperature sensors.</p>|SNMP|temp.discovery|
-|Temperature Discovery Chassis|<p>Since temperature of the chassis is not available on all Brocade/Foundry hardware, this LLD is here to avoid unsupported items.</p>|SNMP|temp.chassis.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Fans|Fan {#FAN_INDEX}: Fan status|<p>MIB: FOUNDRY-SN-AGENT-MIB</p>|SNMP|sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}]|
-|Inventory|Hardware serial number|<p>MIB: FOUNDRY-SN-AGENT-MIB</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The version of the running software in the form'major.minor.maintenance[letters]'</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Power_supply|PSU {#PSU_INDEX}: Power supply status|<p>MIB: FOUNDRY-SN-AGENT-MIB</p>|SNMP|sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_DESCR}: Temperature|<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>Temperature of the sensor represented by this row. Each unit is 0.5 degrees Celsius.</p>|SNMP|sensor.temp.value[snAgentTempValue.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.5`</p>|
-|Temperature|Chassis #{#SNMPINDEX}: Temperature|<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>Temperature of the chassis. Each unit is 0.5 degrees Celcius.</p><p>Only management module built with temperature sensor hardware is applicable.</p><p>For those non-applicable management module, it returns no-such-name.</p>|SNMP|sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.5`</p>|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Fan {#FAN_INDEX}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Fan {#FAN_INDEX}: Fan is not in normal state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- Fan {#FAN_INDEX}: Fan is in critical state</p>|
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|PSU {#PSU_INDEX}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|PSU {#PSU_INDEX}: Power supply is not in normal state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- PSU {#PSU_INDEX}: Power supply is in critical state</p>|
-|{#SENSOR_DESCR}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_DESCR}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTempValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-|Chassis #{#SNMPINDEX}: Temperature is above warning threshold: >{$TEMP_WARN:"Chassis"}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:"Chassis"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:"Chassis"}-3`|WARNING|<p>**Depends on**:</p><p>- Chassis #{#SNMPINDEX}: Temperature is above critical threshold: >{$TEMP_CRIT:"Chassis"}</p>|
-|Chassis #{#SNMPINDEX}: Temperature is above critical threshold: >{$TEMP_CRIT:"Chassis"}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:"Chassis"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:"Chassis"}-3`|HIGH||
-|Chassis #{#SNMPINDEX}: Temperature is too low: <{$TEMP_CRIT_LOW:"Chassis"}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:"Chassis"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:"Chassis"}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Net Brocade_Foundry Stackable SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-For devices(most of the IronWare Brocade devices) that support Stackable SNMP Tables in FOUNDRY-SN-AGENT-MIB: snChasFan2Table, snChasPwrSupply2Table,snAgentTemp2Table - so objects from all Stack members are provided.
-
-This template was tested on:
-
-- Brocade ICX7250-48, version ICX7250-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k
-- Brocade ICX7250-48(Stacked), version Stacking System ICX7250-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k
-- Brocade ICX7450-48(Stacked), version Stacking System ICX7450-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k"
-- Brocade ICX7250-48(Stacked), version Stacking System ICX7250-48, IronWare Version 08.0.30kT211 Compiled on Oct 18 2016 at 05:40:38 labeled as SPS08030k
-- Brocade ICX7450-48F(Stacked), version Stacking System ICX7750-48F, IronWare Version 08.0.40bT203 Compiled on Oct 20 2016 at 23:48:43 labeled as SWR08040b
-- Brocade ICX 6600, version
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`3`|
-|{$FAN_OK_STATUS}|<p>-</p>|`2`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`3`|
-|{$PSU_OK_STATUS}|<p>-</p>|`2`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Brocade_Foundry Performance SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|PSU Discovery|<p>snChasPwrSupply2Table: A table of each power supply information for each unit. Only installed power supply appears in a table row.</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>snChasFan2Table: A table of each fan information for each unit. Only installed fan appears in a table row.</p>|SNMP|fan.discovery|
-|Temperature Discovery|<p>snAgentTemp2Table:Table to list temperatures of the modules in the device for each unit. This table is applicable to only those modules with temperature sensors.</p>|SNMP|temp.discovery|
-|Stack Discovery|<p>Discovering snStackingConfigUnitTable for Model names</p>|SNMP|stack.discovery|
-|Chassis Discovery|<p>snChasUnitIndex: The index to chassis table.</p>|SNMP|chassis.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Fans|Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan status|<p>MIB: FOUNDRY-SN-AGENT-MIB</p>|SNMP|sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}]|
-|Inventory|Firmware version|<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The version of the running software in the form 'major.minor.maintenance[letters]'</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Unit {#SNMPINDEX}: Hardware model name|<p>MIB: FOUNDRY-SN-STACKING-MIB</p><p>A description of the configured/active system type for each unit.</p>|SNMP|system.hw.model[snStackingConfigUnitType.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Unit {#SNMPVALUE}: Hardware serial number|<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>The serial number of the chassis for each unit. If the serial number is unknown or unavailable then the value should be a zero length string.</p>|SNMP|system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Power_supply|Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply status|<p>MIB: FOUNDRY-SN-AGENT-MIB</p>|SNMP|sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_DESCR}: Temperature|<p>MIB: FOUNDRY-SN-AGENT-MIB</p><p>Temperature of the sensor represented by this row. Each unit is 0.5 degrees Celsius.</p>|SNMP|sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.5`</p>|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is not in normal state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[snChasFan2OperStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- Unit {#FAN_UNIT} Fan {#FAN_INDEX}: Fan is in critical state</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Unit {#SNMPVALUE}: Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[snChasUnitSerNum.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is not in normal state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[snChasPwrSupply2OperStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- Unit {#PSU_UNIT} PSU {#PSU_INDEX}: Power supply is in critical state</p>|
-|{#SENSOR_DESCR}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_DESCR}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[snAgentTemp2Value.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: Correct fan(returns fan status as 'other(1)' and temperature (returns 0) for the non-master Switches are not available in SNMP
- - Version: Version 08.0.40b and above
- - Device: ICX 7750 in stack
-
diff --git a/templates/net/cisco_snmp/README.md b/templates/net/cisco_snmp/README.md
new file mode 100644
index 00000000000..4d7ed2decb1
--- /dev/null
+++ b/templates/net/cisco_snmp/README.md
@@ -0,0 +1,421 @@
+
+# Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### 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> |`{TEMPLATE_NAME:vm.memory.util[vm.memory.util.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Module Cisco CISCO-PROCESS-MIB SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### 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> |`{TEMPLATE_NAME:system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### 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> |`{TEMPLATE_NAME:system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Module Cisco OLD-CISCO-CPU-MIB SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### 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> |`{TEMPLATE_NAME:system.cpu.util[avgBusy5].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Module Cisco Inventory SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+
+## 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>- B: {#ENT_SN} MATCHES_REGEX `.+`</p><p>- A: {#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> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>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> |`{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>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> |`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Module Cisco CISCO-ENVMON-MIB SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### 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|
+|----|-----------|----|----|
+|Temperature Discovery |<p>Discovery of ciscoEnvMonTemperatureTable (ciscoEnvMonTemperatureDescr), a table of ambient temperature status</p><p>maintained by the environmental monitor.</p> |SNMP |temperature.discovery |
+|PSU Discovery |<p>The table of power supply status maintained by the environmental monitor card.</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>The table of fan status maintained by the environmental monitor.</p> |SNMP |fan.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> |`{TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"critical"},eq)}=1 or {TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"shutdown"},eq)}=1` |AVERAGE | |
+|{#SENSOR_INFO}: Fan is in warning state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_WARN_STATUS:"warning"},eq)}=1 or {TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_WARN_STATUS:"notFunctioning"},eq)}=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> |`{TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"critical"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"shutdown"},eq)}=1` |AVERAGE | |
+|{#SENSOR_INFO}: Power supply is in warning state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS:"warning"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS:"notFunctioning"},eq)}=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> |`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:"{#SNMPVALUE}"} or {Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(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> |`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:"{#SNMPVALUE}"} or {Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS} or {Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_DISASTER_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:"{#SNMPVALUE}"}-3` |HIGH | |
+|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Net Cisco IOS SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+Refer to the vendor documentation.
+
+## Zabbix configuration
+
+No specific Zabbix configuration is required.
+
+
+## Template links
+
+|Name|
+|----|
+|Template Module Cisco CISCO-ENVMON-MIB SNMP |
+|Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP |
+|Template Module Cisco CISCO-PROCESS-MIB SNMP |
+|Template Module Cisco Inventory SNMP |
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: no if(in|out)(Errors|Discards) are available for vlan ifType
+ - Version: IOS for example: 12.1(22)EA11, 15.4(3)M2
+ - Device: C2911, C7600
+
+# Template Net Cisco IOS versions 12.0_3_T-12.2_3.5 SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+
+## Template links
+
+|Name|
+|----|
+|Template Module Cisco CISCO-ENVMON-MIB SNMP |
+|Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP |
+|Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP |
+|Template Module Cisco Inventory SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+# Template Net Cisco IOS prior to 12.0_3_T SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+
+## Template links
+
+|Name|
+|----|
+|Template Module Cisco CISCO-ENVMON-MIB SNMP |
+|Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP |
+|Template Module Cisco Inventory SNMP |
+|Template Module Cisco OLD-CISCO-CPU-MIB SNMP |
+|Template Module Generic SNMP |
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/cisco_snmpv2/template_net_cisco_snmpv2.xml b/templates/net/cisco_snmp/template_net_cisco_snmp.xml
index f7a1292c4cb..28a697eecc7 100644
--- a/templates/net/cisco_snmpv2/template_net_cisco_snmpv2.xml
+++ b/templates/net/cisco_snmp/template_net_cisco_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:18Z</date>
<groups>
<group>
<name>Templates/Modules</name>
@@ -12,14 +12,14 @@
</groups>
<templates>
<template>
- <template>Template Module Cisco CISCO-ENVMON-MIB SNMPv2</template>
- <name>Template Module Cisco CISCO-ENVMON-MIB SNMPv2</name>
+ <template>Template Module Cisco CISCO-ENVMON-MIB SNMP</template>
+ <name>Template Module Cisco CISCO-ENVMON-MIB SNMP</name>
<description>Template Cisco CISCO-ENVMON-MIB&#13;
&#13;
MIBs used:&#13;
CISCO-ENVMON-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -39,8 +39,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_INFO},1.3.6.1.4.1.9.9.13.1.4.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -48,8 +47,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.13.1.4.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -81,7 +79,7 @@ Template tooling version used: 0.34</description>
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Fan is in critical state</name>
- <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"critical"},eq)}=1 or {Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"shutdown"},eq)}=1</expression>
+ <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"critical"},eq)}=1 or {Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"shutdown"},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -91,8 +89,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_INFO},1.3.6.1.4.1.9.9.13.1.5.1.2]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -100,8 +97,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.13.1.5.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -133,7 +129,7 @@ Template tooling version used: 0.34</description>
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Power supply is in critical state</name>
- <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"critical"},eq)}=1 or {Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"shutdown"},eq)}=1</expression>
+ <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"critical"},eq)}=1 or {Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"shutdown"},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -143,8 +139,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.13.1.3.1.2]</snmp_oid>
<key>temperature.discovery</key>
<delay>1h</delay>
@@ -153,8 +148,7 @@ maintained by the environmental monitor.</description>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.13.1.3.1.6.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -173,8 +167,7 @@ The current state of the test point being instrumented.</description>
</item_prototype>
<item_prototype>
<name>{#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.13.1.3.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -189,10 +182,10 @@ The current measurement of the test point being instrumented.</description>
</applications>
<trigger_prototypes>
<trigger_prototype>
- <expression>{avg(5m)}&lt;{$TEMP_CRIT_LOW:""}</expression>
+ <expression>{avg(5m)}&lt;{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{min(5m)}&gt;{$TEMP_CRIT_LOW:""}+3</recovery_expression>
- <name>{#SNMPVALUE}: Temperature is too low: &lt;{$TEMP_CRIT_LOW:""}</name>
+ <recovery_expression>{min(5m)}&gt;{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3</recovery_expression>
+ <name>{#SNMPVALUE}: Temperature is too low: &lt;{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>AVERAGE</priority>
</trigger_prototype>
@@ -201,37 +194,37 @@ The current measurement of the test point being instrumented.</description>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:"{#SNMPVALUE}"}&#13;
or&#13;
-{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}&#13;
+{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}&#13;
or&#13;
-{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_DISASTER_STATUS}</expression>
+{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_DISASTER_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
- <name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
+ <recovery_expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:"{#SNMPVALUE}"}-3</recovery_expression>
+ <name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:"{#SNMPVALUE}"}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>HIGH</priority>
<description>This trigger uses temperature sensor values as well as temperature sensor status if available</description>
</trigger_prototype>
<trigger_prototype>
- <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
+ <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:"{#SNMPVALUE}"}&#13;
or&#13;
-{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
+{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
- <name>{#SNMPVALUE}: Temperature is above warning threshold: &gt;{$TEMP_WARN:""}</name>
+ <recovery_expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:"{#SNMPVALUE}"}-3</recovery_expression>
+ <name>{#SNMPVALUE}: Temperature is above warning threshold: &gt;{$TEMP_WARN:"{#SNMPVALUE}"}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
<description>This trigger uses temperature sensor values as well as temperature sensor status if available</description>
<dependencies>
<dependency>
- <name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:"{#SNMPVALUE}"}</name>
+ <expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:"{#SNMPVALUE}"}&#13;
or&#13;
-{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}&#13;
+{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}&#13;
or&#13;
-{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_DISASTER_STATUS}</expression>
- <recovery_expression>{Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_DISASTER_STATUS}</expression>
+ <recovery_expression>{Template Module Cisco CISCO-ENVMON-MIB SNMP:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:"{#SNMPVALUE}"}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -306,14 +299,14 @@ or&#13;
</macros>
</template>
<template>
- <template>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2</template>
- <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2</name>
+ <template>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP</template>
+ <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP</name>
<description>Template Cisco CISCO-MEMORY-POOL-MIB&#13;
&#13;
MIBs used:&#13;
CISCO-MEMORY-POOL-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -327,8 +320,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.48.1.1.1.2]</snmp_oid>
<key>memory.discovery</key>
<delay>1h</delay>
@@ -337,8 +329,7 @@ http://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Free memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.48.1.1.1.6.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.free[ciscoMemoryPoolFree.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -354,8 +345,7 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
</item_prototype>
<item_prototype>
<name>{#SNMPVALUE}: Used memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.48.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.used[ciscoMemoryPoolUsed.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -403,7 +393,7 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2</host>
+ <host>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP</host>
<key>vm.memory.util[vm.memory.util.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -420,14 +410,14 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
</macros>
</template>
<template>
- <template>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMPv2</template>
- <name>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMPv2</name>
+ <template>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP</template>
+ <name>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP</name>
<description>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5&#13;
&#13;
MIBs used:&#13;
CISCO-PROCESS-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -441,8 +431,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>CPU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.109.1.1.1.1.5]</snmp_oid>
<key>cpu.discovery</key>
<delay>1h</delay>
@@ -454,8 +443,7 @@ In case of a single CPU, cpmCPUTotalTable has only one entry.</description>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.109.1.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}]</key>
<delay>5m</delay>
@@ -495,7 +483,7 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMPv2</host>
+ <host>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP</host>
<key>system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -512,14 +500,14 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
</macros>
</template>
<template>
- <template>Template Module Cisco CISCO-PROCESS-MIB SNMPv2</template>
- <name>Template Module Cisco CISCO-PROCESS-MIB SNMPv2</name>
+ <template>Template Module Cisco CISCO-PROCESS-MIB SNMP</template>
+ <name>Template Module Cisco CISCO-PROCESS-MIB SNMP</name>
<description>Template Cisco CISCO-PROCESS-MIB&#13;
&#13;
MIBs used:&#13;
CISCO-PROCESS-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -533,8 +521,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>CPU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.9.9.109.1.1.1.1.5]</snmp_oid>
<key>cpu.discovery</key>
<delay>1h</delay>
@@ -546,8 +533,7 @@ In case of a single CPU, cpmCPUTotalTable has only one entry.</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPINDEX}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.9.109.1.1.1.1.8.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}]</key>
<delay>5m</delay>
@@ -583,7 +569,7 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Module Cisco CISCO-PROCESS-MIB SNMPv2</host>
+ <host>Template Module Cisco CISCO-PROCESS-MIB SNMP</host>
<key>system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -600,15 +586,15 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
</macros>
</template>
<template>
- <template>Template Module Cisco Inventory SNMPv2</template>
- <name>Template Module Cisco Inventory SNMPv2</name>
+ <template>Template Module Cisco Inventory SNMP</template>
+ <name>Template Module Cisco Inventory SNMP</name>
<description>Template Cisco Inventory&#13;
&#13;
MIBs used:&#13;
ENTITY-MIB&#13;
SNMPv2-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -622,8 +608,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.13.1</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -646,8 +631,7 @@ Template tooling version used: 0.34</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.1</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -679,8 +663,7 @@ Template tooling version used: 0.34</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.sw.os[sysDescr.0]</key>
<delay>1h</delay>
@@ -720,8 +703,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>Entity Serial Numbers Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>entity_sn.discovery</key>
<delay>1h</delay>
@@ -743,8 +725,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -778,14 +759,14 @@ Template tooling version used: 0.34</description>
</discovery_rules>
</template>
<template>
- <template>Template Module Cisco OLD-CISCO-CPU-MIB SNMPv2</template>
- <name>Template Module Cisco OLD-CISCO-CPU-MIB SNMPv2</name>
+ <template>Template Module Cisco OLD-CISCO-CPU-MIB SNMP</template>
+ <name>Template Module Cisco OLD-CISCO-CPU-MIB SNMP</name>
<description>Template Cisco OLD-CISCO-CPU-MIB&#13;
&#13;
MIBs used:&#13;
OLD-CISCO-CPU-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<groups>
<group>
<name>Templates/Modules</name>
@@ -799,8 +780,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.9.2.1.58</snmp_oid>
<key>system.cpu.util[avgBusy5]</key>
<delay>5m</delay>
@@ -834,26 +814,26 @@ Reference: http://www.cisco.com/c/en/us/support/docs/ip/simple-network-managemen
</macros>
</template>
<template>
- <template>Template Net Cisco IOS prior to 12.0_3_T SNMPv2</template>
- <name>Template Net Cisco IOS prior to 12.0_3_T SNMPv2</name>
+ <template>Template Net Cisco IOS prior to 12.0_3_T SNMP</template>
+ <name>Template Net Cisco IOS prior to 12.0_3_T SNMP</name>
<description>Cisco IOS Software releases prior to 12.0(3)T&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Cisco CISCO-ENVMON-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-ENVMON-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco Inventory SNMPv2</name>
+ <name>Template Module Cisco Inventory SNMP</name>
</template>
<template>
- <name>Template Module Cisco OLD-CISCO-CPU-MIB SNMPv2</name>
+ <name>Template Module Cisco OLD-CISCO-CPU-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
</templates>
<groups>
@@ -863,8 +843,8 @@ Template tooling version used: 0.34</description>
</groups>
</template>
<template>
- <template>Template Net Cisco IOS SNMPv2</template>
- <name>Template Net Cisco IOS SNMPv2</name>
+ <template>Template Net Cisco IOS SNMP</template>
+ <name>Template Net Cisco IOS SNMP</name>
<description>Template Cisco IOS Software releases 12.2(3.5) or later&#13;
&#13;
Known Issues:&#13;
@@ -873,28 +853,28 @@ Known Issues:&#13;
Version: IOS for example: 12.1(22)EA11, 15.4(3)M2&#13;
Device: C2911, C7600&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Cisco CISCO-ENVMON-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-ENVMON-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco CISCO-PROCESS-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-PROCESS-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco Inventory SNMPv2</name>
+ <name>Template Module Cisco Inventory SNMP</name>
</template>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -904,29 +884,29 @@ Template tooling version used: 0.34</description>
</groups>
</template>
<template>
- <template>Template Net Cisco IOS versions 12.0_3_T-12.2_3.5 SNMPv2</template>
- <name>Template Net Cisco IOS versions 12.0_3_T-12.2_3.5 SNMPv2</name>
+ <template>Template Net Cisco IOS versions 12.0_3_T-12.2_3.5 SNMP</template>
+ <name>Template Net Cisco IOS versions 12.0_3_T-12.2_3.5 SNMP</name>
<description>Cisco IOS Software releases later to 12.0(3)T and prior to 12.2(3.5)&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Cisco CISCO-ENVMON-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-ENVMON-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2</name>
+ <name>Template Module Cisco CISCO-MEMORY-POOL-MIB SNMP</name>
</template>
<template>
- <name>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMPv2</name>
+ <name>Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMP</name>
</template>
<template>
- <name>Template Module Cisco Inventory SNMPv2</name>
+ <name>Template Module Cisco Inventory SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -946,7 +926,7 @@ Template tooling version used: 0.34</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Module Cisco OLD-CISCO-CPU-MIB SNMPv2</host>
+ <host>Template Module Cisco OLD-CISCO-CPU-MIB SNMP</host>
<key>system.cpu.util[avgBusy5]</key>
</item>
</graph_item>
diff --git a/templates/net/cisco_snmpv2/README.md b/templates/net/cisco_snmpv2/README.md
deleted file mode 100644
index 1b680797ab8..00000000000
--- a/templates/net/cisco_snmpv2/README.md
+++ /dev/null
@@ -1,421 +0,0 @@
-
-# Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### 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>|`{TEMPLATE_NAME:vm.memory.util[vm.memory.util.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Module Cisco CISCO-PROCESS-MIB SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### 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>|`{TEMPLATE_NAME:system.cpu.util[cpmCPUTotal5minRev.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### 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>|`{TEMPLATE_NAME:system.cpu.util[cpmCPUTotal5min.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Module Cisco OLD-CISCO-CPU-MIB SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### 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>|`{TEMPLATE_NAME:system.cpu.util[avgBusy5].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Module Cisco Inventory SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-
-## 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>- B: {#ENT_SN} MATCHES_REGEX `.+`</p><p>- A: {#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>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>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>|`{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>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>|`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Module Cisco CISCO-ENVMON-MIB SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### 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|
-|----|-----------|----|----|
-|Temperature Discovery|<p>Discovery of ciscoEnvMonTemperatureTable (ciscoEnvMonTemperatureDescr), a table of ambient temperature status</p><p>maintained by the environmental monitor.</p>|SNMP|temperature.discovery|
-|PSU Discovery|<p>The table of power supply status maintained by the environmental monitor card.</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>The table of fan status maintained by the environmental monitor.</p>|SNMP|fan.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>|`{TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"critical"},eq)}=1 or {TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"shutdown"},eq)}=1`|AVERAGE||
-|{#SENSOR_INFO}: Fan is in warning state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_WARN_STATUS:"warning"},eq)}=1 or {TEMPLATE_NAME:sensor.fan.status[ciscoEnvMonFanState.{#SNMPINDEX}].count(#1,{$FAN_WARN_STATUS:"notFunctioning"},eq)}=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>|`{TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"critical"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"shutdown"},eq)}=1`|AVERAGE||
-|{#SENSOR_INFO}: Power supply is in warning state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS:"warning"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[ciscoEnvMonSupplyState.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS:"notFunctioning"},eq)}=1`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Power supply is in critical state</p>|
-|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""} or {Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS} or {Template Module Cisco CISCO-ENVMON-MIB SNMPv2:sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}].last(0)}={$TEMP_DISASTER_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Net Cisco IOS SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-
-## Template links
-
-|Name|
-|----|
-|Template Module Cisco CISCO-ENVMON-MIB SNMPv2|
-|Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2|
-|Template Module Cisco CISCO-PROCESS-MIB SNMPv2|
-|Template Module Cisco Inventory SNMPv2|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: no if(in|out)(Errors|Discards) are available for vlan ifType
- - Version: IOS for example: 12.1(22)EA11, 15.4(3)M2
- - Device: C2911, C7600
-
-# Template Net Cisco IOS versions 12.0_3_T-12.2_3.5 SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-
-## Template links
-
-|Name|
-|----|
-|Template Module Cisco CISCO-ENVMON-MIB SNMPv2|
-|Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2|
-|Template Module Cisco CISCO-PROCESS-MIB IOS versions 12.0_3_T-12.2_3.5 SNMPv2|
-|Template Module Cisco Inventory SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-# Template Net Cisco IOS prior to 12.0_3_T SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-
-## Template links
-
-|Name|
-|----|
-|Template Module Cisco CISCO-ENVMON-MIB SNMPv2|
-|Template Module Cisco CISCO-MEMORY-POOL-MIB SNMPv2|
-|Template Module Cisco Inventory SNMPv2|
-|Template Module Cisco OLD-CISCO-CPU-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/dell_force_s_series_snmp/README.md b/templates/net/dell_force_s_series_snmp/README.md
new file mode 100644
index 00000000000..0c1f48399f0
--- /dev/null
+++ b/templates/net/dell_force_s_series_snmp/README.md
@@ -0,0 +1,78 @@
+
+# Template Net Dell Force S-Series SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`2` |
+|{$FAN_OK_STATUS} |<p>-</p> |`1` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`2` |
+|{$PSU_OK_STATUS} |<p>-</p> |`1` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`65` |
+|{$TEMP_WARN} |<p>-</p> |`55` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU and Memory and Flash Discovery |<p>-</p> |SNMP |module.discovery |
+|PSU Discovery |<p>A list of power supply residents in the S-series chassis.</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>-</p> |SNMP |fan.discovery |
+|Stack Unit Discovery |<p>-</p> |SNMP |stack.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |#{#SNMPINDEX}: CPU utilization |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>CPU utilization in percentage for last 1 minute.</p> |SNMP |system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}] |
+|Fans |Fan {#SNMPVALUE}: Fan status |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The status of the fan tray {#SNMPVALUE}.</p> |SNMP |sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}] |
+|Inventory |#{#SNMPVALUE}: Hardware model name |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The plugged-in model ID for this unit.</p> |SNMP |system.hw.model[chStackUnitModelID.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |#{#SNMPVALUE}: Hardware serial number |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The unit's serial number.</p> |SNMP |system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |#{#SNMPVALUE}: Hardware version(revision) |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The unit manufacturer's product revision</p> |SNMP |system.hw.version[chStackUnitProductRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |#{#SNMPVALUE}: Operating system |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>Current code version of this unit.</p> |SNMP |system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |#{#SNMPINDEX}: Memory utilization |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>Total memory usage in percentage.</p> |SNMP |vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}] |
+|Power_supply |PSU {#SNMPVALUE}: Power supply status |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The status of the power supply {#SNMPVALUE}</p> |SNMP |sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}] |
+|Temperature |Device {#SNMPVALUE}: Temperature |<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The temperature of the unit.</p> |SNMP |sensor.temp.value[chStackUnitTemp.{#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> |`{TEMPLATE_NAME:system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|Fan {#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Fan {#SNMPVALUE}: Fan is not in normal state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- Fan {#SNMPVALUE}: Fan is in critical state</p> |
+|#{#SNMPVALUE}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|#{#SNMPVALUE}: Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`{TEMPLATE_NAME:system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|#{#SNMPINDEX}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|PSU {#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|PSU {#SNMPVALUE}: Power supply is not in normal state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1` |INFO |<p>**Depends on**:</p><p>- PSU {#SNMPVALUE}: Power supply is in critical state</p> |
+|Device {#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- Device {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|Device {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|Device {#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/dell_force_s_series_snmpv2/template_net_dell_force_s_series_snmpv2.xml b/templates/net/dell_force_s_series_snmp/template_net_dell_force_s_series_snmp.xml
index 6a62ea9ed88..240416599cf 100644
--- a/templates/net/dell_force_s_series_snmpv2/template_net_dell_force_s_series_snmpv2.xml
+++ b/templates/net/dell_force_s_series_snmp/template_net_dell_force_s_series_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:11Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,23 +9,23 @@
</groups>
<templates>
<template>
- <template>Template Net Dell Force S-Series SNMPv2</template>
- <name>Template Net Dell Force S-Series SNMPv2</name>
+ <template>Template Net Dell Force S-Series SNMP</template>
+ <name>Template Net Dell Force S-Series SNMP</name>
<description>Template Dell Force S-Series&#13;
&#13;
MIBs used:&#13;
F10-S-SERIES-CHASSIS-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -56,16 +56,14 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.4.1.1]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>Fan {#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.4.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -98,7 +96,7 @@ The status of the fan tray {#SNMPVALUE}.</description>
<dependencies>
<dependency>
<name>Fan {#SNMPVALUE}: Fan is in critical state</name>
- <expression>{Template Net Dell Force S-Series SNMPv2:sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Dell Force S-Series SNMP:sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -108,16 +106,14 @@ The status of the fan tray {#SNMPVALUE}.</description>
</discovery_rule>
<discovery_rule>
<name>CPU and Memory and Flash Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.9.1.1]</snmp_oid>
<key>module.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>#{#SNMPINDEX}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.9.1.3.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -142,8 +138,7 @@ CPU utilization in percentage for last 1 minute.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPINDEX}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.9.1.5.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -176,7 +171,7 @@ Total memory usage in percentage.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Dell Force S-Series SNMPv2</host>
+ <host>Template Net Dell Force S-Series SNMP</host>
<key>system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -191,7 +186,7 @@ Total memory usage in percentage.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Dell Force S-Series SNMPv2</host>
+ <host>Template Net Dell Force S-Series SNMP</host>
<key>vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -201,8 +196,7 @@ Total memory usage in percentage.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.3.1.1]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -210,8 +204,7 @@ Total memory usage in percentage.</description>
<item_prototypes>
<item_prototype>
<name>PSU {#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.3.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -244,7 +237,7 @@ The status of the power supply {#SNMPVALUE}</description>
<dependencies>
<dependency>
<name>PSU {#SNMPVALUE}: Power supply is in critical state</name>
- <expression>{Template Net Dell Force S-Series SNMPv2:sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Dell Force S-Series SNMP:sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -254,16 +247,14 @@ The status of the power supply {#SNMPVALUE}</description>
</discovery_rule>
<discovery_rule>
<name>Stack Unit Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.2.1.2]</snmp_oid>
<key>stack.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>Device {#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.2.1.14.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -288,8 +279,8 @@ The temperature of the unit.</description>
<dependencies>
<dependency>
<name>Device {#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Dell Force S-Series SNMPv2:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Dell Force S-Series SNMPv2:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Dell Force S-Series SNMP:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Dell Force S-Series SNMP:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -314,8 +305,7 @@ The temperature of the unit.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.2.1.7.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[chStackUnitModelID.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -338,8 +328,7 @@ The plugged-in model ID for this unit.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.2.1.12.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -371,8 +360,7 @@ The unit's serial number.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.2.1.21.{#SNMPINDEX}</snmp_oid>
<key>system.hw.version[chStackUnitProductRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -395,8 +383,7 @@ The unit manufacturer's product revision</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.6027.3.10.1.2.2.1.10.{#SNMPINDEX}</snmp_oid>
<key>system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}]</key>
<delay>1h</delay>
diff --git a/templates/net/dell_force_s_series_snmpv2/README.md b/templates/net/dell_force_s_series_snmpv2/README.md
deleted file mode 100644
index 1b4f24deb4b..00000000000
--- a/templates/net/dell_force_s_series_snmpv2/README.md
+++ /dev/null
@@ -1,78 +0,0 @@
-
-# Template Net Dell Force S-Series SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT}|<p>-</p>|`90`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`2`|
-|{$FAN_OK_STATUS}|<p>-</p>|`1`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`2`|
-|{$PSU_OK_STATUS}|<p>-</p>|`1`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`65`|
-|{$TEMP_WARN}|<p>-</p>|`55`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU and Memory and Flash Discovery|<p>-</p>|SNMP|module.discovery|
-|PSU Discovery|<p>A list of power supply residents in the S-series chassis.</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>-</p>|SNMP|fan.discovery|
-|Stack Unit Discovery|<p>-</p>|SNMP|stack.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|#{#SNMPINDEX}: CPU utilization|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>CPU utilization in percentage for last 1 minute.</p>|SNMP|system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}]|
-|Fans|Fan {#SNMPVALUE}: Fan status|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The status of the fan tray {#SNMPVALUE}.</p>|SNMP|sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}]|
-|Inventory|#{#SNMPVALUE}: Hardware model name|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The plugged-in model ID for this unit.</p>|SNMP|system.hw.model[chStackUnitModelID.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|#{#SNMPVALUE}: Hardware serial number|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The unit's serial number.</p>|SNMP|system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|#{#SNMPVALUE}: Hardware version(revision)|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The unit manufacturer's product revision</p>|SNMP|system.hw.version[chStackUnitProductRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|#{#SNMPVALUE}: Operating system|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>Current code version of this unit.</p>|SNMP|system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|#{#SNMPINDEX}: Memory utilization|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>Total memory usage in percentage.</p>|SNMP|vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}]|
-|Power_supply|PSU {#SNMPVALUE}: Power supply status|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The status of the power supply {#SNMPVALUE}</p>|SNMP|sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}]|
-|Temperature|Device {#SNMPVALUE}: Temperature|<p>MIB: F10-S-SERIES-CHASSIS-MIB</p><p>The temperature of the unit.</p>|SNMP|sensor.temp.value[chStackUnitTemp.{#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>|`{TEMPLATE_NAME:system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|Fan {#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Fan {#SNMPVALUE}: Fan is not in normal state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}].count(#1,{$FAN_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- Fan {#SNMPVALUE}: Fan is in critical state</p>|
-|#{#SNMPVALUE}: Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|#{#SNMPVALUE}: Operating system description has changed|<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p>|`{TEMPLATE_NAME:system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|#{#SNMPINDEX}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|PSU {#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|PSU {#SNMPVALUE}: Power supply is not in normal state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}].count(#1,{$PSU_OK_STATUS},ne)}=1`|INFO|<p>**Depends on**:</p><p>- PSU {#SNMPVALUE}: Power supply is in critical state</p>|
-|Device {#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- Device {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|Device {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|Device {#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/dlink_des7200_snmp/README.md b/templates/net/dlink_des7200_snmp/README.md
new file mode 100644
index 00000000000..2f1b9b5625e
--- /dev/null
+++ b/templates/net/dlink_des7200_snmp/README.md
@@ -0,0 +1,73 @@
+
+# Template Net D-Link DES 7200 SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`5` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`5` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Memory Discovery |<p>-</p> |SNMP |memory.discovery |
+|Temperature Discovery |<p>-</p> |SNMP |temperature.discovery |
+|PSU Discovery |<p>-</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>-</p> |SNMP |fan.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: MY-PROCESS-MIB</p><p>CPU utilization in %</p> |SNMP |system.cpu.util[myCPUUtilization5Min.0] |
+|Fans |{#SNMPVALUE}: Fan status |<p>MIB: MY-SYSTEM-MIB</p> |SNMP |sensor.fan.status[mySystemFanIsNormal.{#SNMPINDEX}] |
+|Inventory |Hardware model name |<p>MIB: SNMPv2-MIB</p><p>A textual description of the entity. This value should</p><p>include the full name and version identification of the system's hardware type, software operating-system, and</p><p>networking software.</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Operating system |<p>MIB: MY-SYSTEM-MIB</p> |SNMP |system.sw.os[mySystemSwVersion.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |{#SNMPINDEX}: Memory utilization |<p>MIB: MY-MEMORY-MIB</p><p>This is the memory pool utilization currently.</p> |SNMP |vm.memory.util[myMemoryPoolCurrentUtilization.{#SNMPINDEX}] |
+|Power_supply |{#SNMPVALUE}: Power supply status |<p>MIB: MY-SYSTEM-MIB</p> |SNMP |sensor.psu.status[mySystemElectricalSourceIsNormal.{#SNMPINDEX}] |
+|Temperature |{#SNMPVALUE}: Temperature |<p>MIB: MY-SYSTEM-MIB</p><p>Return the current temperature of the FastSwitch.The temperature display is not supported for the current temperature returns to 0.</p> |SNMP |sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}] |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[myCPUUtilization5Min.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|{#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[mySystemFanIsNormal.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:system.sw.os[mySystemSwVersion.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[mySystemSwVersion.0].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#SNMPINDEX}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[myMemoryPoolCurrentUtilization.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[mySystemElectricalSourceIsNormal.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/dlink_des7200_snmpv2/template_net_dlink_des7200_snmpv2.xml b/templates/net/dlink_des7200_snmp/template_net_dlink_des7200_snmp.xml
index 6e2e42c1a93..76aa7113c69 100644
--- a/templates/net/dlink_des7200_snmpv2/template_net_dlink_des7200_snmpv2.xml
+++ b/templates/net/dlink_des7200_snmp/template_net_dlink_des7200_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:15Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net D-Link DES 7200 SNMPv2</template>
- <name>Template Net D-Link DES 7200 SNMPv2</name>
+ <template>Template Net D-Link DES 7200 SNMP</template>
+ <name>Template Net D-Link DES 7200 SNMP</name>
<description>Template D-Link DES 7200&#13;
&#13;
MIBs used:&#13;
@@ -20,13 +20,13 @@ MY-MEMORY-MIB&#13;
ENTITY-MIB&#13;
MY-SYSTEM-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -57,8 +57,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.10.97.2.36.1.1.3.0</snmp_oid>
<key>system.cpu.util[myCPUUtilization5Min.0]</key>
<history>7d</history>
@@ -83,8 +82,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.9.1</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -116,8 +114,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -143,8 +140,7 @@ networking software.</description>
</item>
<item>
<name>Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.8.1</snmp_oid>
<key>system.hw.version</key>
<delay>1h</delay>
@@ -166,8 +162,7 @@ networking software.</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.10.97.2.1.1.2.0</snmp_oid>
<key>system.sw.os[mySystemSwVersion.0]</key>
<delay>1h</delay>
@@ -202,16 +197,14 @@ networking software.</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.10.97.2.1.1.21.1.3]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.10.97.2.1.1.21.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[mySystemFanIsNormal.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -240,16 +233,14 @@ networking software.</description>
</discovery_rule>
<discovery_rule>
<name>Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.10.97.2.35.1.1.1.2]</snmp_oid>
<key>memory.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>{#SNMPINDEX}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.10.97.2.35.1.1.1.3.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[myMemoryPoolCurrentUtilization.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -282,7 +273,7 @@ This is the memory pool utilization currently.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net D-Link DES 7200 SNMPv2</host>
+ <host>Template Net D-Link DES 7200 SNMP</host>
<key>vm.memory.util[myMemoryPoolCurrentUtilization.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -292,16 +283,14 @@ This is the memory pool utilization currently.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.10.97.2.1.1.18.1.3]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.10.97.2.1.1.18.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[mySystemElectricalSourceIsNormal.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -330,16 +319,14 @@ This is the memory pool utilization currently.</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.10.97.2.1.1.23.1.2]</snmp_oid>
<key>temperature.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.10.97.2.1.1.23.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -364,8 +351,8 @@ Return the current temperature of the FastSwitch.The temperature display is not
<dependencies>
<dependency>
<name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net D-Link DES 7200 SNMPv2:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net D-Link DES 7200 SNMPv2:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net D-Link DES 7200 SNMP:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net D-Link DES 7200 SNMP:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -433,7 +420,7 @@ Return the current temperature of the FastSwitch.The temperature display is not
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net D-Link DES 7200 SNMPv2</host>
+ <host>Template Net D-Link DES 7200 SNMP</host>
<key>system.cpu.util[myCPUUtilization5Min.0]</key>
</item>
</graph_item>
diff --git a/templates/net/dlink_des7200_snmpv2/README.md b/templates/net/dlink_des7200_snmpv2/README.md
deleted file mode 100644
index 2604dbc98d2..00000000000
--- a/templates/net/dlink_des7200_snmpv2/README.md
+++ /dev/null
@@ -1,73 +0,0 @@
-
-# Template Net D-Link DES 7200 SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT}|<p>-</p>|`90`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`5`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`5`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Memory Discovery|<p>-</p>|SNMP|memory.discovery|
-|Temperature Discovery|<p>-</p>|SNMP|temperature.discovery|
-|PSU Discovery|<p>-</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>-</p>|SNMP|fan.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: MY-PROCESS-MIB</p><p>CPU utilization in %</p>|SNMP|system.cpu.util[myCPUUtilization5Min.0]|
-|Fans|{#SNMPVALUE}: Fan status|<p>MIB: MY-SYSTEM-MIB</p>|SNMP|sensor.fan.status[mySystemFanIsNormal.{#SNMPINDEX}]|
-|Inventory|Hardware model name|<p>MIB: SNMPv2-MIB</p><p>A textual description of the entity. This value should</p><p>include the full name and version identification of the system's hardware type, software operating-system, and</p><p>networking software.</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Operating system|<p>MIB: MY-SYSTEM-MIB</p>|SNMP|system.sw.os[mySystemSwVersion.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|{#SNMPINDEX}: Memory utilization|<p>MIB: MY-MEMORY-MIB</p><p>This is the memory pool utilization currently.</p>|SNMP|vm.memory.util[myMemoryPoolCurrentUtilization.{#SNMPINDEX}]|
-|Power_supply|{#SNMPVALUE}: Power supply status|<p>MIB: MY-SYSTEM-MIB</p>|SNMP|sensor.psu.status[mySystemElectricalSourceIsNormal.{#SNMPINDEX}]|
-|Temperature|{#SNMPVALUE}: Temperature|<p>MIB: MY-SYSTEM-MIB</p><p>Return the current temperature of the FastSwitch.The temperature display is not supported for the current temperature returns to 0.</p>|SNMP|sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}]|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[myCPUUtilization5Min.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|{#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[mySystemFanIsNormal.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:system.sw.os[mySystemSwVersion.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[mySystemSwVersion.0].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#SNMPINDEX}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[myMemoryPoolCurrentUtilization.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[mySystemElectricalSourceIsNormal.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mySystemTemperatureCurrent.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/dlink_des_snmp/README.md b/templates/net/dlink_des_snmp/README.md
new file mode 100644
index 00000000000..b7340c048d8
--- /dev/null
+++ b/templates/net/dlink_des_snmp/README.md
@@ -0,0 +1,82 @@
+
+# Template Net D-Link DES_DGS Switch SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## 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` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`2` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`4` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Memory Discovery |<p>-</p> |SNMP |memory.discovery |
+|Temperature Discovery |<p>-</p> |SNMP |temperature.discovery |
+|PSU Discovery |<p>swPowerID of EQUIPMENT-MIB::swPowerTable</p> |SNMP |psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#STATUS} MATCHES_REGEX `[^0]`</p> |
+|FAN Discovery |<p>swFanID of EQUIPMENT-MIB::swFanTable</p> |SNMP |fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#STATUS} MATCHES_REGEX `[^0]`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: DLINK-AGENT-MIB</p><p>The unit of time is 1 minute. The value will be between 0% (idle) and 100%(very busy).</p> |SNMP |system.cpu.util[agentCPUutilizationIn1min.0] |
+|Fans |#{#SNMPVALUE}: Fan status |<p>MIB: EQUIPMENT-MIB</p><p>Indicates the current fan status.</p><p>speed-0 : If the fan function is normal and the fan does not spin due to the temperature not reaching the threshold, the status of the fan is speed 0.</p><p>speed-low : Fan spin using the lowest speed.</p><p>speed-middle: Fan spin using the middle speed.</p><p>speed-high : Fan spin using the highest speed.</p> |SNMP |sensor.fan.status[swFanStatus.{#SNMPINDEX}] |
+|Inventory |Hardware model name |<p>MIB: SNMPv2-MIB</p><p>A textual description of the entity. This value should</p><p>include the full name and version identification of the system's hardware type, software operating-system, and</p><p>networking software.</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware serial number |<p>MIB: DLINK-AGENT-MIB</p><p>A text string containing the serial number of this device.</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |#{#SNMPVALUE}: Memory utilization |<p>MIB: DLINK-AGENT-MIB</p><p>The percentage of used DRAM memory of the total DRAM memory available.The value will be between 0%(idle) and 100%(very busy)</p> |SNMP |vm.memory.util[agentDRAMutilization.{#SNMPINDEX}] |
+|Power_supply |#{#SNMPVALUE}: Power supply status |<p>MIB: EQUIPMENT-MIB</p><p>Indicates the current power status.</p><p>lowVoltage : The voltage of the power unit is too low.</p><p>overCurrent: The current of the power unit is too high.</p><p>working : The power unit is working normally.</p><p>fail : The power unit has failed.</p><p>connect : The power unit is connected but not powered on.</p><p>disconnect : The power unit is not connected.</p> |SNMP |sensor.psu.status[swPowerStatus.{#SNMPINDEX}] |
+|Temperature |#{#SNMPVALUE}: Temperature |<p>MIB: EQUIPMENT-MIB</p><p>The shelf current temperature.</p> |SNMP |sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}] |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[agentCPUutilizationIn1min.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|#{#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[swFanStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[agentDRAMutilization.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|#{#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[swPowerStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|#{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- #{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|#{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|#{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: D-Link reports missing PSU as fail(4)
+ - Version: Firmware: 1.73R008,hardware revision: B1
+ - Device: DGS-3420-26SC Gigabit Ethernet Switch
+
diff --git a/templates/net/dlink_des_snmpv2/template_net_dlink_des_snmpv2.xml b/templates/net/dlink_des_snmp/template_net_dlink_des_snmp.xml
index 2ebb090e74d..4b5113da578 100644
--- a/templates/net/dlink_des_snmpv2/template_net_dlink_des_snmpv2.xml
+++ b/templates/net/dlink_des_snmp/template_net_dlink_des_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:09Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net D-Link DES_DGS Switch SNMPv2</template>
- <name>Template Net D-Link DES_DGS Switch SNMPv2</name>
+ <template>Template Net D-Link DES_DGS Switch SNMP</template>
+ <name>Template Net D-Link DES_DGS Switch SNMP</name>
<description>Template D-Link DES_DGS Switch&#13;
&#13;
MIBs used:&#13;
@@ -25,16 +25,16 @@ Known Issues:&#13;
Version: Firmware: 1.73R008,hardware revision: B1&#13;
Device: DGS-3420-26SC Gigabit Ethernet Switch&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -65,8 +65,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.12.1.1.6.2.0</snmp_oid>
<key>system.cpu.util[agentCPUutilizationIn1min.0]</key>
<history>7d</history>
@@ -91,8 +90,7 @@ The unit of time is 1 minute. The value will be between 0% (idle) and 100%(very
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.9.1</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -124,8 +122,7 @@ The unit of time is 1 minute. The value will be between 0% (idle) and 100%(very
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -151,8 +148,7 @@ networking software.</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.12.1.1.12.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -185,8 +181,7 @@ A text string containing the serial number of this device.</description>
</item>
<item>
<name>Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.8.1</snmp_oid>
<key>system.hw.version</key>
<delay>1h</delay>
@@ -210,8 +205,7 @@ A text string containing the serial number of this device.</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.11.1.7.1.2,{#STATUS},1.3.6.1.4.1.171.12.11.1.7.1.3]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -229,8 +223,7 @@ A text string containing the serial number of this device.</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.12.11.1.7.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[swFanStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -264,16 +257,14 @@ speed-high : Fan spin using the highest speed.</description>
</discovery_rule>
<discovery_rule>
<name>Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.1.1.9.1.1]</snmp_oid>
<key>memory.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.12.1.1.9.1.4.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[agentDRAMutilization.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -306,7 +297,7 @@ The percentage of used DRAM memory of the total DRAM memory available.The value
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net D-Link DES_DGS Switch SNMPv2</host>
+ <host>Template Net D-Link DES_DGS Switch SNMP</host>
<key>vm.memory.util[agentDRAMutilization.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -316,8 +307,7 @@ The percentage of used DRAM memory of the total DRAM memory available.The value
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.11.1.6.1.2,{#STATUS},1.3.6.1.4.1.171.12.11.1.6.1.3]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -335,8 +325,7 @@ The percentage of used DRAM memory of the total DRAM memory available.The value
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.12.11.1.6.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[swPowerStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -372,16 +361,14 @@ disconnect : The power unit is not connected.</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.11.1.8.1.1]</snmp_oid>
<key>temperature.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.171.12.11.1.8.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -406,8 +393,8 @@ The shelf current temperature.</description>
<dependencies>
<dependency>
<name>#{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net D-Link DES_DGS Switch SNMPv2:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net D-Link DES_DGS Switch SNMPv2:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net D-Link DES_DGS Switch SNMP:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net D-Link DES_DGS Switch SNMP:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -475,7 +462,7 @@ The shelf current temperature.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net D-Link DES_DGS Switch SNMPv2</host>
+ <host>Template Net D-Link DES_DGS Switch SNMP</host>
<key>system.cpu.util[agentCPUutilizationIn1min.0]</key>
</item>
</graph_item>
diff --git a/templates/net/dlink_des_snmpv2/README.md b/templates/net/dlink_des_snmpv2/README.md
deleted file mode 100644
index 4915bd59d82..00000000000
--- a/templates/net/dlink_des_snmpv2/README.md
+++ /dev/null
@@ -1,82 +0,0 @@
-
-# Template Net D-Link DES_DGS Switch SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## 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`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`2`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`4`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Memory Discovery|<p>-</p>|SNMP|memory.discovery|
-|Temperature Discovery|<p>-</p>|SNMP|temperature.discovery|
-|PSU Discovery|<p>swPowerID of EQUIPMENT-MIB::swPowerTable</p>|SNMP|psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#STATUS} MATCHES_REGEX `[^0]`</p>|
-|FAN Discovery|<p>swFanID of EQUIPMENT-MIB::swFanTable</p>|SNMP|fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#STATUS} MATCHES_REGEX `[^0]`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: DLINK-AGENT-MIB</p><p>The unit of time is 1 minute. The value will be between 0% (idle) and 100%(very busy).</p>|SNMP|system.cpu.util[agentCPUutilizationIn1min.0]|
-|Fans|#{#SNMPVALUE}: Fan status|<p>MIB: EQUIPMENT-MIB</p><p>Indicates the current fan status.</p><p>speed-0 : If the fan function is normal and the fan does not spin due to the temperature not reaching the threshold, the status of the fan is speed 0.</p><p>speed-low : Fan spin using the lowest speed.</p><p>speed-middle: Fan spin using the middle speed.</p><p>speed-high : Fan spin using the highest speed.</p>|SNMP|sensor.fan.status[swFanStatus.{#SNMPINDEX}]|
-|Inventory|Hardware model name|<p>MIB: SNMPv2-MIB</p><p>A textual description of the entity. This value should</p><p>include the full name and version identification of the system's hardware type, software operating-system, and</p><p>networking software.</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware serial number|<p>MIB: DLINK-AGENT-MIB</p><p>A text string containing the serial number of this device.</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|#{#SNMPVALUE}: Memory utilization|<p>MIB: DLINK-AGENT-MIB</p><p>The percentage of used DRAM memory of the total DRAM memory available.The value will be between 0%(idle) and 100%(very busy)</p>|SNMP|vm.memory.util[agentDRAMutilization.{#SNMPINDEX}]|
-|Power_supply|#{#SNMPVALUE}: Power supply status|<p>MIB: EQUIPMENT-MIB</p><p>Indicates the current power status.</p><p>lowVoltage : The voltage of the power unit is too low.</p><p>overCurrent: The current of the power unit is too high.</p><p>working : The power unit is working normally.</p><p>fail : The power unit has failed.</p><p>connect : The power unit is connected but not powered on.</p><p>disconnect : The power unit is not connected.</p>|SNMP|sensor.psu.status[swPowerStatus.{#SNMPINDEX}]|
-|Temperature|#{#SNMPVALUE}: Temperature|<p>MIB: EQUIPMENT-MIB</p><p>The shelf current temperature.</p>|SNMP|sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}]|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[agentCPUutilizationIn1min.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|#{#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[swFanStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[agentDRAMutilization.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|#{#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[swPowerStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|#{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- #{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|#{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|#{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: D-Link reports missing PSU as fail(4)
- - Version: Firmware: 1.73R008,hardware revision: B1
- - Device: DGS-3420-26SC Gigabit Ethernet Switch
-
diff --git a/templates/net/extreme_snmp/README.md b/templates/net/extreme_snmp/README.md
new file mode 100644
index 00000000000..8c79493a08e
--- /dev/null
+++ b/templates/net/extreme_snmp/README.md
@@ -0,0 +1,80 @@
+
+# Template Net Extreme EXOS SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`2` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`3` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT_STATUS} |<p>-</p> |`1` |
+|{$TEMP_CRIT} |<p>-</p> |`65` |
+|{$TEMP_WARN} |<p>-</p> |`55` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Memory Discovery |<p>-</p> |SNMP |memory.discovery |
+|PSU Discovery |<p>Table of status of all power supplies in the system.</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>-</p> |SNMP |fan.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: EXTREME-SOFTWARE-MONITOR-MIB</p><p>Total CPU utlization (percentage) as of last sampling.</p> |SNMP |system.cpu.util[extremeCpuMonitorTotalUtilization.0] |
+|Fans |Fan {#SNMPVALUE}: Fan status |<p>MIB: EXTREME-SYSTEM-MIB</p><p>Operational status of a cooling fan.</p> |SNMP |sensor.fan.status[extremeFanOperational.{#SNMPINDEX}] |
+|Fans |Fan {#SNMPVALUE}: Fan speed |<p>MIB: EXTREME-SYSTEM-MIB</p><p>The speed (RPM) of a cooling fan in the fantray {#SNMPVALUE}</p> |SNMP |sensor.fan.speed[extremeFanSpeed.{#SNMPINDEX}] |
+|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 |Firmware version |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Operating system |<p>MIB: EXTREME-SYSTEM-MIB</p><p>The software revision of the primary image stored in this device.</p><p>This string will have a zero length if the revision is unknown, invalid or not present.</p><p>This will also be reported in RMON2 probeSoftwareRev if this is the software image currently running in the device.</p> |SNMP |system.sw.os[extremePrimarySoftwareRev.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |#{#SNMPVALUE}: Available memory |<p>MIB: EXTREME-SOFTWARE-MONITOR-MIB</p><p>Total amount of free memory in Kbytes in the system.</p> |SNMP |vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |#{#SNMPVALUE}: Total memory |<p>MIB: EXTREME-SOFTWARE-MONITOR-MIB</p><p>Total amount of DRAM in Kbytes in the system.</p> |SNMP |vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |#{#SNMPVALUE}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[{#SNMPVALUE}]<p>**Expression**:</p>`(last("vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]") - last("vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]")) / last("vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]") * 100` |
+|Power_supply |PSU {#SNMPVALUE}: Power supply status |<p>MIB: EXTREME-SYSTEM-MIB</p><p>Status of the power supply {#SNMPVALUE}</p> |SNMP |sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}] |
+|Temperature |Device: Temperature |<p>MIB: EXTREME-SYSTEM-MIB</p><p>Temperature readings of testpoint: Device</p><p>Reference: https://gtacknowledge.extremenetworks.com/articles/Q_A/Does-EXOS-support-temperature-polling-via-SNMP-on-all-nodes-in-a-stack</p> |SNMP |sensor.temp.value[extremeCurrentTemperature.0] |
+|Temperature |Device: Temperature status |<p>MIB: EXTREME-SYSTEM-MIB</p><p>Temperature status of testpoint: Device</p> |SNMP |sensor.temp.status[extremeOverTemperatureAlarm.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> |`{TEMPLATE_NAME:system.cpu.util[extremeCpuMonitorTotalUtilization.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|Fan {#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[extremeFanOperational.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:system.sw.os[extremePrimarySoftwareRev.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[extremePrimarySoftwareRev.0].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[{#SNMPVALUE}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|PSU {#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Device: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- Device: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|Device: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}>{$TEMP_CRIT:""} or {Template Net Extreme EXOS SNMP:sensor.temp.status[extremeOverTemperatureAlarm.0].last(0)}={$TEMP_CRIT_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|Device: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/extreme_snmpv2/template_net_extreme_snmpv2.xml b/templates/net/extreme_snmp/template_net_extreme_snmp.xml
index 47b4a79d751..88d019fd4c9 100644
--- a/templates/net/extreme_snmpv2/template_net_extreme_snmpv2.xml
+++ b/templates/net/extreme_snmp/template_net_extreme_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:19Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Extreme EXOS SNMPv2</template>
- <name>Template Net Extreme EXOS SNMPv2</name>
+ <template>Template Net Extreme EXOS SNMP</template>
+ <name>Template Net Extreme EXOS SNMP</name>
<description>Template Extreme EXOS&#13;
&#13;
MIBs used:&#13;
@@ -18,16 +18,16 @@ EXTREME-SOFTWARE-MONITOR-MIB&#13;
EXTREME-SYSTEM-MIB&#13;
ENTITY-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -58,8 +58,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Device: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.1.1.7.0</snmp_oid>
<key>sensor.temp.status[extremeOverTemperatureAlarm.0]</key>
<delay>3m</delay>
@@ -78,8 +77,7 @@ Temperature status of testpoint: Device</description>
</item>
<item>
<name>Device: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.1.1.8.0</snmp_oid>
<key>sensor.temp.value[extremeCurrentTemperature.0]</key>
<delay>3m</delay>
@@ -105,10 +103,10 @@ Reference: https://gtacknowledge.extremenetworks.com/articles/Q_A/Does-EXOS-supp
<dependencies>
<dependency>
<name>Device: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Extreme EXOS SNMPv2:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Net Extreme EXOS SNMP:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
or&#13;
-{Template Net Extreme EXOS SNMPv2:sensor.temp.status[extremeOverTemperatureAlarm.0].last(0)}={$TEMP_CRIT_STATUS}</expression>
- <recovery_expression>{Template Net Extreme EXOS SNMPv2:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+{Template Net Extreme EXOS SNMP:sensor.temp.status[extremeOverTemperatureAlarm.0].last(0)}={$TEMP_CRIT_STATUS}</expression>
+ <recovery_expression>{Template Net Extreme EXOS SNMP:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger>
@@ -124,8 +122,7 @@ or&#13;
</item>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.32.1.2.0</snmp_oid>
<key>system.cpu.util[extremeCpuMonitorTotalUtilization.0]</key>
<history>7d</history>
@@ -150,8 +147,7 @@ Total CPU utlization (percentage) as of last sampling.</description>
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.9.1</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -183,8 +179,7 @@ Total CPU utlization (percentage) as of last sampling.</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.2.1</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -207,8 +202,7 @@ Total CPU utlization (percentage) as of last sampling.</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.1</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -240,8 +234,7 @@ Total CPU utlization (percentage) as of last sampling.</description>
</item>
<item>
<name>Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.9.1</snmp_oid>
<key>system.hw.version</key>
<delay>1h</delay>
@@ -263,8 +256,7 @@ Total CPU utlization (percentage) as of last sampling.</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.1.1.13.0</snmp_oid>
<key>system.sw.os[extremePrimarySoftwareRev.0]</key>
<delay>1h</delay>
@@ -302,16 +294,14 @@ This will also be reported in RMON2 probeSoftwareRev if this is the software ima
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1916.1.1.1.9.1.1]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>Fan {#SNMPVALUE}: Fan speed</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.1.1.9.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.speed[extremeFanSpeed.{#SNMPINDEX}]</key>
<units>rpm</units>
@@ -325,8 +315,7 @@ The speed (RPM) of a cooling fan in the fantray {#SNMPVALUE}</description>
</item_prototype>
<item_prototype>
<name>Fan {#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.1.1.9.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[extremeFanOperational.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -356,16 +345,14 @@ Operational status of a cooling fan.</description>
</discovery_rule>
<discovery_rule>
<name>Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1916.1.32.2.2.1.1]</snmp_oid>
<key>memory.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Available memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.32.2.2.1.3.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -386,8 +373,7 @@ Total amount of free memory in Kbytes in the system.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Total memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.32.2.2.1.2.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -439,7 +425,7 @@ Total amount of DRAM in Kbytes in the system.</description>
<drawtype>BOLD_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Extreme EXOS SNMPv2</host>
+ <host>Template Net Extreme EXOS SNMP</host>
<key>vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -448,7 +434,7 @@ Total amount of DRAM in Kbytes in the system.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>2774A4</color>
<item>
- <host>Template Net Extreme EXOS SNMPv2</host>
+ <host>Template Net Extreme EXOS SNMP</host>
<key>vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -463,7 +449,7 @@ Total amount of DRAM in Kbytes in the system.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Extreme EXOS SNMPv2</host>
+ <host>Template Net Extreme EXOS SNMP</host>
<key>vm.memory.util[{#SNMPVALUE}]</key>
</item>
</graph_item>
@@ -473,8 +459,7 @@ Total amount of DRAM in Kbytes in the system.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.1916.1.1.1.27.1.1]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -482,8 +467,7 @@ Total amount of DRAM in Kbytes in the system.</description>
<item_prototypes>
<item_prototype>
<name>PSU {#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.1916.1.1.1.27.1.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -550,11 +534,11 @@ Status of the power supply {#SNMPVALUE}</description>
</templates>
<triggers>
<trigger>
- <expression>{Template Net Extreme EXOS SNMPv2:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Net Extreme EXOS SNMP:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
or&#13;
-{Template Net Extreme EXOS SNMPv2:sensor.temp.status[extremeOverTemperatureAlarm.0].last(0)}={$TEMP_CRIT_STATUS}</expression>
+{Template Net Extreme EXOS SNMP:sensor.temp.status[extremeOverTemperatureAlarm.0].last(0)}={$TEMP_CRIT_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Extreme EXOS SNMPv2:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Extreme EXOS SNMP:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
<name>Device: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>HIGH</priority>
@@ -571,7 +555,7 @@ or&#13;
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Extreme EXOS SNMPv2</host>
+ <host>Template Net Extreme EXOS SNMP</host>
<key>system.cpu.util[extremeCpuMonitorTotalUtilization.0]</key>
</item>
</graph_item>
diff --git a/templates/net/extreme_snmpv2/README.md b/templates/net/extreme_snmpv2/README.md
deleted file mode 100644
index 2d39147c349..00000000000
--- a/templates/net/extreme_snmpv2/README.md
+++ /dev/null
@@ -1,80 +0,0 @@
-
-# Template Net Extreme EXOS SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT}|<p>-</p>|`90`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`2`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`3`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT_STATUS}|<p>-</p>|`1`|
-|{$TEMP_CRIT}|<p>-</p>|`65`|
-|{$TEMP_WARN}|<p>-</p>|`55`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Memory Discovery|<p>-</p>|SNMP|memory.discovery|
-|PSU Discovery|<p>Table of status of all power supplies in the system.</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>-</p>|SNMP|fan.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: EXTREME-SOFTWARE-MONITOR-MIB</p><p>Total CPU utlization (percentage) as of last sampling.</p>|SNMP|system.cpu.util[extremeCpuMonitorTotalUtilization.0]|
-|Fans|Fan {#SNMPVALUE}: Fan status|<p>MIB: EXTREME-SYSTEM-MIB</p><p>Operational status of a cooling fan.</p>|SNMP|sensor.fan.status[extremeFanOperational.{#SNMPINDEX}]|
-|Fans|Fan {#SNMPVALUE}: Fan speed|<p>MIB: EXTREME-SYSTEM-MIB</p><p>The speed (RPM) of a cooling fan in the fantray {#SNMPVALUE}</p>|SNMP|sensor.fan.speed[extremeFanSpeed.{#SNMPINDEX}]|
-|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|Firmware version|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Operating system|<p>MIB: EXTREME-SYSTEM-MIB</p><p>The software revision of the primary image stored in this device.</p><p>This string will have a zero length if the revision is unknown, invalid or not present.</p><p>This will also be reported in RMON2 probeSoftwareRev if this is the software image currently running in the device.</p>|SNMP|system.sw.os[extremePrimarySoftwareRev.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|#{#SNMPVALUE}: Available memory|<p>MIB: EXTREME-SOFTWARE-MONITOR-MIB</p><p>Total amount of free memory in Kbytes in the system.</p>|SNMP|vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|#{#SNMPVALUE}: Total memory|<p>MIB: EXTREME-SOFTWARE-MONITOR-MIB</p><p>Total amount of DRAM in Kbytes in the system.</p>|SNMP|vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|#{#SNMPVALUE}: Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[{#SNMPVALUE}]<p>**Expression**:</p>`(last("vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]") - last("vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]")) / last("vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]") * 100`|
-|Power_supply|PSU {#SNMPVALUE}: Power supply status|<p>MIB: EXTREME-SYSTEM-MIB</p><p>Status of the power supply {#SNMPVALUE}</p>|SNMP|sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}]|
-|Temperature|Device: Temperature|<p>MIB: EXTREME-SYSTEM-MIB</p><p>Temperature readings of testpoint: Device</p><p>Reference: https://gtacknowledge.extremenetworks.com/articles/Q_A/Does-EXOS-support-temperature-polling-via-SNMP-on-all-nodes-in-a-stack</p>|SNMP|sensor.temp.value[extremeCurrentTemperature.0]|
-|Temperature|Device: Temperature status|<p>MIB: EXTREME-SYSTEM-MIB</p><p>Temperature status of testpoint: Device</p>|SNMP|sensor.temp.status[extremeOverTemperatureAlarm.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>|`{TEMPLATE_NAME:system.cpu.util[extremeCpuMonitorTotalUtilization.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|Fan {#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[extremeFanOperational.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:system.sw.os[extremePrimarySoftwareRev.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[extremePrimarySoftwareRev.0].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[{#SNMPVALUE}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|PSU {#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Device: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- Device: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|Device: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}>{$TEMP_CRIT:""} or {Template Net Extreme EXOS SNMPv2:sensor.temp.status[extremeOverTemperatureAlarm.0].last(0)}={$TEMP_CRIT_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|Device: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[extremeCurrentTemperature.0].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/generic_snmpv1/README.md b/templates/net/generic_snmp/README.md
index d6f21c16084..60dcce4976f 100644
--- a/templates/net/generic_snmpv1/README.md
+++ b/templates/net/generic_snmp/README.md
@@ -1,9 +1,9 @@
-# Template Net Network Generic Device SNMPv1
+# Template Net Network Generic Device SNMP
## Overview
-For Zabbix version: 4.4
+For Zabbix version: 5.0
Use this template if you can't find the template for specific vendor or device family.
## Setup
@@ -19,9 +19,9 @@ No specific Zabbix configuration is required.
|Name|
|----|
-|Template Module EtherLike-MIB SNMPv1|
-|Template Module Generic SNMPv1|
-|Template Module Interfaces Simple SNMPv1|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces Simple SNMP |
## Discovery rules
diff --git a/templates/net/generic_snmpv1/template_net_generic_snmpv1.xml b/templates/net/generic_snmp/template_net_generic_snmp.xml
index d7ad5e2f39b..98bb0db3492 100644
--- a/templates/net/generic_snmpv1/template_net_generic_snmpv1.xml
+++ b/templates/net/generic_snmp/template_net_generic_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:07Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,20 +9,20 @@
</groups>
<templates>
<template>
- <template>Template Net Network Generic Device SNMPv1</template>
- <name>Template Net Network Generic Device SNMPv1</name>
+ <template>Template Net Network Generic Device SNMP</template>
+ <name>Template Net Network Generic Device SNMP</name>
<description>Template Net Network Generic Device&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv1</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv1</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces Simple SNMPv1</name>
+ <name>Template Module Interfaces Simple SNMP</name>
</template>
</templates>
<groups>
diff --git a/templates/net/generic_snmpv2/README.md b/templates/net/generic_snmpv2/README.md
deleted file mode 100644
index 3daa1c13d36..00000000000
--- a/templates/net/generic_snmpv2/README.md
+++ /dev/null
@@ -1,42 +0,0 @@
-
-# Template Net Network Generic Device SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-Use this template if you can't find the template for specific vendor or device family.
-
-## Setup
-
-Refer to the vendor documentation.
-
-## Zabbix configuration
-
-No specific Zabbix configuration is required.
-
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces Simple SNMPv2|
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/generic_snmpv2/template_net_generic_snmpv2.xml b/templates/net/generic_snmpv2/template_net_generic_snmpv2.xml
deleted file mode 100644
index 8f01a7abbf0..00000000000
--- a/templates/net/generic_snmpv2/template_net_generic_snmpv2.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
- <groups>
- <group>
- <name>Templates/Network devices</name>
- </group>
- </groups>
- <templates>
- <template>
- <template>Template Net Network Generic Device SNMPv2</template>
- <name>Template Net Network Generic Device SNMPv2</name>
- <description>Template Net Network Generic Device&#13;
-&#13;
-Template tooling version used: 0.34</description>
- <templates>
- <template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
- </template>
- <template>
- <name>Template Module Generic SNMPv2</name>
- </template>
- <template>
- <name>Template Module Interfaces Simple SNMPv2</name>
- </template>
- </templates>
- <groups>
- <group>
- <name>Templates/Network devices</name>
- </group>
- </groups>
- </template>
- </templates>
-</zabbix_export>
diff --git a/templates/net/hp_hh3c_snmp/README.md b/templates/net/hp_hh3c_snmp/README.md
new file mode 100644
index 00000000000..23a0346bce5
--- /dev/null
+++ b/templates/net/hp_hh3c_snmp/README.md
@@ -0,0 +1,95 @@
+
+# Template Net HP Comware HH3C SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+http://certifiedgeek.weebly.com/blog/hp-comware-snmp-mib-for-cpu-memory-and-temperature
+http://www.h3c.com.hk/products___solutions/technology/system_management/configuration_example/200912/656451_57_0.htm
+
+This template was tested on:
+
+- HP 1910-48, version 1910-48 Switch Software Version 5.20.99, Release 1116 Copyright(c)2010-2016 Hewlett Packard Enterprise Development LP
+- HP A5500-24G-4SFP, version HP Comware Platform Software, Software Version 5.20.99 Release 5501P21 HP A5500-24G-4SFP
+
+## 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` |
+|{$FAN_CRIT_STATUS:"fanError"} |<p>-</p> |`41` |
+|{$FAN_CRIT_STATUS:"hardwareFaulty"} |<p>-</p> |`91` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS:"hardwareFaulty"} |<p>-</p> |`91` |
+|{$PSU_CRIT_STATUS:"psuError"} |<p>-</p> |`51` |
+|{$PSU_CRIT_STATUS:"rpsError"} |<p>-</p> |`61` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Module Discovery |<p>Filter limits results to 'Module level1' or Fabric Modules</p> |SNMP |module.discovery<p>**Filter**:</p>OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `^(MODULE|Module) (LEVEL|level)1$`</p><p>- A: {#SNMPVALUE} MATCHES_REGEX `(Fabric|FABRIC) (.+) (Module|MODULE)`</p> |
+|Temperature Discovery |<p>Discovering modules temperature (same filter as in Module Discovery) plus and temperature sensors</p> |SNMP |temp.discovery<p>**Filter**:</p>OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `^(MODULE|Module) (LEVEL|level)1$`</p><p>- A: {#SNMPVALUE} MATCHES_REGEX `(Fabric|FABRIC) (.+) (Module|MODULE)`</p><p>- A: {#SNMPVALUE} MATCHES_REGEX `(T|t)emperature.*(s|S)ensor`</p> |
+|FAN Discovery |<p>Discovering all entities of PhysicalClass - 7: fan(7)</p> |SNMP |fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `7`</p> |
+|PSU Discovery |<p>Discovering all entities of PhysicalClass - 6: powerSupply(6)</p> |SNMP |psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `6`</p> |
+|Entity Discovery |<p>-</p> |SNMP |entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |{#MODULE_NAME}: CPU utilization |<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>The CPU usage for this entity. Generally, the CPU usage</p><p>will calculate the overall CPU usage on the entity, and it</p><p>is not sensible with the number of CPU on the entity</p> |SNMP |system.cpu.util[hh3cEntityExtCpuUsage.{#SNMPINDEX}] |
+|Fans |{#ENT_NAME}: Fan status |<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>Indicate the error state of this entity object.</p><p>fanError(41) means that the fan stops working.</p> |SNMP |sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}] |
+|Inventory |{#ENT_NAME}: Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model[entPhysicalDescr.{#SNMPINDEX}]<p>**Preprocessing**:</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> |
+|Inventory |{#ENT_NAME}: Firmware version |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Operating system |<p>MIB: ENTITY-MIB</p> |SNMP |system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |{#MODULE_NAME}: Memory utilization |<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>The memory usage for the entity. This object indicates what</p><p>percent of memory are used.</p> |SNMP |vm.memory.util[hh3cEntityExtMemUsage.{#SNMPINDEX}] |
+|Power_supply |{#ENT_NAME}: Power supply status |<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>Indicate the error state of this entity object.</p><p>psuError(51) means that the Power Supply Unit is in the state of fault.</p><p>rpsError(61) means the Redundant Power Supply is in the state of fault.</p> |SNMP |sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}] |
+|Temperature |{#SNMPVALUE}: Temperature |<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>The temperature for the {#SNMPVALUE}.</p> |SNMP |sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#MODULE_NAME}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`{TEMPLATE_NAME:system.cpu.util[hh3cEntityExtCpuUsage.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|{#ENT_NAME}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"fanError"},eq)}=1 or {TEMPLATE_NAME:sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"hardwareFaulty"},eq)}=1` |AVERAGE | |
+|{#ENT_NAME}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`{TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#MODULE_NAME}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[hh3cEntityExtMemUsage.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#ENT_NAME}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"psuError"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"rpsError"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"hardwareFaulty"},eq)}=1` |AVERAGE | |
+|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: No temperature sensors. All entities of them return 0 for HH3C-ENTITY-EXT-MIB::hh3cEntityExtTemperature
+ - Version: 1910-48 Switch Software Version 5.20.99, Release 1116 Copyright(c)2010-2016 Hewlett Packard Enterprise Development LP
+ - Device: HP 1910-48
+
diff --git a/templates/net/hp_hh3c_snmpv2/template_net_hp_hh3c_snmpv2.xml b/templates/net/hp_hh3c_snmp/template_net_hp_hh3c_snmp.xml
index 8e519f5e9f4..6f9b3f1b1d0 100644
--- a/templates/net/hp_hh3c_snmpv2/template_net_hp_hh3c_snmpv2.xml
+++ b/templates/net/hp_hh3c_snmp/template_net_hp_hh3c_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:10Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net HP Comware HH3C SNMPv2</template>
- <name>Template Net HP Comware HH3C SNMPv2</name>
+ <template>Template Net HP Comware HH3C SNMP</template>
+ <name>Template Net HP Comware HH3C SNMP</name>
<description>Template Net HP Comware (HH3C)&#13;
&#13;
MIBs used:&#13;
@@ -23,16 +23,16 @@ Known Issues:&#13;
Version: 1910-48 Switch Software Version 5.20.99, Release 1116 Copyright(c)2010-2016 Hewlett Packard Enterprise Development LP&#13;
Device: HP 1910-48&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -63,8 +63,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>Entity Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>entity.discovery</key>
<delay>1h</delay>
@@ -81,8 +80,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.9.{#SNMPINDEX}</snmp_oid>
<key>system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -114,8 +112,7 @@ Template tooling version used: 0.34</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.2.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[entPhysicalDescr.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -137,8 +134,7 @@ Template tooling version used: 0.34</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -169,8 +165,7 @@ Template tooling version used: 0.34</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.8.{#SNMPINDEX}</snmp_oid>
<key>system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -192,8 +187,7 @@ Template tooling version used: 0.34</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.10.{#SNMPINDEX}</snmp_oid>
<key>system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -227,8 +221,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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_DESCR},1.3.6.1.2.1.47.1.1.1.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -246,8 +239,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.25506.2.6.1.1.1.1.19.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -278,8 +270,7 @@ fanError(41) means that the fan stops working.</description>
</discovery_rule>
<discovery_rule>
<name>Module Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.2.1.47.1.1.1.1.2,{#MODULE_NAME},1.3.6.1.2.1.47.1.1.1.1.7]</snmp_oid>
<key>module.discovery</key>
<delay>1h</delay>
@@ -302,8 +293,7 @@ fanError(41) means that the fan stops working.</description>
<item_prototypes>
<item_prototype>
<name>{#MODULE_NAME}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.25506.2.6.1.1.1.1.6.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[hh3cEntityExtCpuUsage.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -330,8 +320,7 @@ is not sensible with the number of CPU on the entity</description>
</item_prototype>
<item_prototype>
<name>{#MODULE_NAME}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.25506.2.6.1.1.1.1.8.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[hh3cEntityExtMemUsage.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -365,7 +354,7 @@ percent of memory are used.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net HP Comware HH3C SNMPv2</host>
+ <host>Template Net HP Comware HH3C SNMP</host>
<key>system.cpu.util[hh3cEntityExtCpuUsage.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -380,7 +369,7 @@ percent of memory are used.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net HP Comware HH3C SNMPv2</host>
+ <host>Template Net HP Comware HH3C SNMP</host>
<key>vm.memory.util[hh3cEntityExtMemUsage.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -390,8 +379,7 @@ percent of memory are used.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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_DESCR},1.3.6.1.2.1.47.1.1.1.1.2]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -409,8 +397,7 @@ percent of memory are used.</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.25506.2.6.1.1.1.1.19.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -442,8 +429,7 @@ rpsError(61) means the Redundant Power Supply is in the state of fault.</descrip
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.2.1.47.1.1.1.1.2,{#MODULE_NAME},1.3.6.1.2.1.47.1.1.1.1.7]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -471,8 +457,7 @@ rpsError(61) means the Redundant Power Supply is in the state of fault.</descrip
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.25506.2.6.1.1.1.1.12.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -497,8 +482,8 @@ The temperature for the {#SNMPVALUE}.</description>
<dependencies>
<dependency>
<name>{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net HP Comware HH3C SNMPv2:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net HP Comware HH3C SNMPv2:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net HP Comware HH3C SNMP:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net HP Comware HH3C SNMP:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
diff --git a/templates/net/hp_hh3c_snmpv2/README.md b/templates/net/hp_hh3c_snmpv2/README.md
deleted file mode 100644
index 28c0e98b7aa..00000000000
--- a/templates/net/hp_hh3c_snmpv2/README.md
+++ /dev/null
@@ -1,95 +0,0 @@
-
-# Template Net HP Comware HH3C SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-http://certifiedgeek.weebly.com/blog/hp-comware-snmp-mib-for-cpu-memory-and-temperature
-http://www.h3c.com.hk/products___solutions/technology/system_management/configuration_example/200912/656451_57_0.htm
-
-This template was tested on:
-
-- HP 1910-48, version 1910-48 Switch Software Version 5.20.99, Release 1116 Copyright(c)2010-2016 Hewlett Packard Enterprise Development LP
-- HP A5500-24G-4SFP, version HP Comware Platform Software, Software Version 5.20.99 Release 5501P21 HP A5500-24G-4SFP
-
-## 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`|
-|{$FAN_CRIT_STATUS:"fanError"}|<p>-</p>|`41`|
-|{$FAN_CRIT_STATUS:"hardwareFaulty"}|<p>-</p>|`91`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS:"hardwareFaulty"}|<p>-</p>|`91`|
-|{$PSU_CRIT_STATUS:"psuError"}|<p>-</p>|`51`|
-|{$PSU_CRIT_STATUS:"rpsError"}|<p>-</p>|`61`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Module Discovery|<p>Filter limits results to 'Module level1' or Fabric Modules</p>|SNMP|module.discovery<p>**Filter**:</p>OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `^(MODULE|Module) (LEVEL|level)1$`</p><p>- A: {#SNMPVALUE} MATCHES_REGEX `(Fabric|FABRIC) (.+) (Module|MODULE)`</p>|
-|Temperature Discovery|<p>Discovering modules temperature (same filter as in Module Discovery) plus and temperature sensors</p>|SNMP|temp.discovery<p>**Filter**:</p>OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `^(MODULE|Module) (LEVEL|level)1$`</p><p>- A: {#SNMPVALUE} MATCHES_REGEX `(Fabric|FABRIC) (.+) (Module|MODULE)`</p><p>- A: {#SNMPVALUE} MATCHES_REGEX `(T|t)emperature.*(s|S)ensor`</p>|
-|FAN Discovery|<p>Discovering all entities of PhysicalClass - 7: fan(7)</p>|SNMP|fan.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `7`</p>|
-|PSU Discovery|<p>Discovering all entities of PhysicalClass - 6: powerSupply(6)</p>|SNMP|psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `6`</p>|
-|Entity Discovery|<p>-</p>|SNMP|entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|{#MODULE_NAME}: CPU utilization|<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>The CPU usage for this entity. Generally, the CPU usage</p><p>will calculate the overall CPU usage on the entity, and it</p><p>is not sensible with the number of CPU on the entity</p>|SNMP|system.cpu.util[hh3cEntityExtCpuUsage.{#SNMPINDEX}]|
-|Fans|{#ENT_NAME}: Fan status|<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>Indicate the error state of this entity object.</p><p>fanError(41) means that the fan stops working.</p>|SNMP|sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}]|
-|Inventory|{#ENT_NAME}: Hardware model name|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.model[entPhysicalDescr.{#SNMPINDEX}]<p>**Preprocessing**:</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>|
-|Inventory|{#ENT_NAME}: Firmware version|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Operating system|<p>MIB: ENTITY-MIB</p>|SNMP|system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|{#MODULE_NAME}: Memory utilization|<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>The memory usage for the entity. This object indicates what</p><p>percent of memory are used.</p>|SNMP|vm.memory.util[hh3cEntityExtMemUsage.{#SNMPINDEX}]|
-|Power_supply|{#ENT_NAME}: Power supply status|<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>Indicate the error state of this entity object.</p><p>psuError(51) means that the Power Supply Unit is in the state of fault.</p><p>rpsError(61) means the Redundant Power Supply is in the state of fault.</p>|SNMP|sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}]|
-|Temperature|{#SNMPVALUE}: Temperature|<p>MIB: HH3C-ENTITY-EXT-MIB</p><p>The temperature for the {#SNMPVALUE}.</p>|SNMP|sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}]|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#MODULE_NAME}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)|<p>CPU utilization is too high. The system might be slow to respond.</p>|`{TEMPLATE_NAME:system.cpu.util[hh3cEntityExtCpuUsage.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|{#ENT_NAME}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"fanError"},eq)}=1 or {TEMPLATE_NAME:sensor.fan.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"hardwareFaulty"},eq)}=1`|AVERAGE||
-|{#ENT_NAME}: Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#ENT_NAME}: Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.firmware[entPhysicalFirmwareRev.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#ENT_NAME}: Operating system description has changed|<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p>|`{TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#MODULE_NAME}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[hh3cEntityExtMemUsage.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#ENT_NAME}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"psuError"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"rpsError"},eq)}=1 or {TEMPLATE_NAME:sensor.psu.status[hh3cEntityExtErrorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"hardwareFaulty"},eq)}=1`|AVERAGE||
-|{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hh3cEntityExtTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: No temperature sensors. All entities of them return 0 for HH3C-ENTITY-EXT-MIB::hh3cEntityExtTemperature
- - Version: 1910-48 Switch Software Version 5.20.99, Release 1116 Copyright(c)2010-2016 Hewlett Packard Enterprise Development LP
- - Device: HP 1910-48
-
diff --git a/templates/net/hp_hpn_snmp/README.md b/templates/net/hp_hpn_snmp/README.md
new file mode 100644
index 00000000000..7a328609e3a
--- /dev/null
+++ b/templates/net/hp_hpn_snmp/README.md
@@ -0,0 +1,91 @@
+
+# Template Net HP Enterprise Switch SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+This template was tested on:
+
+- HP ProCurve J4900B Switch 2626, version ProCurve J4900B Switch 2626, revision H.10.31, ROM H.08.02 (/sw/code/build/fish(mkfs))
+- HP J9728A 2920-48G Switch, version HP J9728A 2920-48G Switch, revision WB.16.03.0003, ROM WB.16.03 (/ws/swbuildm/rel_tacoma_qaoff/code/build/anm(swbuildm_rel_tacoma_qaoff_rel_tacoma)) (Formerly ProCurve)"
+
+## 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` |
+|{$FAN_CRIT_STATUS:"bad"} |<p>-</p> |`2` |
+|{$FAN_WARN_STATUS:"warning"} |<p>-</p> |`3` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS:"bad"} |<p>-</p> |`2` |
+|{$PSU_WARN_STATUS:"warning"} |<p>-</p> |`3` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature Discovery |<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with celsius filter</p> |SNMP |temp.precision0.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `8`</p><p>- B: {#SENSOR_PRECISION} MATCHES_REGEX `0`</p> |
+|Memory Discovery |<p>Discovery of NETSWITCH-MIB::hpLocalMemTable, A table that contains information on all the local memory for each slot.</p> |SNMP |memory.discovery |
+|FAN Discovery |<p>Discovering all entities of hpicfSensorObjectId that ends with: 11.2.3.7.8.3.2 - fans and are present</p> |SNMP |fan.discovery<p>**Filter**:</p>AND <p>- A: {#ENT_CLASS} MATCHES_REGEX `.+8.3.2$`</p><p>- A: {#ENT_STATUS} MATCHES_REGEX `(1|2|3|4)`</p> |
+|PSU Discovery |<p>Discovering all entities of hpicfSensorObjectId that ends with: 11.2.3.7.8.3.1 - power supplies and are present</p> |SNMP |psu.discovery<p>**Filter**:</p>AND <p>- A: {#ENT_CLASS} MATCHES_REGEX `.+8.3.1$`</p><p>- A: {#ENT_STATUS} MATCHES_REGEX `(1|2|3|4)`</p> |
+|Temp Status Discovery |<p>Discovering all entities of hpicfSensorObjectId that ends with: 11.2.3.7.8.3.3 - over temp status and are present</p> |SNMP |temp.status.discovery<p>**Filter**:</p>AND <p>- A: {#ENT_CLASS} MATCHES_REGEX `.+8.3.3$`</p><p>- A: {#ENT_STATUS} MATCHES_REGEX `(1|2|3|4)`</p> |
+|Entity Discovery |<p>-</p> |SNMP |entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: STATISTICS-MIB</p><p>The CPU utilization in percent(%).</p><p>Reference: http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=emr_na-c02597344&sp4ts.oid=51079</p> |SNMP |system.cpu.util[hpSwitchCpuStat.0] |
+|Fans |{#ENT_DESCR}: Fan status |<p>MIB: HP-ICF-CHASSIS</p><p>Actual status indicated by the sensor: {#ENT_DESCR}</p> |SNMP |sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}] |
+|Inventory |Hardware serial number |<p>MIB: SEMI-MIB</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: NETSWITCH-MIB</p><p>Contains the operating code version number (also known as software or firmware).</p><p>For example, a software version such as A.08.01 is described as follows:</p><p>A the function set available in your router</p><p>08 the common release number</p><p>01 updates to the current common release</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model[entPhysicalDescr.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |#{#SNMPVALUE}: Used memory |<p>MIB: NETSWITCH-MIB</p><p>The number of currently allocated bytes.</p> |SNMP |vm.memory.used[hpLocalMemAllocBytes.{#SNMPINDEX}] |
+|Memory |#{#SNMPVALUE}: Available memory |<p>MIB: NETSWITCH-MIB</p><p>The number of available (unallocated) bytes.</p> |SNMP |vm.memory.available[hpLocalMemFreeBytes.{#SNMPINDEX}] |
+|Memory |#{#SNMPVALUE}: Total memory |<p>MIB: NETSWITCH-MIB</p><p>The number of currently installed bytes.</p> |SNMP |vm.memory.total[hpLocalMemTotalBytes.{#SNMPINDEX}] |
+|Memory |#{#SNMPVALUE}: Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[snmp.{#SNMPINDEX}]<p>**Expression**:</p>`last("vm.memory.used[hpLocalMemAllocBytes.{#SNMPINDEX}]")/last("vm.memory.total[hpLocalMemTotalBytes.{#SNMPINDEX}]")*100` |
+|Power_supply |{#ENT_DESCR}: Power supply status |<p>MIB: HP-ICF-CHASSIS</p><p>Actual status indicated by the sensor: {#ENT_DESCR}</p> |SNMP |sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_INFO}: Temperature |<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p> |SNMP |sensor.temp.value[entPhySensorValue.{#SNMPINDEX}] |
+|Temperature |{#ENT_DESCR}: Temperature status |<p>MIB: HP-ICF-CHASSIS</p><p>Actual status indicated by the sensor: {#ENT_DESCR}</p> |SNMP |sensor.temp.status[hpicfSensorStatus.{#SNMPINDEX}] |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[hpSwitchCpuStat.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|{#ENT_DESCR}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"bad"},eq)}=1` |AVERAGE | |
+|{#ENT_DESCR}: Fan is in warning state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_WARN_STATUS:"warning"},eq)}=1` |WARNING |<p>**Depends on**:</p><p>- {#ENT_DESCR}: Fan is in critical state</p> |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[snmp.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#ENT_DESCR}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"bad"},eq)}=1` |AVERAGE | |
+|{#ENT_DESCR}: Power supply is in warning state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS:"warning"},eq)}=1` |WARNING |<p>**Depends on**:</p><p>- {#ENT_DESCR}: Power supply is in critical state</p> |
+|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/hp_hpn_snmpv2/template_net_hp_hpn_snmpv2.xml b/templates/net/hp_hpn_snmp/template_net_hp_hpn_snmp.xml
index 9f68cf0b45f..a56bf7f2366 100644
--- a/templates/net/hp_hpn_snmpv2/template_net_hp_hpn_snmpv2.xml
+++ b/templates/net/hp_hpn_snmp/template_net_hp_hpn_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:20Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net HP Enterprise Switch SNMPv2</template>
- <name>Template Net HP Enterprise Switch SNMPv2</name>
+ <template>Template Net HP Enterprise Switch SNMP</template>
+ <name>Template Net HP Enterprise Switch SNMP</name>
<description>Template Net HP Enterprise Switch&#13;
&#13;
MIBs used:&#13;
@@ -21,16 +21,16 @@ ENTITY-SENSORS-MIB&#13;
ENTITY-MIB&#13;
STATISTICS-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -61,8 +61,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.5.1.9.6.1.0</snmp_oid>
<key>system.cpu.util[hpSwitchCpuStat.0]</key>
<history>7d</history>
@@ -88,8 +87,7 @@ Reference: http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=emr_na-c0259
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.5.1.1.3.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -126,8 +124,7 @@ A the function set available in your router&#13;
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.36.1.1.2.9.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -161,8 +158,7 @@ A the function set available in your router&#13;
<discovery_rules>
<discovery_rule>
<name>Entity Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>entity.discovery</key>
<delay>1h</delay>
@@ -179,8 +175,7 @@ A the function set available in your router&#13;
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.2.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[entPhysicalDescr.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -202,8 +197,7 @@ A the function set available in your router&#13;
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.8.{#SNMPINDEX}</snmp_oid>
<key>system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -227,8 +221,7 @@ A the function set available in your router&#13;
</discovery_rule>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#ENT_CLASS},1.3.6.1.4.1.11.2.14.11.1.2.6.1.2,{#ENT_DESCR},1.3.6.1.4.1.11.2.14.11.1.2.6.1.7,{#ENT_STATUS},1.3.6.1.4.1.11.2.14.11.1.2.6.1.4]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -251,8 +244,7 @@ A the function set available in your router&#13;
<item_prototypes>
<item_prototype>
<name>{#ENT_DESCR}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.1.2.6.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -285,7 +277,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
<dependencies>
<dependency>
<name>{#ENT_DESCR}: Fan is in critical state</name>
- <expression>{Template Net HP Enterprise Switch SNMPv2:sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"bad"},eq)}=1</expression>
+ <expression>{Template Net HP Enterprise Switch SNMP:sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"bad"},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -295,8 +287,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
</discovery_rule>
<discovery_rule>
<name>Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.11.2.14.11.5.1.1.2.1.1.1.1]</snmp_oid>
<key>memory.discovery</key>
<delay>1h</delay>
@@ -304,8 +295,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Available memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.5.1.1.2.1.1.1.6.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.available[hpLocalMemFreeBytes.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -320,8 +310,7 @@ The number of available (unallocated) bytes.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Total memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.5.1.1.2.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.total[hpLocalMemTotalBytes.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -336,8 +325,7 @@ The number of currently installed bytes.</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Used memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.5.1.1.2.1.1.1.7.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.used[hpLocalMemAllocBytes.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -383,7 +371,7 @@ The number of currently allocated bytes.</description>
<drawtype>BOLD_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net HP Enterprise Switch SNMPv2</host>
+ <host>Template Net HP Enterprise Switch SNMP</host>
<key>vm.memory.total[hpLocalMemTotalBytes.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -392,7 +380,7 @@ The number of currently allocated bytes.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>2774A4</color>
<item>
- <host>Template Net HP Enterprise Switch SNMPv2</host>
+ <host>Template Net HP Enterprise Switch SNMP</host>
<key>vm.memory.available[hpLocalMemFreeBytes.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -407,7 +395,7 @@ The number of currently allocated bytes.</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net HP Enterprise Switch SNMPv2</host>
+ <host>Template Net HP Enterprise Switch SNMP</host>
<key>vm.memory.util[snmp.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -417,8 +405,7 @@ The number of currently allocated bytes.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#ENT_CLASS},1.3.6.1.4.1.11.2.14.11.1.2.6.1.2,{#ENT_DESCR},1.3.6.1.4.1.11.2.14.11.1.2.6.1.7,{#ENT_STATUS},1.3.6.1.4.1.11.2.14.11.1.2.6.1.4]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -441,8 +428,7 @@ The number of currently allocated bytes.</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_DESCR}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.1.2.6.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -475,7 +461,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
<dependencies>
<dependency>
<name>{#ENT_DESCR}: Power supply is in critical state</name>
- <expression>{Template Net HP Enterprise Switch SNMPv2:sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"bad"},eq)}=1</expression>
+ <expression>{Template Net HP Enterprise Switch SNMP:sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"bad"},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -485,8 +471,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_TYPE},1.3.6.1.2.1.99.1.1.1.1,{#SENSOR_INFO},1.3.6.1.2.1.47.1.1.1.1.2,{#SENSOR_PRECISION},1.3.6.1.2.1.99.1.1.1.3]</snmp_oid>
<key>temp.precision0.discovery</key>
<delay>1h</delay>
@@ -509,8 +494,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -537,8 +521,8 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net HP Enterprise Switch SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net HP Enterprise Switch SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net HP Enterprise Switch SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net HP Enterprise Switch SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -565,8 +549,7 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
</discovery_rule>
<discovery_rule>
<name>Temp Status Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#ENT_CLASS},1.3.6.1.4.1.11.2.14.11.1.2.6.1.2,{#ENT_DESCR},1.3.6.1.4.1.11.2.14.11.1.2.6.1.7,{#ENT_STATUS},1.3.6.1.4.1.11.2.14.11.1.2.6.1.4]</snmp_oid>
<key>temp.status.discovery</key>
<delay>1h</delay>
@@ -589,8 +572,7 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
<item_prototypes>
<item_prototype>
<name>{#ENT_DESCR}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11.2.14.11.1.2.6.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[hpicfSensorStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -660,7 +642,7 @@ Actual status indicated by the sensor: {#ENT_DESCR}</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net HP Enterprise Switch SNMPv2</host>
+ <host>Template Net HP Enterprise Switch SNMP</host>
<key>system.cpu.util[hpSwitchCpuStat.0]</key>
</item>
</graph_item>
diff --git a/templates/net/hp_hpn_snmpv2/README.md b/templates/net/hp_hpn_snmpv2/README.md
deleted file mode 100644
index 38020f1f487..00000000000
--- a/templates/net/hp_hpn_snmpv2/README.md
+++ /dev/null
@@ -1,91 +0,0 @@
-
-# Template Net HP Enterprise Switch SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-This template was tested on:
-
-- HP ProCurve J4900B Switch 2626, version ProCurve J4900B Switch 2626, revision H.10.31, ROM H.08.02 (/sw/code/build/fish(mkfs))
-- HP J9728A 2920-48G Switch, version HP J9728A 2920-48G Switch, revision WB.16.03.0003, ROM WB.16.03 (/ws/swbuildm/rel_tacoma_qaoff/code/build/anm(swbuildm_rel_tacoma_qaoff_rel_tacoma)) (Formerly ProCurve)"
-
-## 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`|
-|{$FAN_CRIT_STATUS:"bad"}|<p>-</p>|`2`|
-|{$FAN_WARN_STATUS:"warning"}|<p>-</p>|`3`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS:"bad"}|<p>-</p>|`2`|
-|{$PSU_WARN_STATUS:"warning"}|<p>-</p>|`3`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature Discovery|<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with celsius filter</p>|SNMP|temp.precision0.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `8`</p><p>- B: {#SENSOR_PRECISION} MATCHES_REGEX `0`</p>|
-|Memory Discovery|<p>Discovery of NETSWITCH-MIB::hpLocalMemTable, A table that contains information on all the local memory for each slot.</p>|SNMP|memory.discovery|
-|FAN Discovery|<p>Discovering all entities of hpicfSensorObjectId that ends with: 11.2.3.7.8.3.2 - fans and are present</p>|SNMP|fan.discovery<p>**Filter**:</p>AND <p>- A: {#ENT_CLASS} MATCHES_REGEX `.+8.3.2$`</p><p>- A: {#ENT_STATUS} MATCHES_REGEX `(1|2|3|4)`</p>|
-|PSU Discovery|<p>Discovering all entities of hpicfSensorObjectId that ends with: 11.2.3.7.8.3.1 - power supplies and are present</p>|SNMP|psu.discovery<p>**Filter**:</p>AND <p>- A: {#ENT_CLASS} MATCHES_REGEX `.+8.3.1$`</p><p>- A: {#ENT_STATUS} MATCHES_REGEX `(1|2|3|4)`</p>|
-|Temp Status Discovery|<p>Discovering all entities of hpicfSensorObjectId that ends with: 11.2.3.7.8.3.3 - over temp status and are present</p>|SNMP|temp.status.discovery<p>**Filter**:</p>AND <p>- A: {#ENT_CLASS} MATCHES_REGEX `.+8.3.3$`</p><p>- A: {#ENT_STATUS} MATCHES_REGEX `(1|2|3|4)`</p>|
-|Entity Discovery|<p>-</p>|SNMP|entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: STATISTICS-MIB</p><p>The CPU utilization in percent(%).</p><p>Reference: http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=emr_na-c02597344&sp4ts.oid=51079</p>|SNMP|system.cpu.util[hpSwitchCpuStat.0]|
-|Fans|{#ENT_DESCR}: Fan status|<p>MIB: HP-ICF-CHASSIS</p><p>Actual status indicated by the sensor: {#ENT_DESCR}</p>|SNMP|sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}]|
-|Inventory|Hardware serial number|<p>MIB: SEMI-MIB</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: NETSWITCH-MIB</p><p>Contains the operating code version number (also known as software or firmware).</p><p>For example, a software version such as A.08.01 is described as follows:</p><p>A the function set available in your router</p><p>08 the common release number</p><p>01 updates to the current common release</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Hardware model name|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.model[entPhysicalDescr.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|#{#SNMPVALUE}: Used memory|<p>MIB: NETSWITCH-MIB</p><p>The number of currently allocated bytes.</p>|SNMP|vm.memory.used[hpLocalMemAllocBytes.{#SNMPINDEX}]|
-|Memory|#{#SNMPVALUE}: Available memory|<p>MIB: NETSWITCH-MIB</p><p>The number of available (unallocated) bytes.</p>|SNMP|vm.memory.available[hpLocalMemFreeBytes.{#SNMPINDEX}]|
-|Memory|#{#SNMPVALUE}: Total memory|<p>MIB: NETSWITCH-MIB</p><p>The number of currently installed bytes.</p>|SNMP|vm.memory.total[hpLocalMemTotalBytes.{#SNMPINDEX}]|
-|Memory|#{#SNMPVALUE}: Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[snmp.{#SNMPINDEX}]<p>**Expression**:</p>`last("vm.memory.used[hpLocalMemAllocBytes.{#SNMPINDEX}]")/last("vm.memory.total[hpLocalMemTotalBytes.{#SNMPINDEX}]")*100`|
-|Power_supply|{#ENT_DESCR}: Power supply status|<p>MIB: HP-ICF-CHASSIS</p><p>Actual status indicated by the sensor: {#ENT_DESCR}</p>|SNMP|sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_INFO}: Temperature|<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p>|SNMP|sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]|
-|Temperature|{#ENT_DESCR}: Temperature status|<p>MIB: HP-ICF-CHASSIS</p><p>Actual status indicated by the sensor: {#ENT_DESCR}</p>|SNMP|sensor.temp.status[hpicfSensorStatus.{#SNMPINDEX}]|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[hpSwitchCpuStat.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|{#ENT_DESCR}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"bad"},eq)}=1`|AVERAGE||
-|{#ENT_DESCR}: Fan is in warning state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$FAN_WARN_STATUS:"warning"},eq)}=1`|WARNING|<p>**Depends on**:</p><p>- {#ENT_DESCR}: Fan is in critical state</p>|
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[snmp.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#ENT_DESCR}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"bad"},eq)}=1`|AVERAGE||
-|{#ENT_DESCR}: Power supply is in warning state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[hpicfSensorStatus.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS:"warning"},eq)}=1`|WARNING|<p>**Depends on**:</p><p>- {#ENT_DESCR}: Power supply is in critical state</p>|
-|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/huawei_snmp/README.md b/templates/net/huawei_snmp/README.md
new file mode 100644
index 00000000000..fdc927e2c62
--- /dev/null
+++ b/templates/net/huawei_snmp/README.md
@@ -0,0 +1,74 @@
+
+# Template Net Huawei VRP SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+Reference: https://www.slideshare.net/Huanetwork/huawei-s5700-naming-conventions-and-port-numbering-conventions
+Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234
+
+## 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` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`2` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|MPU Discovery |<p>http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234. Filter limits results to Main Processing Units</p> |SNMP |mpu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_NAME} MATCHES_REGEX `MPU.*`</p> |
+|Entity Discovery |<p>-</p> |SNMP |entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p> |
+|FAN Discovery |<p>-</p> |SNMP |discovery.fans |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |{#ENT_NAME}: CPU utilization |<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p><p>The CPU usage for this entity. Generally, the CPU usage will calculate the overall CPU usage on the entity, and itis not sensible with the number of CPU on the entity.</p><p>Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234</p> |SNMP |system.cpu.util[hwEntityCpuUsage.{#SNMPINDEX}] |
+|Fans |#{#SNMPVALUE}: Fan status |<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p> |SNMP |sensor.fan.status[hwEntityFanState.{#SNMPINDEX}] |
+|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> |
+|Inventory |{#ENT_NAME}: Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Operating system |<p>MIB: ENTITY-MIB</p> |SNMP |system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model[entPhysicalDescr.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |{#ENT_NAME}: Memory utilization |<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p><p>The memory usage for the entity. This object indicates what percent of memory are used.</p><p>Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234</p> |SNMP |vm.memory.util[hwEntityMemUsage.{#SNMPINDEX}] |
+|Temperature |{#ENT_NAME}: Temperature |<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p><p>The temperature for the {#SNMPVALUE}.</p> |SNMP |sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#ENT_NAME}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`{TEMPLATE_NAME:system.cpu.util[hwEntityCpuUsage.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|#{#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[hwEntityFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#ENT_NAME}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`{TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[hwEntityMemUsage.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#ENT_NAME}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#ENT_NAME}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#ENT_NAME}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#ENT_NAME}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/huawei_snmpv2/template_net_huawei_snmpv2.xml b/templates/net/huawei_snmp/template_net_huawei_snmp.xml
index 9ae44a2debe..d14cd9cc59e 100644
--- a/templates/net/huawei_snmpv2/template_net_huawei_snmpv2.xml
+++ b/templates/net/huawei_snmp/template_net_huawei_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:21Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,24 +9,24 @@
</groups>
<templates>
<template>
- <template>Template Net Huawei VRP SNMPv2</template>
- <name>Template Net Huawei VRP SNMPv2</name>
+ <template>Template Net Huawei VRP SNMP</template>
+ <name>Template Net Huawei VRP SNMP</name>
<description>Template Net Huawei VRP&#13;
&#13;
MIBs used:&#13;
HUAWEI-ENTITY-EXTENT-MIB&#13;
ENTITY-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -54,16 +54,14 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.2011.5.25.31.1.1.10.1.1]</snmp_oid>
<key>discovery.fans</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2011.5.25.31.1.1.10.1.7.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[hwEntityFanState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -92,8 +90,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>Entity Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>entity.discovery</key>
<delay>1h</delay>
@@ -110,8 +107,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.2.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[entPhysicalDescr.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -135,8 +131,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>MPU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#ENT_NAME},1.3.6.1.2.1.47.1.1.1.1.7]</snmp_oid>
<key>mpu.discovery</key>
<delay>1h</delay>
@@ -154,8 +149,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2011.5.25.31.1.1.1.1.11.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -180,8 +174,8 @@ The temperature for the {#SNMPVALUE}.</description>
<dependencies>
<dependency>
<name>{#ENT_NAME}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Huawei VRP SNMPv2:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Huawei VRP SNMPv2:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Huawei VRP SNMP:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Huawei VRP SNMP:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -206,8 +200,7 @@ The temperature for the {#SNMPVALUE}.</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[hwEntityCpuUsage.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -233,8 +226,7 @@ Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?c
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -265,8 +257,7 @@ Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?c
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.8.{#SNMPINDEX}</snmp_oid>
<key>system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -288,8 +279,7 @@ Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?c
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.10.{#SNMPINDEX}</snmp_oid>
<key>system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -321,8 +311,7 @@ Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?c
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2011.5.25.31.1.1.1.1.7.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[hwEntityMemUsage.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -356,7 +345,7 @@ Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?c
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Huawei VRP SNMPv2</host>
+ <host>Template Net Huawei VRP SNMP</host>
<key>system.cpu.util[hwEntityCpuUsage.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -371,7 +360,7 @@ Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?c
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Huawei VRP SNMPv2</host>
+ <host>Template Net Huawei VRP SNMP</host>
<key>vm.memory.util[hwEntityMemUsage.{#SNMPINDEX}]</key>
</item>
</graph_item>
diff --git a/templates/net/huawei_snmpv2/README.md b/templates/net/huawei_snmpv2/README.md
deleted file mode 100644
index c30f04ec1d0..00000000000
--- a/templates/net/huawei_snmpv2/README.md
+++ /dev/null
@@ -1,74 +0,0 @@
-
-# Template Net Huawei VRP SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-Reference: https://www.slideshare.net/Huanetwork/huawei-s5700-naming-conventions-and-port-numbering-conventions
-Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234
-
-## 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`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`2`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|MPU Discovery|<p>http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234. Filter limits results to Main Processing Units</p>|SNMP|mpu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_NAME} MATCHES_REGEX `MPU.*`</p>|
-|Entity Discovery|<p>-</p>|SNMP|entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p>|
-|FAN Discovery|<p>-</p>|SNMP|discovery.fans|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|{#ENT_NAME}: CPU utilization|<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p><p>The CPU usage for this entity. Generally, the CPU usage will calculate the overall CPU usage on the entity, and itis not sensible with the number of CPU on the entity.</p><p>Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234</p>|SNMP|system.cpu.util[hwEntityCpuUsage.{#SNMPINDEX}]|
-|Fans|#{#SNMPVALUE}: Fan status|<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p>|SNMP|sensor.fan.status[hwEntityFanState.{#SNMPINDEX}]|
-|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>|
-|Inventory|{#ENT_NAME}: Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version[entPhysicalHardwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Operating system|<p>MIB: ENTITY-MIB</p>|SNMP|system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Hardware model name|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.model[entPhysicalDescr.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|{#ENT_NAME}: Memory utilization|<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p><p>The memory usage for the entity. This object indicates what percent of memory are used.</p><p>Reference: http://support.huawei.com/enterprise/KnowledgebaseReadAction.action?contentId=KB1000090234</p>|SNMP|vm.memory.util[hwEntityMemUsage.{#SNMPINDEX}]|
-|Temperature|{#ENT_NAME}: Temperature|<p>MIB: HUAWEI-ENTITY-EXTENT-MIB</p><p>The temperature for the {#SNMPVALUE}.</p>|SNMP|sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}]|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#ENT_NAME}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)|<p>CPU utilization is too high. The system might be slow to respond.</p>|`{TEMPLATE_NAME:system.cpu.util[hwEntityCpuUsage.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|#{#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[hwEntityFanState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#ENT_NAME}: Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#ENT_NAME}: Operating system description has changed|<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p>|`{TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.sw.os[entPhysicalSoftwareRev.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#ENT_NAME}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[hwEntityMemUsage.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#ENT_NAME}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#ENT_NAME}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#ENT_NAME}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#ENT_NAME}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[hwEntityTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/intel_qlogic_infiniband_snmp/README.md b/templates/net/intel_qlogic_infiniband_snmp/README.md
new file mode 100644
index 00000000000..35eb4ee48b2
--- /dev/null
+++ b/templates/net/intel_qlogic_infiniband_snmp/README.md
@@ -0,0 +1,71 @@
+
+# Template Net Intel_Qlogic Infiniband SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$FAN_CRIT_STATUS} |<p>-</p> |`3` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`3` |
+|{$PSU_WARN_STATUS} |<p>-</p> |`4` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT_STATUS} |<p>-</p> |`3` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN_STATUS} |<p>-</p> |`2` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature Discovery |<p>Discovering sensor's table with temperature filter</p> |SNMP |temp.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `2`</p> |
+|Unit Discovery |<p>-</p> |SNMP |unit.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `2`</p> |
+|PSU Discovery |<p>A textual description of the power supply, that can be assigned by the administrator.</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>icsChassisFanDescription of icsChassisFanTable</p> |SNMP |fan.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Fans |{#SNMPVALUE}: Fan status |<p>MIB: ICS-CHASSIS-MIB</p><p>The operational status of the fan unit.</p> |SNMP |sensor.fan.status[icsChassisFanOperStatus.{#SNMPINDEX}] |
+|Inventory |Hardware model name |<p>MIB: ICS-CHASSIS-MIB</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- REGEX: `(.+) - Firmware \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: ICS-CHASSIS-MIB</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- REGEX: `Firmware Version: ([0-9.]+), \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |{#ENT_NAME}: Hardware serial number |<p>MIB: ICS-CHASSIS-MIB</p><p>The serial number of the FRU. If not available, this value is a zero-length string.</p> |SNMP |system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Power_supply |{#SNMPVALUE}: Power supply status |<p>MIB: ICS-CHASSIS-MIB</p><p>Actual status of the power supply:</p><p>(1) unknown: status not known.</p><p>(2) disabled: power supply is disabled.</p><p>(3) failed - power supply is unable to supply power due to failure.</p><p>(4) warning - power supply is supplying power, but an output or sensor is bad or warning.</p><p>(5) standby - power supply believed usable,but not supplying power.</p><p>(6) engaged - power supply is supplying power.</p><p>(7) redundant - power supply is supplying power, but not needed.</p><p>(8) notPresent - power supply is supplying power is not present.</p> |SNMP |sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_INFO}: Temperature |<p>MIB: ICS-CHASSIS-MIB</p><p>The current value read from the sensor.</p> |SNMP |sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_INFO}: Temperature status |<p>MIB: ICS-CHASSIS-MIB</p><p>The operational status of the sensor.</p> |SNMP |sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[icsChassisFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SNMPVALUE}: Power supply is in warning state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS},eq)}=1` |WARNING |<p>**Depends on**:</p><p>- {#SNMPVALUE}: Power supply is in critical state</p> |
+|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""} or {Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/intel_qlogic_infiniband_snmpv2/template_net_intel_qlogic_infiniband_snmpv2.xml b/templates/net/intel_qlogic_infiniband_snmp/template_net_intel_qlogic_infiniband_snmp.xml
index bb908411eb0..345f876a496 100644
--- a/templates/net/intel_qlogic_infiniband_snmpv2/template_net_intel_qlogic_infiniband_snmpv2.xml
+++ b/templates/net/intel_qlogic_infiniband_snmp/template_net_intel_qlogic_infiniband_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:16Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,20 +9,20 @@
</groups>
<templates>
<template>
- <template>Template Net Intel_Qlogic Infiniband SNMPv2</template>
- <name>Template Net Intel_Qlogic Infiniband SNMPv2</name>
+ <template>Template Net Intel_Qlogic Infiniband SNMP</template>
+ <name>Template Net Intel_Qlogic Infiniband SNMP</name>
<description>Template Net Intel_Qlogic Infiniband&#13;
&#13;
MIBs used:&#13;
ICS-CHASSIS-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -47,8 +47,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.1.1.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -85,8 +84,7 @@ Template tooling version used: 0.34</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.1.1.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -116,8 +114,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.10222.2.1.6.5.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -125,8 +122,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.6.5.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[icsChassisFanOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -156,8 +152,7 @@ The operational status of the fan unit.</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.10222.2.1.4.7.1.2]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -165,8 +160,7 @@ The operational status of the fan unit.</description>
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.4.7.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -207,7 +201,7 @@ Actual status of the power supply:&#13;
<dependencies>
<dependency>
<name>{#SNMPVALUE}: Power supply is in critical state</name>
- <expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
+ <expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -217,8 +211,7 @@ Actual status of the power supply:&#13;
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_TYPE},1.3.6.1.4.1.10222.2.1.9.8.1.2,{#SENSOR_INFO},1.3.6.1.4.1.10222.2.1.9.8.1.7]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -236,8 +229,7 @@ Actual status of the power supply:&#13;
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.9.8.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -256,8 +248,7 @@ The operational status of the sensor.</description>
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.9.8.1.8.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -284,22 +275,22 @@ The current value read from the sensor.</description>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
or&#13;
-{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
+{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>HIGH</priority>
<description>This trigger uses temperature sensor values as well as temperature sensor status if available</description>
</trigger_prototype>
<trigger_prototype>
- <expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
+ <expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
or&#13;
-{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
+{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
<name>{#SENSOR_INFO}: Temperature is above warning threshold: &gt;{$TEMP_WARN:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
@@ -307,10 +298,10 @@ or&#13;
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
or&#13;
-{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
- <recovery_expression>{Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
+ <recovery_expression>{Template Net Intel_Qlogic Infiniband SNMP:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -318,8 +309,7 @@ or&#13;
</discovery_rule>
<discovery_rule>
<name>Unit Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#ENT_CLASS},1.3.6.1.4.1.10222.2.1.1.9.1.3,{#ENT_NAME},1.3.6.1.4.1.10222.2.1.1.9.1.2]</snmp_oid>
<key>unit.discovery</key>
<delay>1h</delay>
@@ -336,8 +326,7 @@ or&#13;
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10222.2.1.1.10.1.1.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}]</key>
<delay>1h</delay>
diff --git a/templates/net/intel_qlogic_infiniband_snmpv2/README.md b/templates/net/intel_qlogic_infiniband_snmpv2/README.md
deleted file mode 100644
index 0e9ba3f5bd3..00000000000
--- a/templates/net/intel_qlogic_infiniband_snmpv2/README.md
+++ /dev/null
@@ -1,71 +0,0 @@
-
-# Template Net Intel_Qlogic Infiniband SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`3`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`3`|
-|{$PSU_WARN_STATUS}|<p>-</p>|`4`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT_STATUS}|<p>-</p>|`3`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN_STATUS}|<p>-</p>|`2`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature Discovery|<p>Discovering sensor's table with temperature filter</p>|SNMP|temp.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `2`</p>|
-|Unit Discovery|<p>-</p>|SNMP|unit.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `2`</p>|
-|PSU Discovery|<p>A textual description of the power supply, that can be assigned by the administrator.</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>icsChassisFanDescription of icsChassisFanTable</p>|SNMP|fan.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Fans|{#SNMPVALUE}: Fan status|<p>MIB: ICS-CHASSIS-MIB</p><p>The operational status of the fan unit.</p>|SNMP|sensor.fan.status[icsChassisFanOperStatus.{#SNMPINDEX}]|
-|Inventory|Hardware model name|<p>MIB: ICS-CHASSIS-MIB</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- REGEX: `(.+) - Firmware \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: ICS-CHASSIS-MIB</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- REGEX: `Firmware Version: ([0-9.]+), \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|{#ENT_NAME}: Hardware serial number|<p>MIB: ICS-CHASSIS-MIB</p><p>The serial number of the FRU. If not available, this value is a zero-length string.</p>|SNMP|system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Power_supply|{#SNMPVALUE}: Power supply status|<p>MIB: ICS-CHASSIS-MIB</p><p>Actual status of the power supply:</p><p>(1) unknown: status not known.</p><p>(2) disabled: power supply is disabled.</p><p>(3) failed - power supply is unable to supply power due to failure.</p><p>(4) warning - power supply is supplying power, but an output or sensor is bad or warning.</p><p>(5) standby - power supply believed usable,but not supplying power.</p><p>(6) engaged - power supply is supplying power.</p><p>(7) redundant - power supply is supplying power, but not needed.</p><p>(8) notPresent - power supply is supplying power is not present.</p>|SNMP|sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_INFO}: Temperature|<p>MIB: ICS-CHASSIS-MIB</p><p>The current value read from the sensor.</p>|SNMP|sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_INFO}: Temperature status|<p>MIB: ICS-CHASSIS-MIB</p><p>The operational status of the sensor.</p>|SNMP|sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}]|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[icsChassisFanOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[icsChassisSystemUnitFruSerialNumber.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SNMPVALUE}: Power supply is in warning state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[icsChassisPowerSupplyEntry.{#SNMPINDEX}].count(#1,{$PSU_WARN_STATUS},eq)}=1`|WARNING|<p>**Depends on**:</p><p>- {#SNMPVALUE}: Power supply is in critical state</p>|
-|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""} or {Template Net Intel_Qlogic Infiniband SNMPv2:sensor.temp.status[icsChassisSensorSlotOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[icsChassisSensorSlotValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/juniper_snmp/README.md b/templates/net/juniper_snmp/README.md
new file mode 100644
index 00000000000..175195683b7
--- /dev/null
+++ b/templates/net/juniper_snmp/README.md
@@ -0,0 +1,78 @@
+
+# Template Net Juniper SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`6` |
+|{$HEALTH_CRIT_STATUS} |<p>-</p> |`3` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`6` |
+|{$TEMP_CRIT:"Routing Engine"} |<p>-</p> |`80` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN:"Routing Engine"} |<p>-</p> |`70` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU and Memory Discovery |<p>Scanning JUNIPER-MIB::jnxOperatingTable for CPU and Memory</p><p>http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines</p> |SNMP |jnxOperatingTable.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `Routing Engine.*`</p> |
+|Temperature discovery |<p>Scanning JUNIPER-MIB::jnxOperatingTable for Temperature</p><p>http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines</p> |SNMP |jnxOperatingTable.discovery.temp<p>**Filter**:</p>AND_OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `[^0]+`</p> |
+|FAN Discovery |<p>Scanning JUNIPER-MIB::jnxOperatingTable for Fans</p> |SNMP |jnxOperatingTable.discovery.fans |
+|PSU Discovery |<p>Scanning JUNIPER-MIB::jnxOperatingTable for Power Supplies</p> |SNMP |jnxOperatingTable.discovery.psu |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |{#SNMPVALUE}: CPU utilization |<p>MIB: JUNIPER-MIB</p><p>The CPU utilization in percentage of this subject. Zero if unavailable or inapplicable.</p><p>Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX%20SNMP%20Monitoring%20Guide_v1.1.pdf</p> |SNMP |system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}] |
+|Fans |{#SNMPVALUE}: Fan status |<p>MIB: JUNIPER-MIB</p> |SNMP |sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}] |
+|Inventory |Hardware serial number |<p>MIB: JUNIPER-MIB</p><p>The serial number of this subject, blank if unknown or unavailable.</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware model name |<p>MIB: JUNIPER-MIB</p><p>The name, model, or detailed description of the box,indicating which product the box is about, for example 'M40'.</p> |SNMP |system.hw.model<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: `kernel (JUNOS [0-9a-zA-Z\.\-]+) \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |{#SNMPVALUE}: Memory utilization |<p>MIB: JUNIPER-MIB</p><p>The buffer pool utilization in percentage of this subject. Zero if unavailable or inapplicable.</p><p>Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX%20SNMP%20Monitoring%20Guide_v1.1.pdf</p> |SNMP |vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}] |
+|Power_supply |{#SNMPVALUE}: Power supply status |<p>MIB: JUNIPER-MIB</p><p>If they are using DC power supplies there is a known issue on PR 1064039 where the fans do not detect the temperature correctly and fail to cool the power supply causing the shutdown to occur.</p><p>This is fixed in Junos 13.3R7 https://forums.juniper.net/t5/Routing/PEM-0-not-OK-MX104/m-p/289644#M14122</p> |SNMP |sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}] |
+|Status |Overall system health status |<p>MIB: JUNIPER-ALARM-MIB</p><p>The red alarm indication on the craft interface panel.</p><p>The red alarm is on when there is some system</p><p>failure or power supply failure or the system</p><p>is experiencing a hardware malfunction or some</p><p>threshold is being exceeded.</p><p>This red alarm state could be turned off by the</p><p>ACO/LT (Alarm Cut Off / Lamp Test) button on the</p><p>front panel module.</p> |SNMP |system.status[jnxRedAlarmState.0] |
+|Temperature |{#SENSOR_INFO}: Temperature |<p>MIB: JUNIPER-MIB</p><p>The temperature in Celsius (degrees C) of {#SENSOR_INFO}</p> |SNMP |sensor.temp.value[jnxOperatingTemp.{#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> |`{TEMPLATE_NAME:system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|{#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>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> |`{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|System status is in critical state |<p>Please check the device for errors</p> |`{TEMPLATE_NAME:system.status[jnxRedAlarmState.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1` |HIGH | |
+|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/juniper_snmpv2/template_net_juniper_snmpv2.xml b/templates/net/juniper_snmp/template_net_juniper_snmp.xml
index dea9ab6faf1..ba5a699278f 100644
--- a/templates/net/juniper_snmpv2/template_net_juniper_snmpv2.xml
+++ b/templates/net/juniper_snmp/template_net_juniper_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:10Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Juniper SNMPv2</template>
- <name>Template Net Juniper SNMPv2</name>
+ <template>Template Net Juniper SNMP</template>
+ <name>Template Net Juniper SNMP</name>
<description>Template Net Juniper&#13;
&#13;
MIBs used:&#13;
@@ -18,16 +18,16 @@ JUNIPER-ALARM-MIB&#13;
JUNIPER-MIB&#13;
SNMPv2-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -61,8 +61,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.2.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -86,8 +85,7 @@ The name, model, or detailed description of the box,indicating which product the
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.3.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -120,8 +118,7 @@ The serial number of this subject, blank if unknown or unavailable.</description
</item>
<item>
<name>Overall system health status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.4.2.3.1.0</snmp_oid>
<key>system.status[jnxRedAlarmState.0]</key>
<delay>30s</delay>
@@ -157,8 +154,7 @@ front panel module.</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.sw.os[sysDescr.0]</key>
<delay>1h</delay>
@@ -198,8 +194,7 @@ front panel module.</description>
<discovery_rules>
<discovery_rule>
<name>CPU and Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.5]</snmp_oid>
<key>jnxOperatingTable.discovery</key>
<delay>1h</delay>
@@ -218,8 +213,7 @@ http://kb.juniper.net/InfoCenter/index?page=content&amp;id=KB17526&amp;actp=sear
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.13.1.8.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -245,8 +239,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
</item_prototype>
<item_prototype>
<name>{#SNMPVALUE}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.13.1.11.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -280,7 +273,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Juniper SNMPv2</host>
+ <host>Template Net Juniper SNMP</host>
<key>system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -295,7 +288,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Juniper SNMPv2</host>
+ <host>Template Net Juniper SNMP</host>
<key>vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -305,8 +298,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
</discovery_rule>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.5.4]</snmp_oid>
<key>jnxOperatingTable.discovery.fans</key>
<delay>1h</delay>
@@ -314,8 +306,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.13.1.6.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -344,8 +335,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.5.2]</snmp_oid>
<key>jnxOperatingTable.discovery.psu</key>
<delay>1h</delay>
@@ -353,8 +343,7 @@ Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX
<item_prototypes>
<item_prototype>
<name>{#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.13.1.6.2.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -385,8 +374,7 @@ This is fixed in Junos 13.3R7 https://forums.juniper.net/t5/Routing/PEM-0-not-OK
</discovery_rule>
<discovery_rule>
<name>Temperature discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.7,{#SENSOR_INFO},1.3.6.1.4.1.2636.3.1.13.1.5]</snmp_oid>
<key>jnxOperatingTable.discovery.temp</key>
<delay>1h</delay>
@@ -405,8 +393,7 @@ http://kb.juniper.net/InfoCenter/index?page=content&amp;id=KB17526&amp;actp=sear
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.2636.3.1.13.1.7.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -431,8 +418,8 @@ The temperature in Celsius (degrees C) of {#SENSOR_INFO}</description>
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Juniper SNMPv2:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Juniper SNMPv2:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Juniper SNMP:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Juniper SNMP:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
diff --git a/templates/net/juniper_snmpv2/README.md b/templates/net/juniper_snmpv2/README.md
deleted file mode 100644
index d2679640101..00000000000
--- a/templates/net/juniper_snmpv2/README.md
+++ /dev/null
@@ -1,78 +0,0 @@
-
-# Template Net Juniper SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT}|<p>-</p>|`90`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`6`|
-|{$HEALTH_CRIT_STATUS}|<p>-</p>|`3`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`6`|
-|{$TEMP_CRIT:"Routing Engine"}|<p>-</p>|`80`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN:"Routing Engine"}|<p>-</p>|`70`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU and Memory Discovery|<p>Scanning JUNIPER-MIB::jnxOperatingTable for CPU and Memory</p><p>http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines</p>|SNMP|jnxOperatingTable.discovery<p>**Filter**:</p>AND_OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `Routing Engine.*`</p>|
-|Temperature discovery|<p>Scanning JUNIPER-MIB::jnxOperatingTable for Temperature</p><p>http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines</p>|SNMP|jnxOperatingTable.discovery.temp<p>**Filter**:</p>AND_OR <p>- A: {#SNMPVALUE} MATCHES_REGEX `[^0]+`</p>|
-|FAN Discovery|<p>Scanning JUNIPER-MIB::jnxOperatingTable for Fans</p>|SNMP|jnxOperatingTable.discovery.fans|
-|PSU Discovery|<p>Scanning JUNIPER-MIB::jnxOperatingTable for Power Supplies</p>|SNMP|jnxOperatingTable.discovery.psu|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|{#SNMPVALUE}: CPU utilization|<p>MIB: JUNIPER-MIB</p><p>The CPU utilization in percentage of this subject. Zero if unavailable or inapplicable.</p><p>Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX%20SNMP%20Monitoring%20Guide_v1.1.pdf</p>|SNMP|system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}]|
-|Fans|{#SNMPVALUE}: Fan status|<p>MIB: JUNIPER-MIB</p>|SNMP|sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}]|
-|Inventory|Hardware serial number|<p>MIB: JUNIPER-MIB</p><p>The serial number of this subject, blank if unknown or unavailable.</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware model name|<p>MIB: JUNIPER-MIB</p><p>The name, model, or detailed description of the box,indicating which product the box is about, for example 'M40'.</p>|SNMP|system.hw.model<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: `kernel (JUNOS [0-9a-zA-Z\.\-]+) \1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|{#SNMPVALUE}: Memory utilization|<p>MIB: JUNIPER-MIB</p><p>The buffer pool utilization in percentage of this subject. Zero if unavailable or inapplicable.</p><p>Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX%20SNMP%20Monitoring%20Guide_v1.1.pdf</p>|SNMP|vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}]|
-|Power_supply|{#SNMPVALUE}: Power supply status|<p>MIB: JUNIPER-MIB</p><p>If they are using DC power supplies there is a known issue on PR 1064039 where the fans do not detect the temperature correctly and fail to cool the power supply causing the shutdown to occur.</p><p>This is fixed in Junos 13.3R7 https://forums.juniper.net/t5/Routing/PEM-0-not-OK-MX104/m-p/289644#M14122</p>|SNMP|sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}]|
-|Status|Overall system health status|<p>MIB: JUNIPER-ALARM-MIB</p><p>The red alarm indication on the craft interface panel.</p><p>The red alarm is on when there is some system</p><p>failure or power supply failure or the system</p><p>is experiencing a hardware malfunction or some</p><p>threshold is being exceeded.</p><p>This red alarm state could be turned off by the</p><p>ACO/LT (Alarm Cut Off / Lamp Test) button on the</p><p>front panel module.</p>|SNMP|system.status[jnxRedAlarmState.0]|
-|Temperature|{#SENSOR_INFO}: Temperature|<p>MIB: JUNIPER-MIB</p><p>The temperature in Celsius (degrees C) of {#SENSOR_INFO}</p>|SNMP|sensor.temp.value[jnxOperatingTemp.{#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>|`{TEMPLATE_NAME:system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|{#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>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>|`{TEMPLATE_NAME:system.sw.os[sysDescr.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysDescr.0].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|System status is in critical state|<p>Please check the device for errors</p>|`{TEMPLATE_NAME:system.status[jnxRedAlarmState.0].count(#1,{$HEALTH_CRIT_STATUS},eq)}=1`|HIGH||
-|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/mellanox_snmp/README.md b/templates/net/mellanox_snmp/README.md
new file mode 100644
index 00000000000..fb89d17bcaa
--- /dev/null
+++ b/templates/net/mellanox_snmp/README.md
@@ -0,0 +1,68 @@
+
+# Template Net Mellanox SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$FAN_CRIT_STATUS} |<p>-</p> |`3` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`2` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN_STATUS} |<p>-</p> |`3` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module HOST-RESOURCES-MIB SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature Discovery |<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with celsius filter</p> |SNMP |temp.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `8`</p><p>- B: {#SENSOR_PRECISION} MATCHES_REGEX `1`</p> |
+|Fan Discovery |<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with rpm filter</p> |SNMP |fan.discovery<p>**Filter**:</p>OR <p>- B: {#SNMPVALUE} MATCHES_REGEX `10`</p> |
+|Entity Discovery |<p>-</p> |SNMP |entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p> |
+|PSU Discovery |<p>-</p> |SNMP |psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `6`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|Fans |{#SENSOR_INFO}: Fan speed |<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p> |SNMP |sensor.fan.speed[entPhySensorValue.{#SNMPINDEX}] |
+|Fans |{#SENSOR_INFO}: Fan status |<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p> |SNMP |sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}] |
+|Inventory |{#ENT_NAME}: Hardware model name |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.model[entPhysicalModelName.{#SNMPINDEX}]<p>**Preprocessing**:</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> |
+|Power_supply |{#ENT_NAME}: Power supply status |<p>MIB: ENTITY-STATE-MIB</p> |SNMP |sensor.psu.status[entStateOper.{#SNMPINDEX}] |
+|Temperature |{#SENSOR_INFO}: Temperature |<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p> |SNMP |sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p> |
+|Temperature |{#SENSOR_INFO}: Temperature status |<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p> |SNMP |sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}] |
+
+## Triggers
+
+|Name|Description|Expression|Severity|Dependencies and additional info|
+|----|-----------|----|----|----|
+|{#SENSOR_INFO}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#ENT_NAME}: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|{#ENT_NAME}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[entStateOper.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Mellanox SNMP:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/mellanox_snmpv2/template_net_mellanox_snmpv2.xml b/templates/net/mellanox_snmp/template_net_mellanox_snmp.xml
index eb175dfba92..650f3024399 100644
--- a/templates/net/mellanox_snmpv2/template_net_mellanox_snmpv2.xml
+++ b/templates/net/mellanox_snmp/template_net_mellanox_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:15Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Mellanox SNMPv2</template>
- <name>Template Net Mellanox SNMPv2</name>
+ <template>Template Net Mellanox SNMP</template>
+ <name>Template Net Mellanox SNMP</name>
<description>Template Net Mellanox&#13;
&#13;
MIBs used:&#13;
@@ -18,16 +18,16 @@ ENTITY-SENSORS-MIB&#13;
ENTITY-STATE-MIB&#13;
ENTITY-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module HOST-RESOURCES-MIB SNMPv2</name>
+ <name>Template Module HOST-RESOURCES-MIB SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -52,8 +52,7 @@ Template tooling version used: 0.34</description>
<discovery_rules>
<discovery_rule>
<name>Entity Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>entity.discovery</key>
<delay>1h</delay>
@@ -70,8 +69,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.13.{#SNMPINDEX}</snmp_oid>
<key>system.hw.model[entPhysicalModelName.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -93,8 +91,7 @@ Template tooling version used: 0.34</description>
</item_prototype>
<item_prototype>
<name>{#ENT_NAME}: Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.{#SNMPINDEX}</snmp_oid>
<key>system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}]</key>
<delay>1h</delay>
@@ -127,8 +124,7 @@ Template tooling version used: 0.34</description>
</discovery_rule>
<discovery_rule>
<name>Fan Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.2.1.99.1.1.1.1,{#SENSOR_INFO},1.3.6.1.2.1.47.1.1.1.1.2]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -146,8 +142,7 @@ Template tooling version used: 0.34</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Fan speed</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.speed[entPhySensorValue.{#SNMPINDEX}]</key>
<units>rpm</units>
@@ -163,8 +158,7 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -194,8 +188,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<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]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -212,8 +205,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
<item_prototypes>
<item_prototype>
<name>{#ENT_NAME}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.131.1.1.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[entStateOper.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -242,8 +234,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SENSOR_TYPE},1.3.6.1.2.1.99.1.1.1.1,{#SENSOR_INFO},1.3.6.1.2.1.47.1.1.1.1.2,{#SENSOR_PRECISION},1.3.6.1.2.1.99.1.1.1.3]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -266,8 +257,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
<item_prototypes>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -286,8 +276,7 @@ The operational status of the sensor {#SENSOR_INFO}</description>
</item_prototype>
<item_prototype>
<name>{#SENSOR_INFO}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.99.1.1.1.4.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -331,11 +320,11 @@ entPhySensorScale, and entPhySensorPrecision objects must also be examined.</des
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Net Mellanox SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
+ <expression>{Template Net Mellanox SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
or&#13;
-{Template Net Mellanox SNMPv2:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
+{Template Net Mellanox SNMP:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Mellanox SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Mellanox SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
<name>{#SENSOR_INFO}: Temperature is above warning threshold: &gt;{$TEMP_WARN:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
@@ -343,8 +332,8 @@ or&#13;
<dependencies>
<dependency>
<name>{#SENSOR_INFO}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Mellanox SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net Mellanox SNMPv2:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net Mellanox SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net Mellanox SNMP:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
diff --git a/templates/net/mellanox_snmpv2/README.md b/templates/net/mellanox_snmpv2/README.md
deleted file mode 100644
index 2f050ecbc12..00000000000
--- a/templates/net/mellanox_snmpv2/README.md
+++ /dev/null
@@ -1,68 +0,0 @@
-
-# Template Net Mellanox SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`3`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`2`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN_STATUS}|<p>-</p>|`3`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module HOST-RESOURCES-MIB SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature Discovery|<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with celsius filter</p>|SNMP|temp.discovery<p>**Filter**:</p>AND <p>- B: {#SENSOR_TYPE} MATCHES_REGEX `8`</p><p>- B: {#SENSOR_PRECISION} MATCHES_REGEX `1`</p>|
-|Fan Discovery|<p>ENTITY-SENSORS-MIB::EntitySensorDataType discovery with rpm filter</p>|SNMP|fan.discovery<p>**Filter**:</p>OR <p>- B: {#SNMPVALUE} MATCHES_REGEX `10`</p>|
-|Entity Discovery|<p>-</p>|SNMP|entity.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `3`</p>|
-|PSU Discovery|<p>-</p>|SNMP|psu.discovery<p>**Filter**:</p>AND_OR <p>- A: {#ENT_CLASS} MATCHES_REGEX `6`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|Fans|{#SENSOR_INFO}: Fan speed|<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p>|SNMP|sensor.fan.speed[entPhySensorValue.{#SNMPINDEX}]|
-|Fans|{#SENSOR_INFO}: Fan status|<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p>|SNMP|sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}]|
-|Inventory|{#ENT_NAME}: Hardware model name|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.model[entPhysicalModelName.{#SNMPINDEX}]<p>**Preprocessing**:</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>|
-|Power_supply|{#ENT_NAME}: Power supply status|<p>MIB: ENTITY-STATE-MIB</p>|SNMP|sensor.psu.status[entStateOper.{#SNMPINDEX}]|
-|Temperature|{#SENSOR_INFO}: Temperature|<p>MIB: ENTITY-SENSORS-MIB</p><p>The most recent measurement obtained by the agent for this sensor.</p><p>To correctly interpret the value of this object, the associated entPhySensorType,</p><p>entPhySensorScale, and entPhySensorPrecision objects must also be examined.</p>|SNMP|sensor.temp.value[entPhySensorValue.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p>|
-|Temperature|{#SENSOR_INFO}: Temperature status|<p>MIB: ENTITY-SENSORS-MIB</p><p>The operational status of the sensor {#SENSOR_INFO}</p>|SNMP|sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}]|
-
-## Triggers
-
-|Name|Description|Expression|Severity|Dependencies and additional info|
-|----|-----------|----|----|----|
-|{#SENSOR_INFO}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[entPhySensorOperStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#ENT_NAME}: Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber[entPhysicalSerialNum.{#SNMPINDEX}].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|{#ENT_NAME}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[entStateOper.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|{#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Mellanox SNMPv2:sensor.temp.status[entPhySensorOperStatus.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|{#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|{#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[entPhySensorValue.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/mikrotik_snmp/README.md b/templates/net/mikrotik_snmp/README.md
new file mode 100644
index 00000000000..831e247bf7a
--- /dev/null
+++ b/templates/net/mikrotik_snmp/README.md
@@ -0,0 +1,93 @@
+
+# Template Net Mikrotik SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## 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` |
+|{$TEMP_CRIT:"CPU"} |<p>-</p> |`75` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN:"CPU"} |<p>-</p> |`70` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+|{$VFS.FS.PUSED.MAX.CRIT} |<p>-</p> |`90` |
+|{$VFS.FS.PUSED.MAX.WARN} |<p>-</p> |`80` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU discovery |<p>HOST-RESOURCES-MIB::hrProcessorTable discovery</p> |SNMP |hrProcessorLoad.discovery |
+|Temperature CPU discovery |<p>MIKROTIK-MIB::mtxrHlProcessorTemperature</p><p>Since temperature of CPU is not available on all Mikrotik hardware, this is done to avoid unsupported items.</p> |SNMP |mtxrHlProcessorTemperature.discovery |
+|Storage discovery |<p>HOST-RESOURCES-MIB::hrStorage discovery with storage filter</p> |SNMP |storage.discovery<p>**Filter**:</p>OR <p>- B: {#STORAGE_TYPE} MATCHES_REGEX `.+4$`</p><p>- A: {#STORAGE_TYPE} MATCHES_REGEX `.+hrStorageFixedDisk`</p> |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |#{#SNMPINDEX}: CPU utilization |<p>MIB: HOST-RESOURCES-MIB</p><p>The average, over the last minute, of the percentage of time that this processor was not idle. Implementations may approximate this one minute smoothing period if necessary.</p> |SNMP |system.cpu.util[hrProcessorLoad.{#SNMPINDEX}] |
+|Inventory |Operating system |<p>MIB: MIKROTIK-MIB</p><p>Software version</p> |SNMP |system.sw.os[mtxrLicVersion.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware model name |<p>-</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware serial number |<p>MIB: MIKROTIK-MIB</p><p>RouterBOARD serial number</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: MIKROTIK-MIB</p><p>Current firmware version</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Used memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p> |SNMP |vm.memory.used[hrStorageUsed.Memory]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Total memory |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in</p><p>units of hrStorageAllocationUnits. This object is</p><p>writable to allow remote configuration of the size of</p><p>the storage area in those cases where such an</p><p>operation makes sense and is possible on the</p><p>underlying system. For example, the amount of main</p><p>memory allocated to a buffer pool might be modified or</p><p>the amount of disk space allocated to virtual memory</p><p>might be modified.</p> |SNMP |vm.memory.total[hrStorageSize.Memory]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.Memory]<p>**Expression**:</p>`last("vm.memory.used[hrStorageUsed.Memory]")/last("vm.memory.total[hrStorageSize.Memory]")*100` |
+|Storage |Disk-{#SNMPINDEX}: 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[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Storage |Disk-{#SNMPINDEX}: Total space |<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in</p><p>units of hrStorageAllocationUnits. This object is</p><p>writable to allow remote configuration of the size of</p><p>the storage area in those cases where such an</p><p>operation makes sense and is possible on the</p><p>underlying system. For example, the amount of main</p><p>memory allocated to a buffer pool might be modified or</p><p>the amount of disk space allocated to virtual memory</p><p>might be modified.</p> |SNMP |vfs.fs.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Storage |Disk-{#SNMPINDEX}: Space utilization |<p>Space utilization in % for Disk-{#SNMPINDEX}</p> |CALCULATED |vfs.fs.pused[hrStorageSize.{#SNMPINDEX}]<p>**Expression**:</p>`(last("vfs.fs.used[hrStorageSize.{#SNMPINDEX}]")/last("vfs.fs.total[hrStorageSize.{#SNMPINDEX}]"))*100` |
+|Temperature |Device: Temperature |<p>MIB: MIKROTIK-MIB</p><p>(mtxrHlTemperature) Device temperature in Celsius (degrees C). Might be missing in entry models (RB750, RB450G..)</p><p>Reference: http://wiki.mikrotik.com/wiki/Manual:SNMP</p> |SNMP |sensor.temp.value[mtxrHlTemperature]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p> |
+|Temperature |CPU: Temperature |<p>MIB: MIKROTIK-MIB</p><p>(mtxrHlProcessorTemperature) Processor temperature in Celsius (degrees C). Might be missing in entry models (RB750, RB450G..)</p> |SNMP |sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p> |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[hrProcessorLoad.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |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> |`{TEMPLATE_NAME:system.sw.os[mtxrLicVersion.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[mtxrLicVersion.0].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:vm.memory.util[memoryUsedPercentage.Memory].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|Disk-{#SNMPINDEX}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}.</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> |`{TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}>{$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"} and (({Template Net Mikrotik SNMP:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMP:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})<5G or {TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}<1d)` |AVERAGE |<p>Manual close: YES</p> |
+|Disk-{#SNMPINDEX}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"}%) |<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"}.</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> |`{TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}>{$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"} and (({Template Net Mikrotik SNMP:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMP:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})<10G or {TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}<1d)` |WARNING |<p>Manual close: YES</p><p>**Depends on**:</p><p>- Disk-{#SNMPINDEX}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}%)</p> |
+|Device: Temperature is above warning threshold: >{$TEMP_WARN:"Device"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].avg(5m)}>{$TEMP_WARN:"Device"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].max(5m)}<{$TEMP_WARN:"Device"}-3` |WARNING |<p>**Depends on**:</p><p>- Device: Temperature is above critical threshold: >{$TEMP_CRIT:"Device"}</p> |
+|Device: Temperature is above critical threshold: >{$TEMP_CRIT:"Device"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].avg(5m)}>{$TEMP_CRIT:"Device"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].max(5m)}<{$TEMP_CRIT:"Device"}-3` |HIGH | |
+|Device: Temperature is too low: <{$TEMP_CRIT_LOW:"Device"} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].avg(5m)}<{$TEMP_CRIT_LOW:"Device"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].min(5m)}>{$TEMP_CRIT_LOW:"Device"}+3` |AVERAGE | |
+|CPU: Temperature is above warning threshold: >{$TEMP_WARN:"CPU"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:"CPU"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:"CPU"}-3` |WARNING |<p>**Depends on**:</p><p>- CPU: Temperature is above critical threshold: >{$TEMP_CRIT:"CPU"}</p> |
+|CPU: Temperature is above critical threshold: >{$TEMP_CRIT:"CPU"} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:"CPU"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:"CPU"}-3` |HIGH | |
+|CPU: Temperature is too low: <{$TEMP_CRIT_LOW:"CPU"} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:"CPU"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:"CPU"}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: Doesn't have ifHighSpeed filled. fixed in more recent versions
+ - Version: RouterOS 6.28 or lower
+
+- Description: Doesn't have any temperature sensors
+ - Version: RouterOS 6.38.5
+ - Device: Mikrotik 941-2nD, Mikrotik 951G-2HnD
+
diff --git a/templates/net/mikrotik_snmpv2/template_net_mikrotik_snmpv2.xml b/templates/net/mikrotik_snmp/template_net_mikrotik_snmp.xml
index 45058646386..0c98243d696 100644
--- a/templates/net/mikrotik_snmpv2/template_net_mikrotik_snmpv2.xml
+++ b/templates/net/mikrotik_snmp/template_net_mikrotik_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:14Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Mikrotik SNMPv2</template>
- <name>Template Net Mikrotik SNMPv2</name>
+ <template>Template Net Mikrotik SNMP</template>
+ <name>Template Net Mikrotik SNMP</name>
<description>Template Net Mikrotik&#13;
&#13;
MIBs used:&#13;
@@ -26,13 +26,13 @@ Known Issues:&#13;
Version: RouterOS 6.38.5&#13;
Device: Mikrotik 941-2nD, Mikrotik 951G-2HnD&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -60,8 +60,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Device: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.14988.1.1.3.10.0</snmp_oid>
<key>sensor.temp.value[mtxrHlTemperature]</key>
<delay>3m</delay>
@@ -93,8 +92,8 @@ Reference: http://wiki.mikrotik.com/wiki/Manual:SNMP</description>
<dependencies>
<dependency>
<name>Device: Temperature is above critical threshold: &gt;{$TEMP_CRIT:"Device"}</name>
- <expression>{Template Net Mikrotik SNMPv2:sensor.temp.value[mtxrHlTemperature].avg(5m)}&gt;{$TEMP_CRIT:"Device"}</expression>
- <recovery_expression>{Template Net Mikrotik SNMPv2:sensor.temp.value[mtxrHlTemperature].max(5m)}&lt;{$TEMP_CRIT:"Device"}-3</recovery_expression>
+ <expression>{Template Net Mikrotik SNMP:sensor.temp.value[mtxrHlTemperature].avg(5m)}&gt;{$TEMP_CRIT:"Device"}</expression>
+ <recovery_expression>{Template Net Mikrotik SNMP:sensor.temp.value[mtxrHlTemperature].max(5m)}&lt;{$TEMP_CRIT:"Device"}-3</recovery_expression>
</dependency>
</dependencies>
</trigger>
@@ -119,8 +118,7 @@ Reference: http://wiki.mikrotik.com/wiki/Manual:SNMP</description>
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.14988.1.1.7.4.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -153,8 +151,7 @@ Current firmware version</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.1.1.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -176,8 +173,7 @@ Current firmware version</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.14988.1.1.7.3.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -210,8 +206,7 @@ RouterBOARD serial number</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.14988.1.1.4.4.0</snmp_oid>
<key>system.sw.os[mtxrLicVersion.0]</key>
<delay>1h</delay>
@@ -245,8 +240,7 @@ Software version</description>
</item>
<item>
<name>Total memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.25.2.3.1.5.65536</snmp_oid>
<key>vm.memory.total[hrStorageSize.Memory]</key>
<history>7d</history>
@@ -275,8 +269,7 @@ might be modified.</description>
</item>
<item>
<name>Used memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.25.2.3.1.6.65536</snmp_oid>
<key>vm.memory.used[hrStorageUsed.Memory]</key>
<history>7d</history>
@@ -322,8 +315,7 @@ The amount of the storage represented by this entry that is allocated, in units
<discovery_rules>
<discovery_rule>
<name>CPU discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.2.1.25.3.3.1.1]</snmp_oid>
<key>hrProcessorLoad.discovery</key>
<delay>1h</delay>
@@ -331,8 +323,7 @@ The amount of the storage represented by this entry that is allocated, in units
<item_prototypes>
<item_prototype>
<name>#{#SNMPINDEX}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.25.3.3.1.2.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[hrProcessorLoad.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -366,7 +357,7 @@ The average, over the last minute, of the percentage of time that this processor
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Mikrotik SNMPv2</host>
+ <host>Template Net Mikrotik SNMP</host>
<key>system.cpu.util[hrProcessorLoad.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -376,8 +367,7 @@ The average, over the last minute, of the percentage of time that this processor
</discovery_rule>
<discovery_rule>
<name>Temperature CPU discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.14988.1.1.3.11]</snmp_oid>
<key>mtxrHlProcessorTemperature.discovery</key>
<delay>1h</delay>
@@ -386,8 +376,7 @@ Since temperature of CPU is not available on all Mikrotik hardware, this is done
<item_prototypes>
<item_prototype>
<name>CPU: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.14988.1.1.3.11.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -418,8 +407,8 @@ Since temperature of CPU is not available on all Mikrotik hardware, this is done
<dependencies>
<dependency>
<name>CPU: Temperature is above critical threshold: &gt;{$TEMP_CRIT:"CPU"}</name>
- <expression>{Template Net Mikrotik SNMPv2:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:"CPU"}</expression>
- <recovery_expression>{Template Net Mikrotik SNMPv2:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:"CPU"}-3</recovery_expression>
+ <expression>{Template Net Mikrotik SNMP:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:"CPU"}</expression>
+ <recovery_expression>{Template Net Mikrotik SNMP:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:"CPU"}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -446,8 +435,7 @@ Since temperature of CPU is not available on all Mikrotik hardware, this is done
</discovery_rule>
<discovery_rule>
<name>Storage discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.2.1.25.2.3.1.3,{#ALLOC_UNITS},1.3.6.1.2.1.25.2.3.1.4,{#STORAGE_TYPE},1.3.6.1.2.1.25.2.3.1.2]</snmp_oid>
<key>storage.discovery</key>
<delay>1h</delay>
@@ -485,8 +473,7 @@ Since temperature of CPU is not available on all Mikrotik hardware, this is done
</item_prototype>
<item_prototype>
<name>Disk-{#SNMPINDEX}: Total space</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.25.2.3.1.5.{#SNMPINDEX}</snmp_oid>
<key>vfs.fs.total[hrStorageSize.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -515,8 +502,7 @@ might be modified.</description>
</item_prototype>
<item_prototype>
<name>Disk-{#SNMPINDEX}: Used space</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.25.2.3.1.6.{#SNMPINDEX}</snmp_oid>
<key>vfs.fs.used[hrStorageSize.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -538,8 +524,8 @@ The amount of the storage represented by this entry that is allocated, in units
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Net Mikrotik SNMPv2:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}&gt;{$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"} and&#13;
-(({Template Net Mikrotik SNMPv2:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMPv2:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})&lt;5G or {Template Net Mikrotik SNMPv2:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}&lt;1d)</expression>
+ <expression>{Template Net Mikrotik SNMP:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}&gt;{$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"} and&#13;
+(({Template Net Mikrotik SNMP:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMP:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})&lt;5G or {Template Net Mikrotik SNMP:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}&lt;1d)</expression>
<name>Disk-{#SNMPINDEX}: Disk space is critically low (used &gt; {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}%)</name>
<opdata>Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})</opdata>
<priority>AVERAGE</priority>
@@ -550,8 +536,8 @@ The amount of the storage represented by this entry that is allocated, in units
<manual_close>YES</manual_close>
</trigger_prototype>
<trigger_prototype>
- <expression>{Template Net Mikrotik SNMPv2:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}&gt;{$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"} and&#13;
-(({Template Net Mikrotik SNMPv2:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMPv2:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})&lt;10G or {Template Net Mikrotik SNMPv2:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}&lt;1d)</expression>
+ <expression>{Template Net Mikrotik SNMP:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}&gt;{$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"} and&#13;
+(({Template Net Mikrotik SNMP:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMP:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})&lt;10G or {Template Net Mikrotik SNMP:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}&lt;1d)</expression>
<name>Disk-{#SNMPINDEX}: Disk space is low (used &gt; {$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"}%)</name>
<opdata>Space used: {ITEM.LASTVALUE3} of {ITEM.LASTVALUE2} ({ITEM.LASTVALUE1})</opdata>
<priority>WARNING</priority>
@@ -563,8 +549,8 @@ The amount of the storage represented by this entry that is allocated, in units
<dependencies>
<dependency>
<name>Disk-{#SNMPINDEX}: Disk space is critically low (used &gt; {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}%)</name>
- <expression>{Template Net Mikrotik SNMPv2:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}&gt;{$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"} and&#13;
-(({Template Net Mikrotik SNMPv2:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMPv2:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})&lt;5G or {Template Net Mikrotik SNMPv2:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}&lt;1d)</expression>
+ <expression>{Template Net Mikrotik SNMP:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}&gt;{$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"} and&#13;
+(({Template Net Mikrotik SNMP:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMP:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})&lt;5G or {Template Net Mikrotik SNMP:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}&lt;1d)</expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -582,7 +568,7 @@ The amount of the storage represented by this entry that is allocated, in units
<calc_fnc>LAST</calc_fnc>
<type>GRAPH_SUM</type>
<item>
- <host>Template Net Mikrotik SNMPv2</host>
+ <host>Template Net Mikrotik SNMP</host>
<key>vfs.fs.total[hrStorageSize.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -591,7 +577,7 @@ The amount of the storage represented by this entry that is allocated, in units
<color>C80000</color>
<calc_fnc>LAST</calc_fnc>
<item>
- <host>Template Net Mikrotik SNMPv2</host>
+ <host>Template Net Mikrotik SNMP</host>
<key>vfs.fs.used[hrStorageSize.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -650,7 +636,7 @@ The amount of the storage represented by this entry that is allocated, in units
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Mikrotik SNMPv2</host>
+ <host>Template Net Mikrotik SNMP</host>
<key>vm.memory.util[memoryUsedPercentage.Memory]</key>
</item>
</graph_item>
diff --git a/templates/net/mikrotik_snmpv2/README.md b/templates/net/mikrotik_snmpv2/README.md
deleted file mode 100644
index 774394fbc42..00000000000
--- a/templates/net/mikrotik_snmpv2/README.md
+++ /dev/null
@@ -1,93 +0,0 @@
-
-# Template Net Mikrotik SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## 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`|
-|{$TEMP_CRIT:"CPU"}|<p>-</p>|`75`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN:"CPU"}|<p>-</p>|`70`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-|{$VFS.FS.PUSED.MAX.CRIT}|<p>-</p>|`90`|
-|{$VFS.FS.PUSED.MAX.WARN}|<p>-</p>|`80`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU discovery|<p>HOST-RESOURCES-MIB::hrProcessorTable discovery</p>|SNMP|hrProcessorLoad.discovery|
-|Temperature CPU discovery|<p>MIKROTIK-MIB::mtxrHlProcessorTemperature</p><p>Since temperature of CPU is not available on all Mikrotik hardware, this is done to avoid unsupported items.</p>|SNMP|mtxrHlProcessorTemperature.discovery|
-|Storage discovery|<p>HOST-RESOURCES-MIB::hrStorage discovery with storage filter</p>|SNMP|storage.discovery<p>**Filter**:</p>OR <p>- B: {#STORAGE_TYPE} MATCHES_REGEX `.+4$`</p><p>- A: {#STORAGE_TYPE} MATCHES_REGEX `.+hrStorageFixedDisk`</p>|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|#{#SNMPINDEX}: CPU utilization|<p>MIB: HOST-RESOURCES-MIB</p><p>The average, over the last minute, of the percentage of time that this processor was not idle. Implementations may approximate this one minute smoothing period if necessary.</p>|SNMP|system.cpu.util[hrProcessorLoad.{#SNMPINDEX}]|
-|Inventory|Operating system|<p>MIB: MIKROTIK-MIB</p><p>Software version</p>|SNMP|system.sw.os[mtxrLicVersion.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware model name|<p>-</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware serial number|<p>MIB: MIKROTIK-MIB</p><p>RouterBOARD serial number</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: MIKROTIK-MIB</p><p>Current firmware version</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|Used memory|<p>MIB: HOST-RESOURCES-MIB</p><p>The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits.</p>|SNMP|vm.memory.used[hrStorageUsed.Memory]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Total memory|<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in</p><p>units of hrStorageAllocationUnits. This object is</p><p>writable to allow remote configuration of the size of</p><p>the storage area in those cases where such an</p><p>operation makes sense and is possible on the</p><p>underlying system. For example, the amount of main</p><p>memory allocated to a buffer pool might be modified or</p><p>the amount of disk space allocated to virtual memory</p><p>might be modified.</p>|SNMP|vm.memory.total[hrStorageSize.Memory]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[memoryUsedPercentage.Memory]<p>**Expression**:</p>`last("vm.memory.used[hrStorageUsed.Memory]")/last("vm.memory.total[hrStorageSize.Memory]")*100`|
-|Storage|Disk-{#SNMPINDEX}: 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[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Storage|Disk-{#SNMPINDEX}: Total space|<p>MIB: HOST-RESOURCES-MIB</p><p>The size of the storage represented by this entry, in</p><p>units of hrStorageAllocationUnits. This object is</p><p>writable to allow remote configuration of the size of</p><p>the storage area in those cases where such an</p><p>operation makes sense and is possible on the</p><p>underlying system. For example, the amount of main</p><p>memory allocated to a buffer pool might be modified or</p><p>the amount of disk space allocated to virtual memory</p><p>might be modified.</p>|SNMP|vfs.fs.total[hrStorageSize.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Storage|Disk-{#SNMPINDEX}: Space utilization|<p>Space utilization in % for Disk-{#SNMPINDEX}</p>|CALCULATED|vfs.fs.pused[hrStorageSize.{#SNMPINDEX}]<p>**Expression**:</p>`(last("vfs.fs.used[hrStorageSize.{#SNMPINDEX}]")/last("vfs.fs.total[hrStorageSize.{#SNMPINDEX}]"))*100`|
-|Temperature|Device: Temperature|<p>MIB: MIKROTIK-MIB</p><p>(mtxrHlTemperature) Device temperature in Celsius (degrees C). Might be missing in entry models (RB750, RB450G..)</p><p>Reference: http://wiki.mikrotik.com/wiki/Manual:SNMP</p>|SNMP|sensor.temp.value[mtxrHlTemperature]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p>|
-|Temperature|CPU: Temperature|<p>MIB: MIKROTIK-MIB</p><p>(mtxrHlProcessorTemperature) Processor temperature in Celsius (degrees C). Might be missing in entry models (RB750, RB450G..)</p>|SNMP|sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p>|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[hrProcessorLoad.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|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>|`{TEMPLATE_NAME:system.sw.os[mtxrLicVersion.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[mtxrLicVersion.0].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:vm.memory.util[memoryUsedPercentage.Memory].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|Disk-{#SNMPINDEX}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}%)|<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}.</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>|`{TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}>{$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"} and (({Template Net Mikrotik SNMPv2:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMPv2:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})<5G or {TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}<1d)`|AVERAGE|<p>Manual close: YES</p>|
-|Disk-{#SNMPINDEX}: Disk space is low (used > {$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"}%)|<p>Two conditions should match: First, space utilization should be above {$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"}.</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>|`{TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].last()}>{$VFS.FS.PUSED.MAX.WARN:"Disk-{#SNMPINDEX}"} and (({Template Net Mikrotik SNMPv2:vfs.fs.total[hrStorageSize.{#SNMPINDEX}].last()}-{Template Net Mikrotik SNMPv2:vfs.fs.used[hrStorageSize.{#SNMPINDEX}].last()})<10G or {TEMPLATE_NAME:vfs.fs.pused[hrStorageSize.{#SNMPINDEX}].timeleft(1h,,100)}<1d)`|WARNING|<p>Manual close: YES</p><p>**Depends on**:</p><p>- Disk-{#SNMPINDEX}: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"Disk-{#SNMPINDEX}"}%)</p>|
-|Device: Temperature is above warning threshold: >{$TEMP_WARN:"Device"}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].avg(5m)}>{$TEMP_WARN:"Device"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].max(5m)}<{$TEMP_WARN:"Device"}-3`|WARNING|<p>**Depends on**:</p><p>- Device: Temperature is above critical threshold: >{$TEMP_CRIT:"Device"}</p>|
-|Device: Temperature is above critical threshold: >{$TEMP_CRIT:"Device"}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].avg(5m)}>{$TEMP_CRIT:"Device"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].max(5m)}<{$TEMP_CRIT:"Device"}-3`|HIGH||
-|Device: Temperature is too low: <{$TEMP_CRIT_LOW:"Device"}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].avg(5m)}<{$TEMP_CRIT_LOW:"Device"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlTemperature].min(5m)}>{$TEMP_CRIT_LOW:"Device"}+3`|AVERAGE||
-|CPU: Temperature is above warning threshold: >{$TEMP_WARN:"CPU"}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:"CPU"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:"CPU"}-3`|WARNING|<p>**Depends on**:</p><p>- CPU: Temperature is above critical threshold: >{$TEMP_CRIT:"CPU"}</p>|
-|CPU: Temperature is above critical threshold: >{$TEMP_CRIT:"CPU"}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:"CPU"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:"CPU"}-3`|HIGH||
-|CPU: Temperature is too low: <{$TEMP_CRIT_LOW:"CPU"}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:"CPU"}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[mtxrHlProcessorTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:"CPU"}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: Doesn't have ifHighSpeed filled. fixed in more recent versions
- - Version: RouterOS 6.28 or lower
-
-- Description: Doesn't have any temperature sensors
- - Version: RouterOS 6.38.5
- - Device: Mikrotik 941-2nD, Mikrotik 951G-2HnD
-
diff --git a/templates/net/netgear_snmp/README.md b/templates/net/netgear_snmp/README.md
new file mode 100644
index 00000000000..8344739c9d0
--- /dev/null
+++ b/templates/net/netgear_snmp/README.md
@@ -0,0 +1,83 @@
+
+# Template Net Netgear Fastpath SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+https://kb.netgear.com/24352/MIBs-for-Smart-switches
+
+This template was tested on:
+
+- Netgear M5300-28G
+
+## 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` |
+|{$FAN_CRIT_STATUS:"failed"} |<p>-</p> |`2` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS:"failed"} |<p>-</p> |`2` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT_STATUS} |<p>-</p> |`3` |
+|{$TEMP_CRIT} |<p>-</p> |`60` |
+|{$TEMP_WARN_STATUS} |<p>-</p> |`2` |
+|{$TEMP_WARN} |<p>-</p> |`50` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|Temperature Discovery |<p>FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesTempSensorsTable</p> |SNMP |temp.discovery |
+|FAN Discovery |<p>FASTPATH-BOXSERVICES-PRIVATE-MIB::1.3.6.1.4.1.4526.10.43.1.6.1.1</p> |SNMP |fan.discovery |
+|PSU Discovery |<p>FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesPowSupplyIndex</p> |SNMP |psu.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: FASTPATH-SWITCHING-MIB</p><p>CPU utilization in %</p> |SNMP |system.cpu.util[agentSwitchCpuProcessTotalUtilization.0]<p>**Preprocessing**:</p><p>- REGEX: `60 Secs \( ([0-9\.]+)%\).+300 Secs \1`</p> |
+|Fans |#{#SNMPVALUE}: Fan status |<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The status of fan</p> |SNMP |sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}] |
+|Inventory |Operating system |<p>MIB: FASTPATH-SWITCHING-MIB</p><p>Operating System running on this unit</p> |SNMP |system.sw.os[agentInventoryOperatingSystem.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware model name |<p>MIB: FASTPATH-SWITCHING-MIB</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware serial number |<p>MIB: FASTPATH-SWITCHING-MIB</p><p>Serial number of the switch</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Available memory |<p>MIB: FASTPATH-SWITCHING-MIB</p><p>The total memory freed for utilization.</p> |SNMP |vm.memory.available[agentSwitchCpuProcessMemFree.0] |
+|Memory |Total memory |<p>MIB: FASTPATH-SWITCHING-MIB</p><p>The total Memory allocated for the tasks</p> |SNMP |vm.memory.total[agentSwitchCpuProcessMemAvailable.0] |
+|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage.0]<p>**Expression**:</p>`(last("vm.memory.total[agentSwitchCpuProcessMemAvailable.0]")-last("vm.memory.available[agentSwitchCpuProcessMemFree.0]"))/last("vm.memory.total[agentSwitchCpuProcessMemAvailable.0]")*100` |
+|Power_supply |#{#SNMPVALUE}: Power supply status |<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The status of power supply</p> |SNMP |sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}] |
+|Temperature |#{#SNMPVALUE}: Temperature |<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The temperature value reported by sensor</p> |SNMP |sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}] |
+|Temperature |#{#SNMPVALUE}: Temperature status |<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The state of temperature sensor</p> |SNMP |sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}] |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[agentSwitchCpuProcessTotalUtilization.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|#{#SNMPVALUE}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"failed"},eq)}=1` |AVERAGE | |
+|Operating system description has changed |<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p> |`{TEMPLATE_NAME:system.sw.os[agentInventoryOperatingSystem.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[agentInventoryOperatingSystem.0].strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>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> |`{TEMPLATE_NAME:vm.memory.util[memoryUsedPercentage.0].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|#{#SNMPVALUE}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"failed"},eq)}=1` |AVERAGE | |
+|#{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Netgear Fastpath SNMP:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- #{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|#{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""} or {Template Net Netgear Fastpath SNMP:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|#{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/netgear_snmpv2/template_net_netgear_snmpv2.xml b/templates/net/netgear_snmp/template_net_netgear_snmp.xml
index b0a9b80466c..c1f2875a232 100644
--- a/templates/net/netgear_snmpv2/template_net_netgear_snmpv2.xml
+++ b/templates/net/netgear_snmp/template_net_netgear_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:22Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,21 +9,21 @@
</groups>
<templates>
<template>
- <template>Template Net Netgear Fastpath SNMPv2</template>
- <name>Template Net Netgear Fastpath SNMPv2</name>
+ <template>Template Net Netgear Fastpath SNMP</template>
+ <name>Template Net Netgear Fastpath SNMP</name>
<description>Template Net Netgear Fastpath&#13;
&#13;
MIBs used:&#13;
FASTPATH-SWITCHING-MIB&#13;
FASTPATH-BOXSERVICES-PRIVATE-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -54,8 +54,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.1.1.4.9.0</snmp_oid>
<key>system.cpu.util[agentSwitchCpuProcessTotalUtilization.0]</key>
<history>7d</history>
@@ -87,8 +86,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.1.1.1.3.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -111,8 +109,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.1.1.1.4.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -145,8 +142,7 @@ Serial number of the switch</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.1.1.1.10.0</snmp_oid>
<key>system.sw.os[agentInventoryOperatingSystem.0]</key>
<delay>1h</delay>
@@ -180,8 +176,7 @@ Operating System running on this unit</description>
</item>
<item>
<name>Available memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.1.1.5.1.0</snmp_oid>
<key>vm.memory.available[agentSwitchCpuProcessMemFree.0]</key>
<history>7d</history>
@@ -196,8 +191,7 @@ The total memory freed for utilization.</description>
</item>
<item>
<name>Total memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.1.1.5.2.0</snmp_oid>
<key>vm.memory.total[agentSwitchCpuProcessMemAvailable.0]</key>
<history>7d</history>
@@ -237,8 +231,7 @@ The total Memory allocated for the tasks</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.4526.10.43.1.6.1.1]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
@@ -246,8 +239,7 @@ The total Memory allocated for the tasks</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.43.1.6.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -277,8 +269,7 @@ The status of fan</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.4526.10.43.1.7.1.1]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
@@ -286,8 +277,7 @@ The status of fan</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.43.1.7.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -317,8 +307,7 @@ The status of power supply</description>
</discovery_rule>
<discovery_rule>
<name>Temperature Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.4526.10.43.1.8.1.1]</snmp_oid>
<key>temp.discovery</key>
<delay>1h</delay>
@@ -326,8 +315,7 @@ The status of power supply</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Temperature status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.43.1.8.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -346,8 +334,7 @@ The state of temperature sensor</description>
</item_prototype>
<item_prototype>
<name>#{#SNMPVALUE}: Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.4526.10.43.1.8.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -374,22 +361,22 @@ The temperature value reported by sensor</description>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
- <expression>{Template Net Netgear Fastpath SNMPv2:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Net Netgear Fastpath SNMP:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
or&#13;
-{Template Net Netgear Fastpath SNMPv2:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
+{Template Net Netgear Fastpath SNMP:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Netgear Fastpath SNMPv2:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Netgear Fastpath SNMP:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
<name>#{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>HIGH</priority>
<description>This trigger uses temperature sensor values as well as temperature sensor status if available</description>
</trigger_prototype>
<trigger_prototype>
- <expression>{Template Net Netgear Fastpath SNMPv2:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
+ <expression>{Template Net Netgear Fastpath SNMP:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_WARN:""}&#13;
or&#13;
-{Template Net Netgear Fastpath SNMPv2:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
+{Template Net Netgear Fastpath SNMP:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
- <recovery_expression>{Template Net Netgear Fastpath SNMPv2:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
+ <recovery_expression>{Template Net Netgear Fastpath SNMP:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_WARN:""}-3</recovery_expression>
<name>#{#SNMPVALUE}: Temperature is above warning threshold: &gt;{$TEMP_WARN:""}</name>
<opdata>Current value: {ITEM.LASTVALUE1}</opdata>
<priority>WARNING</priority>
@@ -397,10 +384,10 @@ or&#13;
<dependencies>
<dependency>
<name>#{#SNMPVALUE}: Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net Netgear Fastpath SNMPv2:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
+ <expression>{Template Net Netgear Fastpath SNMP:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}&gt;{$TEMP_CRIT:""}&#13;
or&#13;
-{Template Net Netgear Fastpath SNMPv2:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
- <recovery_expression>{Template Net Netgear Fastpath SNMPv2:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+{Template Net Netgear Fastpath SNMP:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}</expression>
+ <recovery_expression>{Template Net Netgear Fastpath SNMP:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger_prototype>
@@ -457,7 +444,7 @@ or&#13;
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Netgear Fastpath SNMPv2</host>
+ <host>Template Net Netgear Fastpath SNMP</host>
<key>system.cpu.util[agentSwitchCpuProcessTotalUtilization.0]</key>
</item>
</graph_item>
@@ -471,7 +458,7 @@ or&#13;
<drawtype>BOLD_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Netgear Fastpath SNMPv2</host>
+ <host>Template Net Netgear Fastpath SNMP</host>
<key>vm.memory.total[agentSwitchCpuProcessMemAvailable.0]</key>
</item>
</graph_item>
@@ -480,7 +467,7 @@ or&#13;
<drawtype>GRADIENT_LINE</drawtype>
<color>2774A4</color>
<item>
- <host>Template Net Netgear Fastpath SNMPv2</host>
+ <host>Template Net Netgear Fastpath SNMP</host>
<key>vm.memory.available[agentSwitchCpuProcessMemFree.0]</key>
</item>
</graph_item>
@@ -495,7 +482,7 @@ or&#13;
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Netgear Fastpath SNMPv2</host>
+ <host>Template Net Netgear Fastpath SNMP</host>
<key>vm.memory.util[memoryUsedPercentage.0]</key>
</item>
</graph_item>
diff --git a/templates/net/netgear_snmpv2/README.md b/templates/net/netgear_snmpv2/README.md
deleted file mode 100644
index 289263ff4cd..00000000000
--- a/templates/net/netgear_snmpv2/README.md
+++ /dev/null
@@ -1,83 +0,0 @@
-
-# Template Net Netgear Fastpath SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-https://kb.netgear.com/24352/MIBs-for-Smart-switches
-
-This template was tested on:
-
-- Netgear M5300-28G
-
-## 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`|
-|{$FAN_CRIT_STATUS:"failed"}|<p>-</p>|`2`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS:"failed"}|<p>-</p>|`2`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT_STATUS}|<p>-</p>|`3`|
-|{$TEMP_CRIT}|<p>-</p>|`60`|
-|{$TEMP_WARN_STATUS}|<p>-</p>|`2`|
-|{$TEMP_WARN}|<p>-</p>|`50`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|Temperature Discovery|<p>FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesTempSensorsTable</p>|SNMP|temp.discovery|
-|FAN Discovery|<p>FASTPATH-BOXSERVICES-PRIVATE-MIB::1.3.6.1.4.1.4526.10.43.1.6.1.1</p>|SNMP|fan.discovery|
-|PSU Discovery|<p>FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesPowSupplyIndex</p>|SNMP|psu.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: FASTPATH-SWITCHING-MIB</p><p>CPU utilization in %</p>|SNMP|system.cpu.util[agentSwitchCpuProcessTotalUtilization.0]<p>**Preprocessing**:</p><p>- REGEX: `60 Secs \( ([0-9\.]+)%\).+300 Secs \1`</p>|
-|Fans|#{#SNMPVALUE}: Fan status|<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The status of fan</p>|SNMP|sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}]|
-|Inventory|Operating system|<p>MIB: FASTPATH-SWITCHING-MIB</p><p>Operating System running on this unit</p>|SNMP|system.sw.os[agentInventoryOperatingSystem.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware model name|<p>MIB: FASTPATH-SWITCHING-MIB</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware serial number|<p>MIB: FASTPATH-SWITCHING-MIB</p><p>Serial number of the switch</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|Available memory|<p>MIB: FASTPATH-SWITCHING-MIB</p><p>The total memory freed for utilization.</p>|SNMP|vm.memory.available[agentSwitchCpuProcessMemFree.0]|
-|Memory|Total memory|<p>MIB: FASTPATH-SWITCHING-MIB</p><p>The total Memory allocated for the tasks</p>|SNMP|vm.memory.total[agentSwitchCpuProcessMemAvailable.0]|
-|Memory|Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[memoryUsedPercentage.0]<p>**Expression**:</p>`(last("vm.memory.total[agentSwitchCpuProcessMemAvailable.0]")-last("vm.memory.available[agentSwitchCpuProcessMemFree.0]"))/last("vm.memory.total[agentSwitchCpuProcessMemAvailable.0]")*100`|
-|Power_supply|#{#SNMPVALUE}: Power supply status|<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The status of power supply</p>|SNMP|sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}]|
-|Temperature|#{#SNMPVALUE}: Temperature|<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The temperature value reported by sensor</p>|SNMP|sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}]|
-|Temperature|#{#SNMPVALUE}: Temperature status|<p>MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB</p><p>The state of temperature sensor</p>|SNMP|sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}]|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[agentSwitchCpuProcessTotalUtilization.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|#{#SNMPVALUE}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS:"failed"},eq)}=1`|AVERAGE||
-|Operating system description has changed|<p>Operating system description has changed. Possible reasons that system has been updated or replaced. Ack to close.</p>|`{TEMPLATE_NAME:system.sw.os[agentInventoryOperatingSystem.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[agentInventoryOperatingSystem.0].strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>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>|`{TEMPLATE_NAME:vm.memory.util[memoryUsedPercentage.0].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|#{#SNMPVALUE}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS:"failed"},eq)}=1`|AVERAGE||
-|#{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_WARN:""} or {Template Net Netgear Fastpath SNMPv2:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_WARN_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- #{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|#{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}>{$TEMP_CRIT:""} or {Template Net Netgear Fastpath SNMPv2:sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}].last(0)}={$TEMP_CRIT_STATUS}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|#{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/qtech_snmp/README.md b/templates/net/qtech_snmp/README.md
new file mode 100644
index 00000000000..6935cad5548
--- /dev/null
+++ b/templates/net/qtech_snmp/README.md
@@ -0,0 +1,76 @@
+
+# Template Net QTech QSW SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## Setup
+
+
+## Zabbix configuration
+
+
+### Macros used
+
+|Name|Description|Default|
+|----|-----------|-------|
+|{$CPU.UTIL.CRIT} |<p>-</p> |`90` |
+|{$FAN_CRIT_STATUS} |<p>-</p> |`1` |
+|{$MEMORY.UTIL.MAX} |<p>-</p> |`90` |
+|{$PSU_CRIT_STATUS} |<p>-</p> |`1` |
+|{$TEMP_CRIT_LOW} |<p>-</p> |`5` |
+|{$TEMP_CRIT} |<p>-</p> |`75` |
+|{$TEMP_WARN} |<p>-</p> |`65` |
+
+## Template links
+
+|Name|
+|----|
+|Template Module EtherLike-MIB SNMP |
+|Template Module Generic SNMP |
+|Template Module Interfaces SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|PSU Discovery |<p>-</p> |SNMP |psu.discovery |
+|FAN Discovery |<p>-</p> |SNMP |fan.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: QTECH-MIB</p><p>CPU utilization in %</p> |SNMP |system.cpu.util[switchCpuUsage.0] |
+|Fans |{#SNMPINDEX}: Fan status |<p>MIB: QTECH-MIB</p> |SNMP |sensor.fan.status[sysFanStatus.{#SNMPINDEX}] |
+|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 |Firmware version |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware version(revision) |<p>MIB: ENTITY-MIB</p> |SNMP |system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Operating system |<p>MIB: QTECH-MIB</p> |SNMP |system.sw.os[sysSoftwareVersion.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Used memory |<p>MIB: QTECH-MIB</p><p>Used memory in Bytes</p> |SNMP |vm.memory.used[switchMemoryBusy.0] |
+|Memory |Total memory |<p>MIB: QTECH-MIB</p><p>Total memory in Bytes</p> |SNMP |vm.memory.total[switchMemorySize.0] |
+|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[vm.memory.util.0]<p>**Expression**:</p>`last("vm.memory.used[switchMemoryBusy.0]")/last("vm.memory.total[switchMemorySize.0]")*100` |
+|Power_supply |{#SNMPINDEX}: Power supply status |<p>MIB: QTECH-MIB</p> |SNMP |sensor.psu.status[sysPowerStatus.{#SNMPINDEX}] |
+|Temperature |Temperature |<p>MIB: QTECH-MIB</p><p>Temperature readings of testpoint: __RESOURCE__</p> |SNMP |sensor.temp.value[switchTemperature.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> |`{TEMPLATE_NAME:system.cpu.util[switchCpuUsage.0].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|{#SNMPINDEX}: Fan is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:sensor.fan.status[sysFanStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:system.sw.os[sysSoftwareVersion.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysSoftwareVersion.0].strlen()}>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> |`{TEMPLATE_NAME:vm.memory.util[vm.memory.util.0].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+|{#SNMPINDEX}: Power supply is in critical state |<p>Please check the power supply unit for errors</p> |`{TEMPLATE_NAME:sensor.psu.status[sysPowerStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1` |AVERAGE | |
+|Temperature is above warning threshold: >{$TEMP_WARN:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].max(5m)}<{$TEMP_WARN:""}-3` |WARNING |<p>**Depends on**:</p><p>- Temperature is above critical threshold: >{$TEMP_CRIT:""}</p> |
+|Temperature is above critical threshold: >{$TEMP_CRIT:""} |<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p> |`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].max(5m)}<{$TEMP_CRIT:""}-3` |HIGH | |
+|Temperature is too low: <{$TEMP_CRIT_LOW:""} |<p>-</p> |`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].min(5m)}>{$TEMP_CRIT_LOW:""}+3` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
diff --git a/templates/net/qtech_snmpv2/template_net_qtech_snmpv2.xml b/templates/net/qtech_snmp/template_net_qtech_snmp.xml
index 9830a25eb59..73718126cd2 100644
--- a/templates/net/qtech_snmpv2/template_net_qtech_snmpv2.xml
+++ b/templates/net/qtech_snmp/template_net_qtech_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:21Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,24 +9,24 @@
</groups>
<templates>
<template>
- <template>Template Net QTech QSW SNMPv2</template>
- <name>Template Net QTech QSW SNMPv2</name>
+ <template>Template Net QTech QSW SNMP</template>
+ <name>Template Net QTech QSW SNMP</name>
<description>Template Net QTech QSW&#13;
&#13;
MIBs used:&#13;
QTECH-MIB&#13;
ENTITY-MIB&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module EtherLike-MIB SNMPv2</name>
+ <name>Template Module EtherLike-MIB SNMP</name>
</template>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces SNMPv2</name>
+ <name>Template Module Interfaces SNMP</name>
</template>
</templates>
<groups>
@@ -57,8 +57,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Temperature</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.11.9.0</snmp_oid>
<key>sensor.temp.value[switchTemperature.0]</key>
<delay>3m</delay>
@@ -83,8 +82,8 @@ Temperature readings of testpoint: __RESOURCE__</description>
<dependencies>
<dependency>
<name>Temperature is above critical threshold: &gt;{$TEMP_CRIT:""}</name>
- <expression>{Template Net QTech QSW SNMPv2:sensor.temp.value[switchTemperature.0].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
- <recovery_expression>{Template Net QTech QSW SNMPv2:sensor.temp.value[switchTemperature.0].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
+ <expression>{Template Net QTech QSW SNMP:sensor.temp.value[switchTemperature.0].avg(5m)}&gt;{$TEMP_CRIT:""}</expression>
+ <recovery_expression>{Template Net QTech QSW SNMP:sensor.temp.value[switchTemperature.0].max(5m)}&lt;{$TEMP_CRIT:""}-3</recovery_expression>
</dependency>
</dependencies>
</trigger>
@@ -109,8 +108,7 @@ Temperature readings of testpoint: __RESOURCE__</description>
</item>
<item>
<name>CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.11.10.0</snmp_oid>
<key>system.cpu.util[switchCpuUsage.0]</key>
<history>7d</history>
@@ -135,8 +133,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.9.1</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -168,8 +165,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.13.1</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -192,8 +188,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.11.1</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -225,8 +220,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.2.1.47.1.1.1.1.8.1</snmp_oid>
<key>system.hw.version</key>
<delay>1h</delay>
@@ -248,8 +242,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Operating system</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.3.0</snmp_oid>
<key>system.sw.os[sysSoftwareVersion.0]</key>
<delay>1h</delay>
@@ -282,8 +275,7 @@ CPU utilization in %</description>
</item>
<item>
<name>Total memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.11.6.0</snmp_oid>
<key>vm.memory.total[switchMemorySize.0]</key>
<history>7d</history>
@@ -298,8 +290,7 @@ Total memory in Bytes</description>
</item>
<item>
<name>Used memory</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.11.7.0</snmp_oid>
<key>vm.memory.used[switchMemoryBusy.0]</key>
<history>7d</history>
@@ -339,16 +330,14 @@ Used memory in Bytes</description>
<discovery_rules>
<discovery_rule>
<name>FAN Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.27514.100.1.12.1.3]</snmp_oid>
<key>fan.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>{#SNMPINDEX}: Fan status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.12.1.3.{#SNMPINDEX}</snmp_oid>
<key>sensor.fan.status[sysFanStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -377,16 +366,14 @@ Used memory in Bytes</description>
</discovery_rule>
<discovery_rule>
<name>PSU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.27514.100.1.7.1.5]</snmp_oid>
<key>psu.discovery</key>
<delay>1h</delay>
<item_prototypes>
<item_prototype>
<name>{#SNMPINDEX}: Power supply status</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.27514.100.1.7.1.5.{#SNMPINDEX}</snmp_oid>
<key>sensor.psu.status[sysPowerStatus.{#SNMPINDEX}]</key>
<delay>3m</delay>
@@ -456,7 +443,7 @@ Used memory in Bytes</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net QTech QSW SNMPv2</host>
+ <host>Template Net QTech QSW SNMP</host>
<key>system.cpu.util[switchCpuUsage.0]</key>
</item>
</graph_item>
@@ -471,7 +458,7 @@ Used memory in Bytes</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net QTech QSW SNMPv2</host>
+ <host>Template Net QTech QSW SNMP</host>
<key>vm.memory.util[vm.memory.util.0]</key>
</item>
</graph_item>
diff --git a/templates/net/qtech_snmpv2/README.md b/templates/net/qtech_snmpv2/README.md
deleted file mode 100644
index fec71f8d04e..00000000000
--- a/templates/net/qtech_snmpv2/README.md
+++ /dev/null
@@ -1,76 +0,0 @@
-
-# Template Net QTech QSW SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-
-## Setup
-
-
-## Zabbix configuration
-
-
-### Macros used
-
-|Name|Description|Default|
-|----|-----------|-------|
-|{$CPU.UTIL.CRIT}|<p>-</p>|`90`|
-|{$FAN_CRIT_STATUS}|<p>-</p>|`1`|
-|{$MEMORY.UTIL.MAX}|<p>-</p>|`90`|
-|{$PSU_CRIT_STATUS}|<p>-</p>|`1`|
-|{$TEMP_CRIT_LOW}|<p>-</p>|`5`|
-|{$TEMP_CRIT}|<p>-</p>|`75`|
-|{$TEMP_WARN}|<p>-</p>|`65`|
-
-## Template links
-
-|Name|
-|----|
-|Template Module EtherLike-MIB SNMPv2|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|PSU Discovery|<p>-</p>|SNMP|psu.discovery|
-|FAN Discovery|<p>-</p>|SNMP|fan.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: QTECH-MIB</p><p>CPU utilization in %</p>|SNMP|system.cpu.util[switchCpuUsage.0]|
-|Fans|{#SNMPINDEX}: Fan status|<p>MIB: QTECH-MIB</p>|SNMP|sensor.fan.status[sysFanStatus.{#SNMPINDEX}]|
-|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|Firmware version|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware version(revision)|<p>MIB: ENTITY-MIB</p>|SNMP|system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Operating system|<p>MIB: QTECH-MIB</p>|SNMP|system.sw.os[sysSoftwareVersion.0]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|Used memory|<p>MIB: QTECH-MIB</p><p>Used memory in Bytes</p>|SNMP|vm.memory.used[switchMemoryBusy.0]|
-|Memory|Total memory|<p>MIB: QTECH-MIB</p><p>Total memory in Bytes</p>|SNMP|vm.memory.total[switchMemorySize.0]|
-|Memory|Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[vm.memory.util.0]<p>**Expression**:</p>`last("vm.memory.used[switchMemoryBusy.0]")/last("vm.memory.total[switchMemorySize.0]")*100`|
-|Power_supply|{#SNMPINDEX}: Power supply status|<p>MIB: QTECH-MIB</p>|SNMP|sensor.psu.status[sysPowerStatus.{#SNMPINDEX}]|
-|Temperature|Temperature|<p>MIB: QTECH-MIB</p><p>Temperature readings of testpoint: __RESOURCE__</p>|SNMP|sensor.temp.value[switchTemperature.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>|`{TEMPLATE_NAME:system.cpu.util[switchCpuUsage.0].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|{#SNMPINDEX}: Fan is in critical state|<p>Please check the fan unit</p>|`{TEMPLATE_NAME:sensor.fan.status[sysFanStatus.{#SNMPINDEX}].count(#1,{$FAN_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:system.sw.os[sysSoftwareVersion.0].diff()}=1 and {TEMPLATE_NAME:system.sw.os[sysSoftwareVersion.0].strlen()}>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>|`{TEMPLATE_NAME:vm.memory.util[vm.memory.util.0].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-|{#SNMPINDEX}: Power supply is in critical state|<p>Please check the power supply unit for errors</p>|`{TEMPLATE_NAME:sensor.psu.status[sysPowerStatus.{#SNMPINDEX}].count(#1,{$PSU_CRIT_STATUS},eq)}=1`|AVERAGE||
-|Temperature is above warning threshold: >{$TEMP_WARN:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].avg(5m)}>{$TEMP_WARN:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].max(5m)}<{$TEMP_WARN:""}-3`|WARNING|<p>**Depends on**:</p><p>- Temperature is above critical threshold: >{$TEMP_CRIT:""}</p>|
-|Temperature is above critical threshold: >{$TEMP_CRIT:""}|<p>This trigger uses temperature sensor values as well as temperature sensor status if available</p>|`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].avg(5m)}>{$TEMP_CRIT:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].max(5m)}<{$TEMP_CRIT:""}-3`|HIGH||
-|Temperature is too low: <{$TEMP_CRIT_LOW:""}|<p>-</p>|`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].avg(5m)}<{$TEMP_CRIT_LOW:""}`<p>Recovery expression:</p>`{TEMPLATE_NAME:sensor.temp.value[switchTemperature.0].min(5m)}>{$TEMP_CRIT_LOW:""}+3`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
diff --git a/templates/net/tplink_snmp/README.md b/templates/net/tplink_snmp/README.md
new file mode 100644
index 00000000000..2bdbff648ba
--- /dev/null
+++ b/templates/net/tplink_snmp/README.md
@@ -0,0 +1,77 @@
+
+# Template Net TP-LINK SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+Link to MIBs: http://www.tp-linkru.com/download/T2600G-28TS.html#MIBs_Files
+Sample device overview page: http://www.tp-linkru.com/products/details/cat-39_T2600G-28TS.html#overview
+emulation page(web): http://www.tp-linkru.com/resources/simulator/T2600G-28TS(UN)_1.0/Index.htm
+
+This template was tested on:
+
+- T2600G-28TS revision 2.0, version 2.0.0 Build 20170628 Rel.55184(Beta)
+
+## 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
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces Simple SNMP |
+
+## Discovery rules
+
+|Name|Description|Type|Key and additional info|
+|----|-----------|----|----|
+|CPU Discovery |<p>Discovering TPLINK-SYSMONITOR-MIB::tpSysMonitorCpuTable, displays the CPU utilization of all UNITs.</p> |SNMP |cpu.discovery |
+|Memory Discovery |<p>Discovering TPLINK-SYSMONITOR-MIB::tpSysMonitorMemoryTable, displays the memory utilization of all UNITs.</p> |SNMP |memory.discovery |
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |#{#SNMPVALUE}: CPU utilization |<p>MIB: TPLINK-SYSMONITOR-MIB</p><p>Displays the CPU utilization in 1 minute.</p><p>Reference: http://www.tp-link.com/faq-1330.html</p> |SNMP |system.cpu.util[tpSysMonitorCpu1Minute.{#SNMPINDEX}] |
+|Inventory |Hardware model name |<p>MIB: TPLINK-SYSINFO-MIB</p><p>The hardware version of the product.</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware serial number |<p>MIB: TPLINK-SYSINFO-MIB</p><p>The Serial number of the product.</p> |SNMP |system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: TPLINK-SYSINFO-MIB</p><p>The software version of the product.</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Hardware version(revision) |<p>MIB: TPLINK-SYSINFO-MIB</p><p>The hardware version of the product.</p> |SNMP |system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |#{#SNMPVALUE}: Memory utilization |<p>MIB: TPLINK-SYSMONITOR-MIB</p><p>Displays the memory utilization.</p><p>Reference: http://www.tp-link.com/faq-1330.html</p> |SNMP |vm.memory.util[tpSysMonitorMemoryUtilization.{#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> |`{TEMPLATE_NAME:system.cpu.util[tpSysMonitorCpu1Minute.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0` |INFO |<p>Manual close: YES</p> |
+|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:vm.memory.util[tpSysMonitorMemoryUtilization.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: default sysLocation, sysName and sysContact is not filled with proper data. Real hostname and location can be found only in private branch(TPLINK-SYSINFO-MIB). Please check whether this problem exists in the latest firware: http://www.tp-linkru.com/download/T2600G-28TS.html#Firmware
+ - Version: 2.0.0 Build 20170628 Rel.55184(Beta)
+ - Device: T2600G-28TS 2.0
+
+- Description: The Serial number of the product(tpSysInfoSerialNum) is missing in HW versions prior to V2_170323
+ - Version: prior to version V2_170323
+ - Device: T2600G-28TS 2.0
+
diff --git a/templates/net/tplink_snmpv2/template_net_tplink_snmpv2.xml b/templates/net/tplink_snmp/template_net_tplink_snmp.xml
index 41e06f5bb52..3163ce221a9 100644
--- a/templates/net/tplink_snmpv2/template_net_tplink_snmpv2.xml
+++ b/templates/net/tplink_snmp/template_net_tplink_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:29:13Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net TP-LINK SNMPv2</template>
- <name>Template Net TP-LINK SNMPv2</name>
+ <template>Template Net TP-LINK SNMP</template>
+ <name>Template Net TP-LINK SNMP</name>
<description>Template Net TP-LINK JetStream&#13;
&#13;
MIBs used:&#13;
@@ -27,13 +27,13 @@ Known Issues:&#13;
Version: prior to version V2_170323&#13;
Device: T2600G-28TS 2.0&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv2</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces Simple SNMPv2</name>
+ <name>Template Module Interfaces Simple SNMP</name>
</template>
</templates>
<groups>
@@ -55,8 +55,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>Firmware version</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11863.6.1.1.6.0</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -89,8 +88,7 @@ The software version of the product.</description>
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11863.6.1.1.5.0</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -114,8 +112,7 @@ The hardware version of the product.</description>
</item>
<item>
<name>Hardware serial number</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11863.6.1.1.8.0</snmp_oid>
<key>system.hw.serialnumber</key>
<delay>1h</delay>
@@ -148,8 +145,7 @@ The Serial number of the product.</description>
</item>
<item>
<name>Hardware version(revision)</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11863.6.1.1.5.0</snmp_oid>
<key>system.hw.version</key>
<delay>1h</delay>
@@ -174,8 +170,7 @@ The hardware version of the product.</description>
<discovery_rules>
<discovery_rule>
<name>CPU Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.11863.6.4.1.1.1.1.1]</snmp_oid>
<key>cpu.discovery</key>
<delay>1h</delay>
@@ -183,8 +178,7 @@ The hardware version of the product.</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: CPU utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11863.6.4.1.1.1.1.3.{#SNMPINDEX}</snmp_oid>
<key>system.cpu.util[tpSysMonitorCpu1Minute.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -219,7 +213,7 @@ Reference: http://www.tp-link.com/faq-1330.html</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net TP-LINK SNMPv2</host>
+ <host>Template Net TP-LINK SNMP</host>
<key>system.cpu.util[tpSysMonitorCpu1Minute.{#SNMPINDEX}]</key>
</item>
</graph_item>
@@ -229,8 +223,7 @@ Reference: http://www.tp-link.com/faq-1330.html</description>
</discovery_rule>
<discovery_rule>
<name>Memory Discovery</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>discovery[{#SNMPVALUE},1.3.6.1.4.1.11863.6.4.1.2.1.1.1]</snmp_oid>
<key>memory.discovery</key>
<delay>1h</delay>
@@ -238,8 +231,7 @@ Reference: http://www.tp-link.com/faq-1330.html</description>
<item_prototypes>
<item_prototype>
<name>#{#SNMPVALUE}: Memory utilization</name>
- <type>SNMPV2</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.11863.6.4.1.2.1.1.2.{#SNMPINDEX}</snmp_oid>
<key>vm.memory.util[tpSysMonitorMemoryUtilization.{#SNMPINDEX}]</key>
<history>7d</history>
@@ -273,7 +265,7 @@ Reference: http://www.tp-link.com/faq-1330.html</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net TP-LINK SNMPv2</host>
+ <host>Template Net TP-LINK SNMP</host>
<key>vm.memory.util[tpSysMonitorMemoryUtilization.{#SNMPINDEX}]</key>
</item>
</graph_item>
diff --git a/templates/net/tplink_snmpv2/README.md b/templates/net/tplink_snmpv2/README.md
deleted file mode 100644
index c4e9b9b7e1c..00000000000
--- a/templates/net/tplink_snmpv2/README.md
+++ /dev/null
@@ -1,77 +0,0 @@
-
-# Template Net TP-LINK SNMPv2
-
-## Overview
-
-For Zabbix version: 4.4
-Link to MIBs: http://www.tp-linkru.com/download/T2600G-28TS.html#MIBs_Files
-Sample device overview page: http://www.tp-linkru.com/products/details/cat-39_T2600G-28TS.html#overview
-emulation page(web): http://www.tp-linkru.com/resources/simulator/T2600G-28TS(UN)_1.0/Index.htm
-
-This template was tested on:
-
-- T2600G-28TS revision 2.0, version 2.0.0 Build 20170628 Rel.55184(Beta)
-
-## 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
-
-|Name|
-|----|
-|Template Module Generic SNMPv2|
-|Template Module Interfaces Simple SNMPv2|
-
-## Discovery rules
-
-|Name|Description|Type|Key and additional info|
-|----|-----------|----|----|
-|CPU Discovery|<p>Discovering TPLINK-SYSMONITOR-MIB::tpSysMonitorCpuTable, displays the CPU utilization of all UNITs.</p>|SNMP|cpu.discovery|
-|Memory Discovery|<p>Discovering TPLINK-SYSMONITOR-MIB::tpSysMonitorMemoryTable, displays the memory utilization of all UNITs.</p>|SNMP|memory.discovery|
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|#{#SNMPVALUE}: CPU utilization|<p>MIB: TPLINK-SYSMONITOR-MIB</p><p>Displays the CPU utilization in 1 minute.</p><p>Reference: http://www.tp-link.com/faq-1330.html</p>|SNMP|system.cpu.util[tpSysMonitorCpu1Minute.{#SNMPINDEX}]|
-|Inventory|Hardware model name|<p>MIB: TPLINK-SYSINFO-MIB</p><p>The hardware version of the product.</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware serial number|<p>MIB: TPLINK-SYSINFO-MIB</p><p>The Serial number of the product.</p>|SNMP|system.hw.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: TPLINK-SYSINFO-MIB</p><p>The software version of the product.</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Hardware version(revision)|<p>MIB: TPLINK-SYSINFO-MIB</p><p>The hardware version of the product.</p>|SNMP|system.hw.version<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|#{#SNMPVALUE}: Memory utilization|<p>MIB: TPLINK-SYSMONITOR-MIB</p><p>Displays the memory utilization.</p><p>Reference: http://www.tp-link.com/faq-1330.html</p>|SNMP|vm.memory.util[tpSysMonitorMemoryUtilization.{#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>|`{TEMPLATE_NAME:system.cpu.util[tpSysMonitorCpu1Minute.{#SNMPINDEX}].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|Device has been replaced (new serial number received)|<p>Device serial number has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.serialnumber.diff()}=1 and {TEMPLATE_NAME:system.hw.serialnumber.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>0`|INFO|<p>Manual close: YES</p>|
-|#{#SNMPVALUE}: High memory utilization ( >{$MEMORY.UTIL.MAX}% for 5m)|<p>The system is running out of free memory.</p>|`{TEMPLATE_NAME:vm.memory.util[tpSysMonitorMemoryUtilization.{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: default sysLocation, sysName and sysContact is not filled with proper data. Real hostname and location can be found only in private branch(TPLINK-SYSINFO-MIB). Please check whether this problem exists in the latest firware: http://www.tp-linkru.com/download/T2600G-28TS.html#Firmware
- - Version: 2.0.0 Build 20170628 Rel.55184(Beta)
- - Device: T2600G-28TS 2.0
-
-- Description: The Serial number of the product(tpSysInfoSerialNum) is missing in HW versions prior to V2_170323
- - Version: prior to version V2_170323
- - Device: T2600G-28TS 2.0
-
diff --git a/templates/net/ubiquiti_airos_snmp/README.md b/templates/net/ubiquiti_airos_snmp/README.md
new file mode 100644
index 00000000000..d00e40c43dc
--- /dev/null
+++ b/templates/net/ubiquiti_airos_snmp/README.md
@@ -0,0 +1,75 @@
+
+# Template Net Ubiquiti AirOS SNMP
+
+## Overview
+
+For Zabbix version: 5.0
+
+## 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
+
+|Name|
+|----|
+|Template Module Generic SNMP |
+|Template Module Interfaces Simple SNMP |
+
+## Discovery rules
+
+
+## Items collected
+
+|Group|Name|Description|Type|Key and additional info|
+|-----|----|-----------|----|---------------------|
+|CPU |CPU utilization |<p>MIB: FROGFOOT-RESOURCES-MIB</p><p>5 minute load average of processor load.</p> |SNMP |system.cpu.util[loadValue.2] |
+|Inventory |Hardware model name |<p>MIB: IEEE802dot11-MIB</p><p>A printable string used to identify the manufacturer's product name of the resource. Maximum string length is 128 octets.</p> |SNMP |system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Inventory |Firmware version |<p>MIB: IEEE802dot11-MIB</p><p>Printable string used to identify the manufacturer's product version of the resource. Maximum string length is 128 octets.</p> |SNMP |system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> |
+|Memory |Free memory |<p>MIB: FROGFOOT-RESOURCES-MIB</p> |SNMP |vm.memory.free[memFree.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Total memory |<p>MIB: FROGFOOT-RESOURCES-MIB</p><p>Total memory in Bytes</p> |SNMP |vm.memory.total[memTotal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory (buffers) |<p>MIB: FROGFOOT-RESOURCES-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: FROGFOOT-RESOURCES-MIB</p><p>Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)</p> |SNMP |vm.memory.cached[memCache.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p> |
+|Memory |Memory utilization |<p>Memory utilization in %</p> |CALCULATED |vm.memory.util[memoryUsedPercentage]<p>**Expression**:</p>`(last("vm.memory.total[memTotal.0]")-(last("vm.memory.free[memFree.0]")+last("vm.memory.buffers[memBuffer.0]")+last("vm.memory.cached[memCache.0]")))/last("vm.memory.total[memTotal.0]")*100` |
+
+## 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> |`{TEMPLATE_NAME:system.cpu.util[loadValue.2].min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | |
+|Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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> |`{TEMPLATE_NAME:vm.memory.util[memoryUsedPercentage].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | |
+
+## Feedback
+
+Please report any issues with the template at https://support.zabbix.com
+
+## Known Issues
+
+- Description: UBNT unifi reports speed: like IF-MIB::ifSpeed.1 = Gauge32: 4294967295 for all interfaces
+ - Version: Firmware: BZ.ar7240.v3.7.51.6230.170322.1513
+ - Device: UBNT UAP-LR
+
+- Description: UBNT AirMax(NanoStation, NanoBridge etc) reports ifSpeed: as 0 for VLAN and wireless(ath0) interfaces
+ - Version: Firmware: XW.ar934x.v5.6-beta4.22359.140521.1836
+ - Device: NanoStation M5
+
+- Description: UBNT AirMax(NanoStation, NanoBridge etc) reports always return ifType: as ethernet(6) even for wifi,vlans and other types
+ - Version: Firmware: XW.ar934x.v5.6-beta4.22359.140521.1836
+ - Device: NanoStation M5
+
+- Description: ifXTable is not provided in IF-MIB. So Interfaces Simple Template is used instead
+ - Version: all above
+ - Device: NanoStation, UAP-LR
+
diff --git a/templates/net/ubiquiti_airos_snmpv1/template_net_ubiquiti_airos_snmpv1.xml b/templates/net/ubiquiti_airos_snmp/template_net_ubiquiti_airos_snmp.xml
index 1b132874e5e..2df99bce373 100644
--- a/templates/net/ubiquiti_airos_snmpv1/template_net_ubiquiti_airos_snmpv1.xml
+++ b/templates/net/ubiquiti_airos_snmp/template_net_ubiquiti_airos_snmp.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
- <version>4.4</version>
- <date>2015-12-30T14:41:30Z</date>
+ <version>5.0</version>
+ <date>2020-06-05T01:30:19Z</date>
<groups>
<group>
<name>Templates/Network devices</name>
@@ -9,8 +9,8 @@
</groups>
<templates>
<template>
- <template>Template Net Ubiquiti AirOS SNMPv1</template>
- <name>Template Net Ubiquiti AirOS SNMPv1</name>
+ <template>Template Net Ubiquiti AirOS SNMP</template>
+ <name>Template Net Ubiquiti AirOS SNMP</name>
<description>Template Net Ubiquiti AirOS&#13;
&#13;
MIBs used:&#13;
@@ -35,13 +35,13 @@ Known Issues:&#13;
Version: all above&#13;
Device: NanoStation, UAP-LR&#13;
&#13;
-Template tooling version used: 0.34</description>
+Template tooling version used: 0.36</description>
<templates>
<template>
- <name>Template Module Generic SNMPv1</name>
+ <name>Template Module Generic SNMP</name>
</template>
<template>
- <name>Template Module Interfaces Simple SNMPv1</name>
+ <name>Template Module Interfaces Simple SNMP</name>
</template>
</templates>
<groups>
@@ -63,8 +63,7 @@ Template tooling version used: 0.34</description>
<items>
<item>
<name>CPU utilization</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10002.1.1.1.4.2.1.3.2</snmp_oid>
<key>system.cpu.util[loadValue.2]</key>
<history>7d</history>
@@ -89,8 +88,7 @@ Template tooling version used: 0.34</description>
</item>
<item>
<name>Firmware version</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.2.840.10036.3.1.2.1.4.5</snmp_oid>
<key>system.hw.firmware</key>
<delay>1h</delay>
@@ -123,8 +121,7 @@ Printable string used to identify the manufacturer's product version of the reso
</item>
<item>
<name>Hardware model name</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.2.840.10036.3.1.2.1.3.5</snmp_oid>
<key>system.hw.model</key>
<delay>1h</delay>
@@ -148,8 +145,7 @@ A printable string used to identify the manufacturer's product name of the resou
</item>
<item>
<name>Memory (buffers)</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10002.1.1.1.1.3.0</snmp_oid>
<key>vm.memory.buffers[memBuffer.0]</key>
<history>7d</history>
@@ -170,8 +166,7 @@ Memory used by kernel buffers (Buffers in /proc/meminfo)</description>
</item>
<item>
<name>Memory (cached)</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10002.1.1.1.1.4.0</snmp_oid>
<key>vm.memory.cached[memCache.0]</key>
<history>7d</history>
@@ -192,8 +187,7 @@ Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)</desc
</item>
<item>
<name>Free memory</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10002.1.1.1.1.2.0</snmp_oid>
<key>vm.memory.free[memFree.0]</key>
<history>7d</history>
@@ -213,8 +207,7 @@ Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)</desc
</item>
<item>
<name>Total memory</name>
- <type>SNMPV1</type>
- <snmp_community>{$SNMP_COMMUNITY}</snmp_community>
+ <type>SNMP_AGENT</type>
<snmp_oid>1.3.6.1.4.1.10002.1.1.1.1.1.0</snmp_oid>
<key>vm.memory.total[memTotal.0]</key>
<history>7d</history>
@@ -279,7 +272,7 @@ Total memory in Bytes</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Ubiquiti AirOS SNMPv1</host>
+ <host>Template Net Ubiquiti AirOS SNMP</host>
<key>system.cpu.util[loadValue.2]</key>
</item>
</graph_item>
@@ -294,7 +287,7 @@ Total memory in Bytes</description>
<drawtype>GRADIENT_LINE</drawtype>
<color>1A7C11</color>
<item>
- <host>Template Net Ubiquiti AirOS SNMPv1</host>
+ <host>Template Net Ubiquiti AirOS SNMP</host>
<key>vm.memory.util[memoryUsedPercentage]</key>
</item>
</graph_item>
diff --git a/templates/net/ubiquiti_airos_snmpv1/README.md b/templates/net/ubiquiti_airos_snmpv1/README.md
deleted file mode 100644
index 400e45d7f85..00000000000
--- a/templates/net/ubiquiti_airos_snmpv1/README.md
+++ /dev/null
@@ -1,75 +0,0 @@
-
-# Template Net Ubiquiti AirOS SNMPv1
-
-## Overview
-
-For Zabbix version: 4.4
-
-## 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
-
-|Name|
-|----|
-|Template Module Generic SNMPv1|
-|Template Module Interfaces Simple SNMPv1|
-
-## Discovery rules
-
-
-## Items collected
-
-|Group|Name|Description|Type|Key and additional info|
-|-----|----|-----------|----|---------------------|
-|CPU|CPU utilization|<p>MIB: FROGFOOT-RESOURCES-MIB</p><p>5 minute load average of processor load.</p>|SNMP|system.cpu.util[loadValue.2]|
-|Inventory|Hardware model name|<p>MIB: IEEE802dot11-MIB</p><p>A printable string used to identify the manufacturer's product name of the resource. Maximum string length is 128 octets.</p>|SNMP|system.hw.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Inventory|Firmware version|<p>MIB: IEEE802dot11-MIB</p><p>Printable string used to identify the manufacturer's product version of the resource. Maximum string length is 128 octets.</p>|SNMP|system.hw.firmware<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p>|
-|Memory|Free memory|<p>MIB: FROGFOOT-RESOURCES-MIB</p>|SNMP|vm.memory.free[memFree.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Total memory|<p>MIB: FROGFOOT-RESOURCES-MIB</p><p>Total memory in Bytes</p>|SNMP|vm.memory.total[memTotal.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Memory (buffers)|<p>MIB: FROGFOOT-RESOURCES-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: FROGFOOT-RESOURCES-MIB</p><p>Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)</p>|SNMP|vm.memory.cached[memCache.0]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1024`</p>|
-|Memory|Memory utilization|<p>Memory utilization in %</p>|CALCULATED|vm.memory.util[memoryUsedPercentage]<p>**Expression**:</p>`(last("vm.memory.total[memTotal.0]")-(last("vm.memory.free[memFree.0]")+last("vm.memory.buffers[memBuffer.0]")+last("vm.memory.cached[memCache.0]")))/last("vm.memory.total[memTotal.0]")*100`|
-
-## 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>|`{TEMPLATE_NAME:system.cpu.util[loadValue.2].min(5m)}>{$CPU.UTIL.CRIT}`|WARNING||
-|Firmware has changed|<p>Firmware version has changed. Ack to close</p>|`{TEMPLATE_NAME:system.hw.firmware.diff()}=1 and {TEMPLATE_NAME:system.hw.firmware.strlen()}>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>|`{TEMPLATE_NAME:vm.memory.util[memoryUsedPercentage].min(5m)}>{$MEMORY.UTIL.MAX}`|AVERAGE||
-
-## Feedback
-
-Please report any issues with the template at https://support.zabbix.com
-
-## Known Issues
-
-- Description: UBNT unifi reports speed: like IF-MIB::ifSpeed.1 = Gauge32: 4294967295 for all interfaces
- - Version: Firmware: BZ.ar7240.v3.7.51.6230.170322.1513
- - Device: UBNT UAP-LR
-
-- Description: UBNT AirMax(NanoStation, NanoBridge etc) reports ifSpeed: as 0 for VLAN and wireless(ath0) interfaces
- - Version: Firmware: XW.ar934x.v5.6-beta4.22359.140521.1836
- - Device: NanoStation M5
-
-- Description: UBNT AirMax(NanoStation, NanoBridge etc) reports always return ifType: as ethernet(6) even for wifi,vlans and other types
- - Version: Firmware: XW.ar934x.v5.6-beta4.22359.140521.1836
- - Device: NanoStation M5
-
-- Description: ifXTable is not provided in IF-MIB. So Interfaces Simple Template is used instead
- - Version: all above
- - Device: NanoStation, UAP-LR
-