diff options
Diffstat (limited to 'templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp')
-rw-r--r-- | templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/README.md | 127 | ||||
-rw-r--r-- | templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/template_net_zyxel_mgs-3712f_snmp.yaml | 1469 |
2 files changed, 1596 insertions, 0 deletions
diff --git a/templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/README.md new file mode 100644 index 00000000000..400f305e067 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/README.md @@ -0,0 +1,127 @@ + +# MGS-3712F SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/global/en/products/carrier-and-access-switches/access-switches/mgs-3712f + +This template was tested on: + +- ZYXEL MGS-3712F, version V3.90(BBB.5)_2019.9.23 + +## Setup + +> See [Zabbix template operation](https://www.zabbix.com/documentation/6.0/manual/config/templates_out_of_the_box/network_devices) for basic instructions. + +Refer to the vendor documentation. + +## Zabbix configuration + +No specific Zabbix configuration is required. + +### Macros used + +|Name|Description|Default| +|----|-----------|-------| +|{$CPU.UTIL.CRIT} |<p>-</p> |`90` | +|{$SNMP.TIMEOUT} |<p>The time interval for SNMP agent availability trigger expression.</p> |`5m` | +|{$ZYXEL.LLD.FILTER.IF.CONTROL.MATCHES} |<p>Triggers will be created only for interfaces whose description contains the value of this macro</p> |`NEED TRIGGERS` | +|{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.MATCHES} |<p>Filter of discoverable link types.</p><p>0 - Down link</p><p>1 - Cooper link</p><p>2 - Fiber link</p> |`1|2` | +|{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.NOT_MATCHES} |<p>Filter to exclude discovered by link types.</p> |`CHANGE_IF_NEEDED` | +|{$ZYXEL.LLD.FILTER.IF.NAME.MATCHES} |<p>Filter by discoverable interface names.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.NAME.NOT_MATCHES} |<p>Filter to exclude discovered interfaces by name.</p> |`CHANGE_IF_NEEDED` | +|{$ZYXEL.LLD.FILTER.SFP.STATUS.MATCHES} |<p>Filter of discoverable status.</p><p>0 - OK with DDM</p><p>1 - OK without DDM</p><p>2 - nonoperational</p> |`1|2` | +|{$ZYXEL.LLD.FILTER.SFP.STATUS.NOT_MATCHES} |<p>Filter to exclude discovered by status.</p> |`CHANGE_IF_NEEDED` | +|{$ZYXEL.LLD.FILTER.SFPDDM.DESC.MATCHES} |<p>Filter by discoverable SFP modules name.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.SFPDDM.DESC.NOT_MATCHES} |<p>Filter to exclude discovered SFP modules by name.</p> |`N/A` | +|{$ZYXEL.LLD.SFP.UPDATE} |<p>Receiving data from the SFP module is slow, we do not recommend setting the interval less than 10 minutes.</p> |`10m` | + +## Template links + +There are no template links in this template. + +## Discovery rules + +|Name|Description|Type|Key and additional info| +|----|-----------|----|----| +|Fan discovery |<p>An entry in fanRpmTable.</p> |SNMP |zyxel.3712f.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.3712f.temp.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Voltage discovery |<p>An entry in voltageTable.</p> |SNMP |zyxel.3712f.volt.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Interface discovery |<p>An entry in fanRpmTable.</p> |SNMP |zyxel.3712f.net.if.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.NAME} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.NAME.MATCHES}`</p><p>- B: {#ZYXEL.IF.NAME} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.NAME.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.LINKUPTYPE} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.MATCHES}`</p><p>- D: {#ZYXEL.IF.LINKUPTYPE} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.NOT_MATCHES}`</p> | +|SFP without DDM discovery |<p>SFP module discovery.</p> |SNMP |zyxel.3712f.sfp.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.SFP.STATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.SFP.STATUS.MATCHES}`</p><p>- B: {#ZYXEL.SFP.STATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.SFP.STATUS.NOT_MATCHES}`</p> | +|SFP with DDM discovery |<p>SFP DDM module discovery.</p> |SNMP |zyxel.3712f.sfp.ddm.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>**Filter**:</p>AND <p>- A: {#ZYXEL.SFP.DESCRIPTION} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.SFPDDM.DESC.MATCHES}`</p><p>- B: {#ZYXEL.SFP.DESCRIPTION} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.SFPDDM.DESC.NOT_MATCHES}`</p> | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL MGS-3712F: CPU utilization |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3712f.cpuusage | +|Fans |ZYXEL MGS-3712F: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.3712f.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL MGS-3712F: Hardware model name |<p>MIB: RFC1213-MIB</p><p>A textual description of the entity. This value</p><p>should include the full name and version</p><p>identification of the system's hardware type,</p><p>software operating-system, and networking</p><p>software. It is mandatory that this only contain</p><p>printable ASCII characters.</p> |SNMP |zyxel.3712f.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712F: Contact |<p>MIB: RFC1213-MIB</p><p>The textual identification of the contact person</p><p>for this managed node, together with information</p><p>on how to contact this person.</p> |SNMP |zyxel.3712f.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712F: Host name |<p>MIB: RFC1213-MIB</p><p>An administratively-assigned name for this</p><p>managed node. By convention, this is the node's</p><p>fully-qualified domain name.</p> |SNMP |zyxel.3712f.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712F: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3712f.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712F: MAC address |<p>MIB: IF-MIB</p><p>The interface's address at the protocol layer</p><p>immediately `below' the network layer in the</p><p>protocol stack. For interfaces which do not have</p><p>such an address (e.g., a serial line), this object</p><p>should contain an octet string of zero length.</p> |SNMP |zyxel.3712f.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712F: ZyNOS F/W Version |<p>MIB: ZYXEL-MGS3712F-MIB</p> |SNMP |zyxel.3712f.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL MGS-3712F: Hardware serial number |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Serial number</p> |SNMP |zyxel.3712f.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transmission mode</p> |SNMP |zyxel.3712f.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3712f.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Physical connection type</p> |SNMP |zyxel.3712f.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3712f.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Operational status |<p>MIB: IF-MIB</p><p>The current operational state of the interface.</p><p>The testing(3) state indicates that no operational</p><p>packets can be passed.</p> |SNMP |zyxel.3712f.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Administrative status |<p>MIB: IF-MIB</p><p>The desired state of the interface. The</p><p>testing(3) state indicates that no operational</p><p>packets can be passed.</p> |SNMP |zyxel.3712f.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming traffic |<p>MIB: IF-MIB</p><p>The total number of octets received on the interface,</p><p>including framing characters.</p> |SNMP |zyxel.3712f.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming unicast packages |<p>MIB: IF-MIB</p><p>The number of packets, delivered by this sub-layer to a</p><p>higher (sub-)layer, which were not addressed to a multicast</p><p>or broadcast address at this sub-layer</p> |SNMP |zyxel.3712f.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming multicast packages |<p>MIB: IF-MIB</p><p>The number of packets, delivered by this sub-layer to a</p><p>higher (sub-)layer, which were addressed to a multicast</p><p>address at this sub-layer. For a MAC layer protocol, this</p><p>includes both Group and Functional addresses.</p> |SNMP |zyxel.3712f.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming broadcast packages |<p>MIB: IF-MIB</p><p>The number of packets, delivered by this sub-layer to a</p><p>higher (sub-)layer, which were addressed to a broadcast</p><p>address at this sub-layer.</p> |SNMP |zyxel.3712f.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing traffic |<p>MIB: IF-MIB</p><p>The total number of octets transmitted out of the</p><p>interface, including framing characters. This object is a</p><p>64-bit version of ifOutOctets.</p> |SNMP |zyxel.3712f.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing unicast packages |<p>MIB: IF-MIB</p><p>The total number of packets that higher-level protocols</p><p>requested be transmitted, and which were not addressed to a</p><p>multicast or broadcast address at this sub-layer, including</p><p>those that were discarded or not sent.</p> |SNMP |zyxel.3712f.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing multicast packages |<p>MIB: IF-MIB</p><p>The total number of packets that higher-level protocols</p><p>requested be transmitted, and which were addressed to a</p><p>multicast address at this sub-layer, including those that</p><p>were discarded or not sent. For a MAC layer protocol, this</p><p>includes both Group and Functional addresses.</p> |SNMP |zyxel.3712f.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing broadcast packages |<p>MIB: IF-MIB</p><p>The total number of packets that higher-level protocols</p><p>requested be transmitted, and which were addressed to a</p><p>broadcast address at this sub-layer, including those that</p><p>were discarded or not sent.</p> |SNMP |zyxel.3712f.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Link speed |<p>MIB: IF-MIB</p><p>An estimate of the interface's current bandwidth in bits per second</p> |SNMP |zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3712f.net.if.in.util[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- IN_RANGE: `0 100`</p><p>⛔️ON_FAIL: `DISCARD_VALUE -> `</p><p>**Expression**:</p>`last(zyxel.3712f.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3712f.net.if.out.util[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- IN_RANGE: `0 100`</p><p>⛔️ON_FAIL: `DISCARD_VALUE -> `</p><p>**Expression**:</p>`last(zyxel.3712f.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.3712f.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3712f.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3712f.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3712f.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3712f.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3712f.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3712f.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL MGS-3712F: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3712f.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MGS-3712F: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MGS-3712F: Uptime |<p>MIB: RFC1213-MIB</p><p>The time (in hundredths of a second) since the</p><p>network management portion of the system was last</p><p>re-initialized.</p> |SNMP |zyxel.3712f.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL MGS-3712F: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3712f.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MGS-3712F: 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:zyxel.3712f.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MGS-3712F: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.3712f.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL MGS-3712F: Template does not match hardware |<p>This template is for Zyxel MGS-3712F, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3712f.model.last()}<>"MGS-3712F"` |INFO | | +|ZYXEL MGS-3712F: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3712f.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3712f.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712F: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3712f.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3712f.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712F: Port {#SNMPINDEX}: Link down |<p>This trigger expression works as follows:</p><p>1. Can be triggered if operations status is down.</p><p>2. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)</p><p>WARNING: if closed manually - won't fire again on next poll, because of .diff.</p> |`{TEMPLATE_NAME:zyxel.3712f.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3712f.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3712f.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MGS-3712F: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: High {#ZYXEL.SFP.DESCRIPTION} (over {#ZYXEL.SFP.WARN.MAX}{#ZYXEL.SFP.UNIT}) |<p>The upper threshold value of the parameter is exceeded</p> |`{TEMPLATE_NAME:zyxel.3712f.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: Low {#ZYXEL.SFP.DESCRIPTION} (less than {#ZYXEL.SFP.WARN.MIN}{#ZYXEL.SFP.UNIT}) |<p>The parameter values are less than the lower threshold</p> |`{TEMPLATE_NAME:zyxel.3712f.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MGS-3712F: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3712f.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL MGS-3712F: No SNMP data collection |<p>SNMP is not available for polling. Please check device connectivity and SNMP settings.</p> |`{TEMPLATE_NAME:zabbix[host,snmp,available].max({$SNMP.TIMEOUT})}=0` |WARNING | | +|ZYXEL MGS-3712F: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3712f.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712F: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3712f.temp[{#SNMPINDEX}].last()}>{#ZYXEL.TEMP.THRESH.HIGH}` |AVERAGE | | + +## Feedback + +Please report any issues with the template at https://support.zabbix.com + +You can also provide a feedback, discuss the template or ask for help with it at [ZABBIX forums](https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/422668-discussion-thread-for-official-zabbix-templates-for-zyxel). + +## Known Issues + +- Description: Incorrect handling of SNMP bulk requests. Disable the use of bulk requests in the SNMP interface settings. + - Version: all versions firmware + - Device: ZYXEL MGS-3712F + diff --git a/templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/template_net_zyxel_mgs-3712f_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/template_net_zyxel_mgs-3712f_snmp.yaml new file mode 100644 index 00000000000..aaf38b0465f --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs-3712f_snmp/template_net_zyxel_mgs-3712f_snmp.yaml @@ -0,0 +1,1469 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:22:12Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 01deb47efa1f4a9092de67fd61820a7d + template: 'ZYXEL MGS-3712F SNMP' + name: 'ZYXEL MGS-3712F SNMP' + description: | + ZYXEL MGS-3712F + + MIBs used: + ZYXEL-MGS3712F-MIB + RFC1213-MIB + IF-MIB + + Known Issues: + + Description: Incorrect handling of SNMP bulk requests. Disable the use of bulk requests in the SNMP interface settings. + Version: all versions firmware + Device: ZYXEL MGS-3712F + + You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/422668-discussion-thread-for-official-zabbix-templates-for-zyxel + + Template tooling version used: 0.38 + groups: + - + name: 'Templates/Network devices' + items: + - + uuid: 2bd320c5d71d471e8b68a5f30e1aa5d9 + name: 'ZYXEL MGS-3712F: SNMP agent availability' + type: INTERNAL + key: 'zabbix[host,snmp,available]' + history: 7d + valuemap: + name: 'SNMP available' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Status + triggers: + - + uuid: c4244d60e8aa4cc380442992c031b2fd + expression: 'max(/ZYXEL MGS-3712F SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MGS-3712F: No SNMP data collection' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: WARNING + description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.' + - + uuid: 71ba1c991114432c9dca4f39b30e7872 + name: 'ZYXEL MGS-3712F: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3712f.contact + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: RFC1213-MIB + The textual identification of the contact person + for this managed node, together with information + on how to contact this person. + inventory_link: CONTACT + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + - + uuid: 69432e1306ae46eab178082cb5ed7bc3 + name: 'ZYXEL MGS-3712F: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.48.11.7.0 + key: zyxel.3712f.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-MGS3712F-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 084cf3c89c9c48eeac9131d831a4f71b + expression: 'min(/ZYXEL MGS-3712F SNMP/zyxel.3712f.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MGS-3712F: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)' + opdata: 'Current utilization: {ITEM.LASTVALUE1}' + priority: WARNING + description: 'CPU utilization is too high. The system might be slow to respond.' + - + uuid: 4ced5f4185284f32b767036ffe41302c + name: 'ZYXEL MGS-3712F: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.48.1]' + key: zyxel.3712f.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-MGS3712F-MIB' + inventory_link: SOFTWARE_FULL + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var tmpObj = {}; + inArray.forEach(function(item, i, arr) { + tmpObj[item["{#SNMPINDEX}"]] = item["{#SNMP.ARRAY}"] + }); + var strOut = 'V' + tmpObj["1.0"] + '.' + tmpObj["2.0"] + + '(' + tmpObj["3.0"] + '.' + tmpObj["4.0"] + ')_' + + tmpObj["7.0"] + '.' + tmpObj["6.0"] + '.' + tmpObj["5.0"]; + return strOut; + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: fbf62d3f9ce54baab9a16f3e123811ef + expression: '(last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.fwversion,#1)<>last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.fwversion,#2))=1 and length(last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.fwversion))>0' + name: 'ZYXEL MGS-3712F: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 98c18ebb978448098922d7930e2ed00b + name: 'ZYXEL MGS-3712F: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3712f.location + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: RFC1213-MIB + The physical location of this node (e.g., + `telephone closet, 3rd floor'). + inventory_link: LOCATION + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + - + uuid: bfd1233a36e94dfe93cd02ac95a7218e + name: 'ZYXEL MGS-3712F: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3712f.mac + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: IF-MIB + The interface's address at the protocol layer + immediately `below' the network layer in the + protocol stack. For interfaces which do not have + such an address (e.g., a serial line), this object + should contain an octet string of zero length. + inventory_link: MACADDRESS_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + - + uuid: e734e8fe661043ac84d55a2497a50cf5 + name: 'ZYXEL MGS-3712F: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3712f.model + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: RFC1213-MIB + A textual description of the entity. This value + should include the full name and version + identification of the system's hardware type, + software operating-system, and networking + software. It is mandatory that this only contain + printable ASCII characters. + inventory_link: MODEL + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: bf3d28b088db48a59aaa9e88f6b13cb8 + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.model)<>"MGS-3712F"' + name: 'ZYXEL MGS-3712F: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MGS-3712F, but connected to {ITEM.VALUE}' + - + uuid: 026c51d2e28943e98056a934355a0161 + name: 'ZYXEL MGS-3712F: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3712f.name + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: RFC1213-MIB + An administratively-assigned name for this + managed node. By convention, this is the node's + fully-qualified domain name. + inventory_link: NAME + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + - + uuid: 97eaf488887c42b89a4e6f6103ceeef6 + name: 'ZYXEL MGS-3712F: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.48.1.10.0 + key: zyxel.3712f.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: ccb3fe676cd742af954b8c5e7898e5f0 + expression: '(last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.serialnumber,#1)<>last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.serialnumber,#2))=1 and length(last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.serialnumber))>0' + name: 'ZYXEL MGS-3712F: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: e5e21fdb6dae4dc49038f0801c87a5c6 + name: 'ZYXEL MGS-3712F: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3712f.uptime + delay: 30s + history: 2w + trends: 0d + units: uptime + description: | + MIB: RFC1213-MIB + The time (in hundredths of a second) since the + network management portion of the system was last + re-initialized. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.01' + tags: + - + tag: Application + value: Status + triggers: + - + uuid: 6a31fdd61b9f4aa99c8ad15ff243c6b2 + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.uptime)<10m' + name: 'ZYXEL MGS-3712F: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 0f15b0a5b34d4849800ea65b1f5e0916 + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.48.8.1.1.5]' + key: zyxel.3712f.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 12073ba0a2894561bfa130aeca7c8aba + name: 'ZYXEL MGS-3712F: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.8.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3712f.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-MGS3712F-MIB + Current speed in Revolutions Per Minute (RPM) on the fan. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Fans + trigger_prototypes: + - + uuid: 4672af40f7434a419d063c6f00f4f9f8 + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL MGS-3712F: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 09b10e607e14466d8c49512955f6f30e + name: 'ZYXEL MGS-3712F: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.fan[{#SNMPINDEX}]' + - + uuid: 4e39a7b918fd44a1bd3986380d116e9f + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.48.22.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.48.22.1.1.5]' + key: zyxel.3712f.net.if.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.NAME}' + value: '{$ZYXEL.LLD.FILTER.IF.NAME.MATCHES}' + formulaid: C + - + macro: '{#ZYXEL.IF.NAME}' + value: '{$ZYXEL.LLD.FILTER.IF.NAME.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - + macro: '{#ZYXEL.IF.LINKUPTYPE}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.LINKUPTYPE}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 84b7463fd2ff40f4b854ad5331fbf0da + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.adminstatus[{#SNMPINDEX}]' + history: 7d + description: | + MIB: IF-MIB + The desired state of the interface. The + testing(3) state indicates that no operational + packets can be passed. + valuemap: + name: 'ZYXEL MGS-3712F port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: ba54ef4ceafd4445bab7f2365c6c4404 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.descr[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: IF-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 1955d72ae95a4c53922a4a209c48af45 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]' + history: 7d + units: bps + description: | + MIB: IF-MIB + An estimate of the interface's current bandwidth in bits per second + preprocessing: + - + type: MULTIPLIER + parameters: + - '1000000' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 8971f0814f9f4a90a9163b83804665f1 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.in.broadcastpkts[{#SNMPINDEX}]' + history: 7d + units: packets/s + description: | + MIB: IF-MIB + The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a broadcast + address at this sub-layer. + preprocessing: + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: b3f54f3b51474b608ae5f4cec6990b1a + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.in.multicastpkts[{#SNMPINDEX}]' + history: 7d + units: packets/s + description: | + MIB: IF-MIB + The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a multicast + address at this sub-layer. For a MAC layer protocol, this + includes both Group and Functional addresses. + preprocessing: + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: a4a13a2309d94ea7a6f935796c1f4623 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.in.traffic[{#SNMPINDEX}]' + history: 7d + units: bps + description: | + MIB: IF-MIB + The total number of octets received on the interface, + including framing characters. + preprocessing: + - + type: MULTIPLIER + parameters: + - '8' + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: a1b595cd244340aea0dd9343a36619b6 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.in.ucastpkts[{#SNMPINDEX}]' + history: 7d + units: packets/s + description: | + MIB: IF-MIB + The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were not addressed to a multicast + or broadcast address at this sub-layer + preprocessing: + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 13f394481ad045ed8db3693be14ed2f1 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3712f.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3712f.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100' + description: 'Interface utilization percentage' + preprocessing: + - + type: IN_RANGE + parameters: + - '0' + - '100' + error_handler: DISCARD_VALUE + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: c173d9fb0e4645f8b1b5cdd70881ea0a + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.22.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MGS3712F-MIB + Physical connection type + valuemap: + name: 'ZYXEL MGS-3712F operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: b0dc3f51f7f544e6ac7c14d4aaf5b7a6 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.22.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 0c940b9948f043b5a58e59cfd1e3f585 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.operstatus[{#SNMPINDEX}]' + history: 7d + description: | + MIB: IF-MIB + The current operational state of the interface. + The testing(3) state indicates that no operational + packets can be passed. + valuemap: + name: 'ZYXEL MGS-3712F port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: d92c1f55c21e4780ada69269d95c5f45 + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Link down' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: | + This trigger expression works as follows: + 1. Can be triggered if operations status is down. + 2. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.) + + WARNING: if closed manually - won't fire again on next poll, because of .diff. + manual_close: 'YES' + - + uuid: 759ec75f1155444187f970e3141e219b + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.out.broadcastpkts[{#SNMPINDEX}]' + history: 7d + units: packets/s + description: | + MIB: IF-MIB + The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + broadcast address at this sub-layer, including those that + were discarded or not sent. + preprocessing: + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 9cfa5cdeb08c403ea487107303fb52c9 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.out.multicastpkts[{#SNMPINDEX}]' + history: 7d + units: packets/s + description: | + MIB: IF-MIB + The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + multicast address at this sub-layer, including those that + were discarded or not sent. For a MAC layer protocol, this + includes both Group and Functional addresses. + preprocessing: + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 44c57404960045998f6b11129c5c9e74 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.out.traffic[{#SNMPINDEX}]' + history: 7d + units: bps + description: | + MIB: IF-MIB + The total number of octets transmitted out of the + interface, including framing characters. This object is a + 64-bit version of ifOutOctets. + preprocessing: + - + type: MULTIPLIER + parameters: + - '8' + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: d618cdab510147dba8781669b62535d5 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.out.ucastpkts[{#SNMPINDEX}]' + history: 7d + units: packets/s + description: | + MIB: IF-MIB + The total number of packets that higher-level protocols + requested be transmitted, and which were not addressed to a + multicast or broadcast address at this sub-layer, including + those that were discarded or not sent. + preprocessing: + - + type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 4ae2370776ea425095a8856ac4a51868 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3712f.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3712f.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3712f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100' + description: 'Interface utilization percentage' + preprocessing: + - + type: IN_RANGE + parameters: + - '0' + - '100' + error_handler: DISCARD_VALUE + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 9dabada8160e47138c2416002346fc2d + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.22.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3712f.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MGS3712F-MIB + Transmission mode + valuemap: + name: 'ZYXEL MGS-3712F operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: 6d6da920b3b841d2a348016bfa4fd529 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 337c2059cb87491fbacae5690da55ca7 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: 3e75d1f6271943eaaf19644716fe4e40 + name: 'ZYXEL MGS-3712F: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.net.if.in.util[{#SNMPINDEX}]' + overrides: + - + name: 'Trigger disabled' + step: '1' + filter: + conditions: + - + macro: '{#ZYXEL.IF.NAME}' + value: '.*' + formulaid: A + operations: + - + operationobject: TRIGGER_PROTOTYPE + operator: REGEXP + value: '.*' + status: ENABLED + discover: NO_DISCOVER + - + name: 'Trigger enabled' + step: '2' + filter: + conditions: + - + macro: '{#ZYXEL.IF.NAME}' + value: '{$ZYXEL.LLD.FILTER.IF.CONTROL.MATCHES}' + formulaid: A + operations: + - + operationobject: TRIGGER_PROTOTYPE + operator: REGEXP + value: '.*' + status: ENABLED + discover: DISCOVER + - + uuid: d48eedbbb8ad448da866d11d6f40ce91 + name: 'SFP with DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.WARN.MAX},.1.3.6.1.4.1.890.1.5.8.48.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.48.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.48.117.2.1.8]' + key: zyxel.3712f.sfp.ddm.discovery + delay: 12h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.SFP.DESCRIPTION}' + value: '{$ZYXEL.LLD.FILTER.SFPDDM.DESC.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.SFP.DESCRIPTION}' + value: '{$ZYXEL.LLD.FILTER.SFPDDM.DESC.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + description: 'SFP DDM module discovery.' + item_prototypes: + - + uuid: d9accdfbf4e44ef28a191f6c9fd864b1 + name: 'ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-MGS3712F-MIB + Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}). + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.01' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#ZYXEL.SFP.PORT}' + trigger_prototypes: + - + uuid: 1ef8b878bd334f1eac9d9c4258d1f4f2 + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: High {#ZYXEL.SFP.DESCRIPTION} (over {#ZYXEL.SFP.WARN.MAX}{#ZYXEL.SFP.UNIT})' + priority: WARNING + description: 'The upper threshold value of the parameter is exceeded' + - + uuid: 6605455fa4764a578feff4ce12a20883 + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: Low {#ZYXEL.SFP.DESCRIPTION} (less than {#ZYXEL.SFP.WARN.MIN}{#ZYXEL.SFP.UNIT})' + priority: WARNING + description: 'The parameter values are less than the lower threshold' + graph_prototypes: + - + uuid: 1ea36937222d40b0a714b47fb0fceb36 + name: 'ZYXEL MGS-3712F: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.sfp.ddm[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var nameMap = { + 'Temperature': '°C', + 'Voltage': 'V', + 'TxBias': 'mA', + 'TxPower': 'dbm', + 'RxPower': 'dbm' + }; + var outArr = []; + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SFP.PORT}'] = item['{#SNMPINDEX}'].split('.')[0]; + item['{#ZYXEL.SFP.UNIT}'] = nameMap[item['{#ZYXEL.SFP.DESCRIPTION}']] === undefined ? "" : nameMap[item['{#ZYXEL.SFP.DESCRIPTION}']]; + item['{#ZYXEL.SFP.WARN.MAX}'] /= 100; + item['{#ZYXEL.SFP.WARN.MIN}'] /= 100; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: b3d39eb65ab547de92862c93ca9ea2b0 + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.48.117.1.1.2]' + key: zyxel.3712f.sfp.discovery + delay: 12h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.SFP.STATUS}' + value: '{$ZYXEL.LLD.FILTER.SFP.STATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.SFP.STATUS}' + value: '{$ZYXEL.LLD.FILTER.SFP.STATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + description: 'SFP module discovery.' + item_prototypes: + - + uuid: 430c8c876a974a0f8df8d79222bb7dcd + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 519c8737de814a6aabce25ea8ef52c1a + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: ea54a5a49aa4447ba77a28b4b110a77a + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Revision level for part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: bb97e6edd8574888b6892a0d49849406 + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 8fc46b61f7854893839a307700627d18 + expression: '(last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX} has been replaced (new serial number received)' + priority: INFO + description: 'SFP {#SNMPINDEX} serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: b0a81abdecad42788715ad879c2d03fa + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-MGS3712F-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL MGS-3712F SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: db78a10438534c53bc0bc7ce09d784cd + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 536d22ea7a654bf99b26eeaa8e6761f7 + name: 'ZYXEL MGS-3712F: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3712f.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MGS3712F-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: a6e733335bb24801bf006586185ffaff + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.48.8.2.1.5]' + key: zyxel.3712f.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: 02ba756962cf4ab3b3c90817e4c5f053 + name: 'ZYXEL MGS-3712F: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.8.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3712f.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-MGS3712F-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: b0d3093a36984493a7ffe87c7c4d408e + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL MGS-3712F: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 75294455e2ce4c2cb902c6b58549c8d8 + name: 'ZYXEL MGS-3712F: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.temp[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var nameMap = {"1":"MAC", "2":"CPU", "3":"PHY"}; + var outArr = []; + inArray.forEach(function(item, i, arr) { + item["{#ZYXEL.TEMP.ID}"] = nameMap[item["{#SNMPINDEX}"]] + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: 4ccedd9f504346eda12af79b21362322 + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.48.8.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.48.8.3.1.5]' + key: zyxel.3712f.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: d1f0e62a6fad4d578c0d524278c7ad3d + name: 'ZYXEL MGS-3712F: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.48.8.3.1.2.{#SNMPINDEX}' + key: 'zyxel.3712f.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-MGS3712F-MIB + The current voltage reading. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.001' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Power supply' + trigger_prototypes: + - + uuid: 9a15b78bae564c879a5c95290cde63fe + expression: 'last(/ZYXEL MGS-3712F SNMP/zyxel.3712f.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL MGS-3712F: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: fd954391176a47728eec01caed2234b5 + name: 'ZYXEL MGS-3712F: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: 'zyxel.3712f.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function(item, i, arr) { + item["{#ZYXEL.VOLT.NOMINAL}"] = "+" + item["{#ZYXEL.VOLT.NOMINAL}"] / 1000 + "V"; + item["{#ZYXEL.VOLT.THRESH.LOW}"] = item["{#ZYXEL.VOLT.THRESH.LOW}"] / 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$CPU.UTIL.CRIT}' + value: '90' + - + macro: '{$SNMP.TIMEOUT}' + value: 5m + description: 'The time interval for SNMP agent availability trigger expression.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.CONTROL.MATCHES}' + value: 'NEED TRIGGERS' + description: 'Triggers will be created only for interfaces whose description contains the value of this macro' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.MATCHES}' + value: 1|2 + description: 'Filter of discoverable link types. 0 - Down link 1 - Cooper link 2 - Fiber link' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.NOT_MATCHES}' + value: CHANGE_IF_NEEDED + description: 'Filter to exclude discovered by link types.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.NAME.MATCHES}' + value: '.*' + description: 'Filter by discoverable interface names.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.NAME.NOT_MATCHES}' + value: CHANGE_IF_NEEDED + description: 'Filter to exclude discovered interfaces by name.' + - + macro: '{$ZYXEL.LLD.FILTER.SFP.STATUS.MATCHES}' + value: 1|2 + description: 'Filter of discoverable status. 0 - OK with DDM 1 - OK without DDM 2 - nonoperational' + - + macro: '{$ZYXEL.LLD.FILTER.SFP.STATUS.NOT_MATCHES}' + value: CHANGE_IF_NEEDED + description: 'Filter to exclude discovered by status.' + - + macro: '{$ZYXEL.LLD.FILTER.SFPDDM.DESC.MATCHES}' + value: '.*' + description: 'Filter by discoverable SFP modules name.' + - + macro: '{$ZYXEL.LLD.FILTER.SFPDDM.DESC.NOT_MATCHES}' + value: N/A + description: 'Filter to exclude discovered SFP modules by name.' + - + macro: '{$ZYXEL.LLD.SFP.UPDATE}' + value: 10m + description: 'Receiving data from the SFP module is slow, we do not recommend setting the interval less than 10 minutes.' + valuemaps: + - + uuid: bf6cbe819fb94c85becf4364c47ef1c4 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 2695f35dedcf41e1aade2037e931c57e + name: 'ZYXEL MGS-3712F operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: c2b235ab2e6042568c096fdfb466f7dc + name: 'ZYXEL MGS-3712F operational mode port speed duplex' + mappings: + - + value: '0' + newvalue: auto + - + value: '1' + newvalue: '10M half' + - + value: '2' + newvalue: '10M full' + - + value: '3' + newvalue: '100M half' + - + value: '4' + newvalue: '100M full' + - + value: '5' + newvalue: '1G full' + - + uuid: d145d8ee5ad2423f906335d30bfef592 + name: 'ZYXEL MGS-3712F port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 655823ba854540c78a8078d4e7594bf9 + name: 'ZYXEL MGS-3712F port operational status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + value: '4' + newvalue: Unknown + - + value: '5' + newvalue: Dormant + - + value: '6' + newvalue: NotPresent + - + value: '7' + newvalue: lowerLayerDown + - + uuid: bf0d94784c404b209d4c75c8f582a5c6 + name: 'ZYXEL MGS-3712F SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: 85bd11f116ef4e3b9695dc783c625f05 + name: 'ZYXEL MGS-3712F: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712F SNMP' + key: zyxel.3712f.cpuusage |