diff options
29 files changed, 22948 insertions, 0 deletions
diff --git a/ChangeLog.d/feature/ZBXNEXT-6590 b/ChangeLog.d/feature/ZBXNEXT-6590 new file mode 100644 index 00000000000..4e4f2ad7a30 --- /dev/null +++ b/ChangeLog.d/feature/ZBXNEXT-6590 @@ -0,0 +1 @@ +.........T [ZBXNEXT-6590] added templates ZYXEL ISP switches and DSLAM (abakaldin) diff --git a/templates/net/zyxel_snmp/zyxel_aam1212-51_snmp/README.md b/templates/net/zyxel_snmp/zyxel_aam1212-51_snmp/README.md new file mode 100644 index 00000000000..7a8e37f8ac7 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_aam1212-51_snmp/README.md @@ -0,0 +1,110 @@ + +# AAM1212-51 IES-612 SNMP + +## Overview + +For Zabbix version: 6.0 and higher +http://origin-eu.zyxel.com/products_services/ies_1248_51v.shtml?t=p + +This template was tested on: + +- ZYXEL AAM1212-51 / IES-612 + +## 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| +|----|-----------|-------| +|{$SNMP.TIMEOUT} |<p>The time interval for SNMP agent availability trigger expression.</p> |`5m` | +|{$ZYXEL.ADSL.ATN.MAX} |<p>Type the maximum signal attenuation</p> |`40` | +|{$ZYXEL.ADSL.SNR.MIN} |<p>Type the minimum signal to noise margin (0-31 dB)</p> |`8` | +|{$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.LINKSTATUS.MATCHES} |<p>Filter of discoverable link types.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES} |<p>Filter to exclude discovered by link types.</p> |`2` | + +## Template links + +There are no template links in this template. + +## Discovery rules + +|Name|Description|Type|Key and additional info| +|----|-----------|----|----| +|Temperature discovery |<p>An entry in tempTable.</p> |SNMP |zyxel.aam1212.temp.discovery | +|Voltage discovery |<p>An entry in voltageTable.</p> |SNMP |zyxel.aam1212.volt.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Ethernet interface discovery |<p>-</p> |SNMP |zyxel.aam1212.net.if.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- B: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.NAME} MATCHES_REGEX `enet`</p> | +|ADSL interface discovery |<p>-</p> |SNMP |zyxel.aam1212.net.adsl.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- B: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.NAME} MATCHES_REGEX `adsl`</p> | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|Inventory |ZYXEL AAM1212-51 / IES-612: 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.aam1212.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL AAM1212-51 / IES-612: 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.aam1212.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL AAM1212-51 / IES-612: 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.aam1212.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL AAM1212-51 / IES-612: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.aam1212.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL AAM1212-51 / IES-612: 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.aam1212.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL AAM1212-51 / IES-612: ZyNOS F/W Version |<p>MIB: ZYXEL-IESCOMMON-MIB</p> |SNMP |zyxel.aam1212.fwversion<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL AAM1212-51 / IES-612: Hardware serial number |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>Serial number</p> |SNMP |zyxel.aam1212.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.aam1212.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: 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.aam1212.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: 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.aam1212.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: 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.aam1212.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: 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.aam1212.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.aam1212.net.adsl.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: 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.aam1212.net.adsl.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: 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.aam1212.net.adsl.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: 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.aam1212.net.adsl.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: 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.aam1212.net.adsl.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUC noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.aam1212.net.adsl.atuc.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUC attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.aam1212.net.adsl.atuc.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUC output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.aam1212.net.adsl.atuc.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUR noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.aam1212.net.adsl.atur.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUR attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.aam1212.net.adsl.atur.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUR output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.aam1212.net.adsl.atur.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Power_supply |ZYXEL AAM1212-51 / IES-612: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.aam1212.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL AAM1212-51 / IES-612: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL AAM1212-51 / IES-612: 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.aam1212.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Status |ZYXEL AAM1212-51 / IES-612: Alarm status |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>This variable indicates the alarm status of the module.</p><p>It is a bit map represented a sum, therefore, it can represent</p><p>multiple defects simultaneously. The moduleNoDefect should be set</p><p>if and only if no other flag is set.</p><p>The various bit positions are:</p><p>1 moduleNoDefect</p><p>2 moduleOverHeat</p><p>3 moduleFanRpmLow</p><p>4 moduleVoltageLow</p><p>5 moduleThermalSensorFailure</p><p>6 modulePullOut</p><p>7 powerDC48VAFailure</p><p>8 powerDC48VBFailure</p><p>9 extAlarmInputTrigger</p><p>10 moduleDown</p><p>11 mscSwitchOverOK</p><p>12 networkTopologyChange</p><p>13 macSpoof</p><p>14 cpuHigh</p><p>15 memoryUsageHigh</p><p>16 packetBufferUsageHigh</p><p>17 loopguardOccurence</p> |SNMP |zyxel.aam1212.slot.alarm<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Temperature |ZYXEL AAM1212-51 / IES-612: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.aam1212.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL AAM1212-51 / IES-612: Template does not match hardware |<p>This template is for Zyxel AAM1212-51 / IES-612, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.aam1212.model.last()}<>"AAM1212-51 / IES-612"` |INFO | | +|ZYXEL AAM1212-51 / IES-612: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.aam1212.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.aam1212.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL AAM1212-51 / IES-612: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.aam1212.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.aam1212.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: 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.aam1212.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL AAM1212-51 / IES-612: 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.aam1212.net.adsl.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL AAM1212-51 / IES-612: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.aam1212.net.adsl.atuc.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL AAM1212-51 / IES-612: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.aam1212.net.adsl.atuc.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL AAM1212-51 / IES-612: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.aam1212.net.adsl.atur.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL AAM1212-51 / IES-612: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.aam1212.net.adsl.atur.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL AAM1212-51 / IES-612: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.aam1212.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL AAM1212-51 / IES-612: 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 AAM1212-51 / IES-612: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.aam1212.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX} alarm |<p>The slot reported an error.</p> |`{TEMPLATE_NAME:zyxel.aam1212.slot.alarm.str("moduleNoDefect")}=0` |AVERAGE | | +|ZYXEL AAM1212-51 / IES-612: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.aam1212.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 AAM1212-51 / IES-612 + diff --git a/templates/net/zyxel_snmp/zyxel_aam1212-51_snmp/template_net_zyxel_aam1212-51_snmp.yaml b/templates/net/zyxel_snmp/zyxel_aam1212-51_snmp/template_net_zyxel_aam1212-51_snmp.yaml new file mode 100644 index 00000000000..2d6535bbe8b --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_aam1212-51_snmp/template_net_zyxel_aam1212-51_snmp.yaml @@ -0,0 +1,1157 @@ +zabbix_export: + version: '5.4' + date: '2021-05-26T05:07:56Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 3a71dcdcfe0b4a0e8284d8939d335cce + template: 'ZYXEL AAM1212-51 IES-612 SNMP' + name: 'ZYXEL AAM1212-51 IES-612 SNMP' + description: | + ZYXEL AAM1212-51 / IES-612 + + MIBs used: + RFC1213-MIB + ADSL-LINE-MIB + ZYXEL-IESCOMMON-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 AAM1212-51 / IES-612 + + 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: 5b6932995b634a5792d3948ba79312e5 + name: 'ZYXEL AAM1212-51 / IES-612: 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: 40839f3008b84e3c9ffa8858bd2ab616 + expression: 'max(/ZYXEL AAM1212-51 IES-612 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL AAM1212-51 / IES-612: 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: 9b04315c5e9a41eea5f50623c83f21d0 + name: 'ZYXEL AAM1212-51 / IES-612: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.aam1212.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: 6b29fd2b27fe4788bef1e4072430d5bd + name: 'ZYXEL AAM1212-51 / IES-612: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.13.1.1.3.1.4.0.0 + key: zyxel.aam1212.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-IESCOMMON-MIB' + inventory_link: SOFTWARE_FULL + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 02ba3941993f48ca8d5f40b3b19804e8 + expression: '(last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.fwversion,#1)<>last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.fwversion,#2))=1 and length(last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.fwversion))>0' + name: 'ZYXEL AAM1212-51 / IES-612: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: ea699e392c154a79927a056ff050c59d + name: 'ZYXEL AAM1212-51 / IES-612: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.aam1212.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: d2cabaa6e083489b8b11e6a349ba1bc9 + name: 'ZYXEL AAM1212-51 / IES-612: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.aam1212.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: 31840a6849f7437bbb77334128c9e90b + name: 'ZYXEL AAM1212-51 / IES-612: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.aam1212.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: 5a3f459afc4f42fb90849e98c7639a96 + expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.model)<>"AAM1212-51 / IES-612"' + name: 'ZYXEL AAM1212-51 / IES-612: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel AAM1212-51 / IES-612, but connected to {ITEM.VALUE}' + - + uuid: 59628c9211c444228b6d8d9ddb30af54 + name: 'ZYXEL AAM1212-51 / IES-612: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.aam1212.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: 33df8d594d7f4e4aa148927b117f30df + name: 'ZYXEL AAM1212-51 / IES-612: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.13.1.1.2.1.3.0 + key: zyxel.aam1212.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IESCOMMON-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 7528520bca7c4524b7451aeaca440cc5 + expression: '(last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.serialnumber,#1)<>last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.serialnumber,#2))=1 and length(last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.serialnumber))>0' + name: 'ZYXEL AAM1212-51 / IES-612: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 4efb46536e8a43e78cd26ae90bd2ab83 + name: 'ZYXEL AAM1212-51 / IES-612: Alarm status' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.13.1.1.3.1.8.0.0 + key: zyxel.aam1212.slot.alarm + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IESCOMMON-MIB + This variable indicates the alarm status of the module. + It is a bit map represented a sum, therefore, it can represent + multiple defects simultaneously. The moduleNoDefect should be set + if and only if no other flag is set. + The various bit positions are: + 1 moduleNoDefect + 2 moduleOverHeat + 3 moduleFanRpmLow + 4 moduleVoltageLow + 5 moduleThermalSensorFailure + 6 modulePullOut + 7 powerDC48VAFailure + 8 powerDC48VBFailure + 9 extAlarmInputTrigger + 10 moduleDown + 11 mscSwitchOverOK + 12 networkTopologyChange + 13 macSpoof + 14 cpuHigh + 15 memoryUsageHigh + 16 packetBufferUsageHigh + 17 loopguardOccurence + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var valueArray = [ + 'moduleNoDefect', + 'moduleOverHeat', + 'moduleFanRpmLow', + 'moduleVoltageLow', + 'moduleThermalSensorFailure', + 'modulePullOut', + 'powerDC48VAFailure', + 'powerDC48VBFailure', + 'extAlarmInputTrigger', + 'moduleDown', + 'mscSwitchOverOK', + 'networkTopologyChange', + 'macSpoof', + 'cpuHigh', + 'memoryUsageHigh', + 'packetBufferUsageHigh', + 'loopguardOccurence' + ]; + var base2 = parseInt(value).toString(2); + var outArray = []; + for (var i = 0; i < base2.length; ++i) { + if (base2[base2.length - 1 - i] === '1') outArray.push(valueArray[i]); + } + return outArray.join(); + tags: + - + tag: Application + value: Status + triggers: + - + uuid: eec541b07a434770b2a3301825cc5e82 + expression: 'find(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.slot.alarm,,"like","moduleNoDefect")=0' + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX} alarm' + priority: AVERAGE + description: 'The slot reported an error.' + - + uuid: 6fe78b9b065243b8bcebf8f6c234f868 + name: 'ZYXEL AAM1212-51 / IES-612: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.aam1212.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: 819190f68248439292fc4622c3eec5a9 + expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.uptime)<10m' + name: 'ZYXEL AAM1212-51 / IES-612: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: c0fa2c901419420eaaa2a64e59fbad29 + name: 'ADSL interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.2.2.1.2,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8]' + key: zyxel.aam1212.net.adsl.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.NAME}' + value: adsl + formulaid: C + item_prototypes: + - + uuid: 8b8e4d329490481983d2a1b0209e18a1 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.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 AAM1212-51 / IES-612 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 010b15528a8d498bb8f77db9c548bc8e + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUC attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.5.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.atuc.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 0c78247a1003496abab584a526777a40 + expression: 'min(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.atuc.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL AAM1212-51 / IES-612: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: 382d9f2f9458423eb887b6fd28697c3a + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUC output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.7.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.atuc.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: a273e455881948a895eb60b453ce8f61 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUC noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.4.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.atuc.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 14cbae6c16c245b09ed46e0cc01a556c + expression: 'min(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.atuc.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL AAM1212-51 / IES-612: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: 3bfa258832dd49cca9ced6d5d78252d1 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUR attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.5.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.atur.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: e917c9a8d6bb4af3a40c6c5b41f90c22 + expression: 'min(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.atur.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL AAM1212-51 / IES-612: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: da2105dce83d4f619b69a9c8e5875bac + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUR output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.7.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.atur.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: e59b98a685874f888557eb3d1c41a828 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: ATUR noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.4.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.atur.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 125b08332e2f409985cade88ab3842f1 + expression: 'min(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.atur.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL AAM1212-51 / IES-612: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: 70fa53318d354503b44b70696cb8ccd2 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.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: 53241d402d0f4b4ca826f9712ad1af69 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.name[{#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: 53ff6ee2132a4503890c35919baa2fd8 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.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 AAM1212-51 / IES-612 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 956fc99c2c5341a2b29ba2f302cc0a3a + expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL AAM1212-51 / IES-612: 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: 021b85f4efea4be9834e7959ed2471f5 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.16.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.adsl.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}' + graph_prototypes: + - + uuid: 09d34a6f9dd2499b8759e15301eefdb5 + name: 'ZYXEL AAM1212-51 / IES-612: ADSL port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL AAM1212-51 IES-612 SNMP' + key: 'zyxel.aam1212.net.adsl.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL AAM1212-51 IES-612 SNMP' + key: 'zyxel.aam1212.net.adsl.out.traffic[{#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: 8e327f4a888b417db390148e7a894d10 + name: 'Ethernet interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.2.2.1.2,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8]' + key: zyxel.aam1212.net.if.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.NAME}' + value: enet + formulaid: C + item_prototypes: + - + uuid: d68dd1f83f5f41f4b372cc0a2261f30e + name: 'ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.aam1212.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 AAM1212-51 / IES-612 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#ZYXEL.IF.NAME}' + - + uuid: f5dd08da51664f1d82a16b0826cdb9ce + name: 'ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}' + key: 'zyxel.aam1212.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 {#ZYXEL.IF.NAME}' + - + uuid: e2a630669e924f069b98d11a32737411 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.aam1212.net.if.name[{#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 {#ZYXEL.IF.NAME}' + - + uuid: 6232538bf48a4f12a1f85164dc95bcf8 + name: 'ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.aam1212.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 AAM1212-51 / IES-612 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#ZYXEL.IF.NAME}' + trigger_prototypes: + - + uuid: 805f49836f794aad9ee00f66dd90ffc1 + expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: 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: d69676fc00e64c97afd7da416891b0ef + name: 'ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.aam1212.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 {#ZYXEL.IF.NAME}' + graph_prototypes: + - + uuid: 4f5b714c04a44fbb9a64399c831b2980 + name: 'ZYXEL AAM1212-51 / IES-612: Ethernet port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL AAM1212-51 IES-612 SNMP' + key: 'zyxel.aam1212.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL AAM1212-51 IES-612 SNMP' + key: 'zyxel.aam1212.net.if.out.traffic[{#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: 4bc61b4441a840a79bbd118a1d3cf66e + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.ID}, .1.3.6.1.4.1.890.1.5.13.1.2.3.1.1,{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.13.1.2.3.1.5]' + key: zyxel.aam1212.temp.discovery + delay: 1h + description: 'An entry in tempTable.' + item_prototypes: + - + uuid: 82045c5b71b04c62b7525db28f292ad2 + name: 'ZYXEL AAM1212-51 / IES-612: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.1.2.3.1.2.{#SNMPINDEX}' + key: 'zyxel.aam1212.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-IESCOMMON-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: 321b2efb6e8e4117949b3644cc101ff2 + expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL AAM1212-51 / IES-612: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 00cd199f1e114fcbafbd3dd19c1b2f47 + name: 'ZYXEL AAM1212-51 / IES-612: "Temperature {#ZYXEL.TEMP.ID}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL AAM1212-51 IES-612 SNMP' + key: 'zyxel.aam1212.temp[{#SNMPINDEX}]' + - + uuid: fbb48a267b7646a98246da0357a1ee95 + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.13.1.2.2.1.6,{#ZYXEL.VOLT.NOMINAL}, .1.3.6.1.4.1.890.1.5.13.1.2.2.1.5]' + key: zyxel.aam1212.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 9e73d63d1af2473599e17ab214f03b32 + name: 'ZYXEL AAM1212-51 / IES-612: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.aam1212.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-IESCOMMON-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: a7aa1ae207bb462bb23d3f2fca2c3533 + expression: 'last(/ZYXEL AAM1212-51 IES-612 SNMP/zyxel.aam1212.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL AAM1212-51 / IES-612: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: afdd9501f85c4c9f9a81b8f16968990b + name: 'ZYXEL AAM1212-51 / IES-612: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL AAM1212-51 IES-612 SNMP' + key: 'zyxel.aam1212.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + item["{#ZYXEL.VOLT.NOMINAL}"] = "+" + item["{#ZYXEL.VOLT.NOMINAL}"] / 1000 + "V"; + item["{#ZYXEL.VOLT.THRESH.LOW}"] /= 1000; + item["{#ZYXEL.VOLT.THRESH.HIGH}"] /= 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$SNMP.TIMEOUT}' + value: 5m + description: 'The time interval for SNMP agent availability trigger expression.' + - + macro: '{$ZYXEL.ADSL.ATN.MAX}' + value: '40' + description: 'Type the maximum signal attenuation' + - + macro: '{$ZYXEL.ADSL.SNR.MIN}' + value: '8' + description: 'Type the minimum signal to noise margin (0-31 dB)' + - + 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.LINKSTATUS.MATCHES}' + value: '.*' + description: 'Filter of discoverable link types.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + value: '2' + description: 'Filter to exclude discovered by link types.' + valuemaps: + - + uuid: 2b7c7c3eecb743e8a30ab3adc74ffd06 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: db7f61bebcac452c8081b2c58d1013d8 + name: 'ZYXEL AAM1212-51 / IES-612 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 6c2a29dac43340399990340fe26a7a72 + name: 'ZYXEL AAM1212-51 / IES-612 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 diff --git a/templates/net/zyxel_snmp/zyxel_es3500-8pd_snmp/README.md b/templates/net/zyxel_snmp/zyxel_es3500-8pd_snmp/README.md new file mode 100644 index 00000000000..04c01543689 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_es3500-8pd_snmp/README.md @@ -0,0 +1,128 @@ + +# ES3500-8PD SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mes3500-series + +This template was tested on: + +- ZYXEL ES3500-8PD, version V4.00(AADF.5) | 11/28/2016 + +## 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` | +|{$MEMORY.UTIL.MAX} |<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| +|----|-----------|----|----| +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.3500_8pd.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.3500_8pd.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.3500_8pd.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.3500_8pd.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.3500_8pd.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> | +|Memory pool discovery |<p>-</p> |SNMP |zyxel.3500_8pd.memory.discovery | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL ES3500-8PD: CPU utilization |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3500_8pd.cpuusage | +|Inventory |ZYXEL ES3500-8PD: 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.3500_8pd.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL ES3500-8PD: 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.3500_8pd.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL ES3500-8PD: 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.3500_8pd.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL ES3500-8PD: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3500_8pd.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL ES3500-8PD: 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.3500_8pd.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL ES3500-8PD: ZyNOS F/W Version |<p>MIB: ZYXEL-ES3500-8PD-MIB</p> |SNMP |zyxel.3500_8pd.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL ES3500-8PD: Hardware serial number |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Serial number</p> |SNMP |zyxel.3500_8pd.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL ES3500-8PD: Memory "{#ZYXEL.MEMORY.NAME}" utilization |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Utilization of memory pool in %.</p> |SNMP |zyxel.3500_8pd.memory[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Transmission mode</p> |SNMP |zyxel.3500_8pd.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_8pd.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Physical connection type</p> |SNMP |zyxel.3500_8pd.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_8pd.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL ES3500-8PD: 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.3500_8pd.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_8pd.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.3500_8pd.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_8pd.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.3500_8pd.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.3500_8pd.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3500_8pd.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_8pd.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_8pd.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3500_8pd.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3500_8pd.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL ES3500-8PD: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3500_8pd.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL ES3500-8PD: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3500_8pd.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL ES3500-8PD: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL ES3500-8PD: 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.3500_8pd.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL ES3500-8PD: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-ES3500-8PD-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3500_8pd.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL ES3500-8PD: 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.3500_8pd.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL ES3500-8PD: Template does not match hardware |<p>This template is for Zyxel ES3500-8PD, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.model.last()}<>"ES3500-8PD"` |INFO | | +|ZYXEL ES3500-8PD: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_8pd.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL ES3500-8PD: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_8pd.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL ES3500-8PD: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.memory[{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | | +|ZYXEL ES3500-8PD: 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.3500_8pd.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3500_8pd.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3500_8pd.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL ES3500-8PD: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL ES3500-8PD: 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.3500_8pd.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL ES3500-8PD: 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.3500_8pd.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL ES3500-8PD: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL ES3500-8PD: 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 ES3500-8PD: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL ES3500-8PD: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3500_8pd.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 ES3500-8PD + diff --git a/templates/net/zyxel_snmp/zyxel_es3500-8pd_snmp/template_net_zyxel_es3500-8pd_snmp.yaml b/templates/net/zyxel_snmp/zyxel_es3500-8pd_snmp/template_net_zyxel_es3500-8pd_snmp.yaml new file mode 100644 index 00000000000..531e739cf0b --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_es3500-8pd_snmp/template_net_zyxel_es3500-8pd_snmp.yaml @@ -0,0 +1,1461 @@ +zabbix_export: + version: '5.4' + date: '2021-05-26T05:09:08Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: b8a6f34fd5c447b1b9310746a96f4e80 + template: 'ZYXEL ES3500-8PD SNMP' + name: 'ZYXEL ES3500-8PD SNMP' + description: | + ZYXEL ES3500-8PD + + MIBs used: + RFC1213-MIB + ZYXEL-ES3500-8PD-MIB + IF-MIB + ZYXEL-ES3500-8PD-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 ES3500-8PD + + 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: 294a49fc36e848cc9f9959624c9a5ab3 + name: 'ZYXEL ES3500-8PD: 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: 3bbbd93c114f4bf5b8f4788ca6825afd + expression: 'max(/ZYXEL ES3500-8PD SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL ES3500-8PD: 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: 6d513a036f8547219b1120fc4fffff1d + name: 'ZYXEL ES3500-8PD: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3500_8pd.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: e7fd0f225802477aabbbcbfe5ac4a7f6 + name: 'ZYXEL ES3500-8PD: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.72.12.7.0 + key: zyxel.3500_8pd.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 3cf67f911a854d2ebeb9e006f3f97738 + expression: 'min(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL ES3500-8PD: 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: 8749f59cbfeb4c43b7753901f3219716 + name: 'ZYXEL ES3500-8PD: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.72.1]' + key: zyxel.3500_8pd.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-ES3500-8PD-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: bd6d0fe201094c00b6c93d7c04c27729 + expression: '(last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.fwversion,#1)<>last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.fwversion,#2))=1 and length(last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.fwversion))>0' + name: 'ZYXEL ES3500-8PD: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: cbccb45e9d1d4b529cce2d43e6c96a24 + name: 'ZYXEL ES3500-8PD: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3500_8pd.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: 1479a543105a4cf2b524bf8d042afd00 + name: 'ZYXEL ES3500-8PD: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3500_8pd.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: c753caf7686e49968931df18076a5d4f + name: 'ZYXEL ES3500-8PD: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3500_8pd.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: e03ca45643354a18a9d6ffbb38a07654 + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.model)<>"ES3500-8PD"' + name: 'ZYXEL ES3500-8PD: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel ES3500-8PD, but connected to {ITEM.VALUE}' + - + uuid: 2072ac4b4437425a9ef1496b90c64990 + name: 'ZYXEL ES3500-8PD: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3500_8pd.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: 93a3b8ef959e41fe822abb959f090939 + name: 'ZYXEL ES3500-8PD: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.72.1.10.0 + key: zyxel.3500_8pd.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 83548aba74c148e28e6611d5abfb9694 + expression: '(last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.serialnumber,#1)<>last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.serialnumber,#2))=1 and length(last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.serialnumber))>0' + name: 'ZYXEL ES3500-8PD: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: bbd24719955740e0acc2316a945dac38 + name: 'ZYXEL ES3500-8PD: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3500_8pd.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: eb7a268bfa324366953221e3c1788127 + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.uptime)<10m' + name: 'ZYXEL ES3500-8PD: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: dfc515bfe86642e784735637bdb6c0a7 + name: 'Memory pool discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.MEMORY.NAME},.1.3.6.1.4.1.890.1.5.8.72.124.1.1.2]' + key: zyxel.3500_8pd.memory.discovery + delay: 1h + item_prototypes: + - + uuid: ae5a9303d10a49fba04064bb77b40b61 + name: 'ZYXEL ES3500-8PD: Memory "{#ZYXEL.MEMORY.NAME}" utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.124.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.memory[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Utilization of memory pool in %. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Memory + trigger_prototypes: + - + uuid: c59c3730eea44cf7a842fe46aa12fa3d + expression: 'min(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.memory[{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}' + name: 'ZYXEL ES3500-8PD: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + - + uuid: c71d57f8ed0b470faae1bfd7033fbcf0 + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.72.24.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.72.24.1.1.5]' + key: zyxel.3500_8pd.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: 91a0a38a0f60464cb97c65f375e8fbb7 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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 ES3500-8PD port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 1daef38185b14a96b8f0fce757c48677 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: 4de0488610054ed9bd869dc48a07174e + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: 55cf0d86b8bc4a6fa6806c9f8bce7ee9 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: 0ce5c7ae49284615a41aba4cdd0f565b + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: 34a86d17de7e4725aa6e5893c1e52526 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: b1c630d6f06748b88d695dfdb734cd19 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: f24ad30d48ca427eb3b19d4459cab733 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3500_8pd.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_8pd.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_8pd.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: 8c141ab269eb4a8891937a1847312890 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.24.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Physical connection type + valuemap: + name: 'ZYXEL ES3500-8PD operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 018c1028b7904fbea8b1bb0d2fac1621 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.24.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 4f75b84c02b4496db2cbedca8df00c04 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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 ES3500-8PD port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 27ba4832c79d447186ae6de254aad9d7 + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL ES3500-8PD: 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: bb4c00143a4f4cc2b445daeffdcf6b57 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: 103385b00f6442beab10712ca42d5719 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: 08cd8a42816040d582d3192a9d8c2fb7 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: df030eba0fd548d5be224e2fe120373c + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.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: cabb6da9aa3e4ae0ae6938b3f3d47138 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3500_8pd.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_8pd.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_8pd.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_8pd.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: 5200e032f5f6438e8326799208072845 + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.24.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Transmission mode + valuemap: + name: 'ZYXEL ES3500-8PD operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: a4b7fd4158464655a71732de5ebc9a9d + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 4e20dd0297a94188a6e4032df91432dc + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: c57f41ad6c084a358668e4d7a57b902e + name: 'ZYXEL ES3500-8PD: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.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: 21d6664eb56c41b388b4f4709a81d33d + 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.72.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.72.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.72.117.2.1.8]' + key: zyxel.3500_8pd.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: 3a93aa9a9e2e44318f08c3eff86ce7bb + name: 'ZYXEL ES3500-8PD: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-ES3500-8PD-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: 8ce109a9f09b41458a4e9d8698238ad0 + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL ES3500-8PD: 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: 6ecef48a1fdd4e16afe9472f59e0ad1a + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL ES3500-8PD: 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: c114cc7fee5c4c8fa3301db0eb3b60f7 + name: 'ZYXEL ES3500-8PD: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.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: a003b7fdc07b4ac6a063379b892943fa + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.72.117.1.1.2]' + key: zyxel.3500_8pd.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: 12345032490f4d24aeb7bfb07eae59fb + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 2b30a4497cbd497886c52ae79ad03a01 + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 25aa375ed4a345e6b975bcb238cf530d + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-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: 3f24d3aa58624ed0ad7a137fc9b1611a + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 46739144d51b441886d544829749cf21 + expression: '(last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL ES3500-8PD: 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: 054942c20bca4459b26e41aca8657e4c + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL ES3500-8PD SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 7621973ef61b47c9bc034eec3d008957 + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 715feecd140b4e9ca350b41490f7c7f9 + name: 'ZYXEL ES3500-8PD: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES3500-8PD-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 9c8f5212222a42bcbd42f8d848476804 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.72.9.2.1.5]' + key: zyxel.3500_8pd.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: f884edb984ab42ce8abffed0f66a2347 + name: 'ZYXEL ES3500-8PD: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.9.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-ES3500-8PD-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: 51fad2cd7daf49ad9027f44fd9ea81af + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL ES3500-8PD: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: a1931b48befb4c76a4d5a7ff6c15cbaf + name: 'ZYXEL ES3500-8PD: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.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: 5cd3ac86665c459cbbee3178fca6560f + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.72.9.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.72.9.3.1.5]' + key: zyxel.3500_8pd.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 01838a79d7304d838798bd2d6b427936 + name: 'ZYXEL ES3500-8PD: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.72.9.3.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_8pd.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-ES3500-8PD-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: 2cce1a60cfea4bb89e1b9582f6045d3c + expression: 'last(/ZYXEL ES3500-8PD SNMP/zyxel.3500_8pd.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL ES3500-8PD: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 94ee588ae558416da5bcf4c199797d93 + name: 'ZYXEL ES3500-8PD: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: 'zyxel.3500_8pd.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: '{$MEMORY.UTIL.MAX}' + 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: 494c8983c4cf453789d2f0bbbe5cbbf3 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 7cfe02e1eb224f6abe5216aaec31402c + name: 'ZYXEL ES3500-8PD operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: b568c9f69a1a4dd5951f1121523475c9 + name: 'ZYXEL ES3500-8PD 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: 4a20dd55c16b4c9082f267c532a4507a + name: 'ZYXEL ES3500-8PD port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 17635045a1ee4b8bba21b7d44634c57f + name: 'ZYXEL ES3500-8PD 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: 875833a6ca71431da2b3747c4c1e3008 + name: 'ZYXEL ES3500-8PD SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: 2d266c1cab6e462b89975538acc18266 + name: 'ZYXEL ES3500-8PD: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL ES3500-8PD SNMP' + key: zyxel.3500_8pd.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_gs4012f_snmp/README.md b/templates/net/zyxel_snmp/zyxel_gs4012f_snmp/README.md new file mode 100644 index 00000000000..6cc9184fd1d --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_gs4012f_snmp/README.md @@ -0,0 +1,109 @@ + +# GS-4012F 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 GS-4012F, 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` | + +## 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.4012f.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.4012f.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.4012f.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.4012f.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> | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL GS-4012F: CPU utilization |<p>MIB: ZYXEL-GS4012F-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.4012f.cpuusage | +|Fans |ZYXEL GS-4012F: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-GS4012F-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.4012f.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL GS-4012F: 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.4012f.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL GS-4012F: 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.4012f.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL GS-4012F: 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.4012f.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL GS-4012F: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.4012f.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL GS-4012F: 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.4012f.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL GS-4012F: ZyNOS F/W Version |<p>MIB: ZYXEL-GS4012F-MIB</p> |SNMP |zyxel.4012f.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL GS-4012F: Hardware serial number |<p>MIB: ZYXEL-GS4012F-MIB</p><p>Serial number</p> |SNMP |zyxel.4012f.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-GS4012F-MIB</p><p>Transmission mode</p> |SNMP |zyxel.4012f.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-GS4012F-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.4012f.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-GS4012F-MIB</p><p>Physical connection type</p> |SNMP |zyxel.4012f.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.4012f.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL GS-4012F: 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.4012f.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL GS-4012F: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.4012f.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.4012f.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL GS-4012F: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.4012f.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.4012f.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Power_supply |ZYXEL GS-4012F: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-GS4012F-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.4012f.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL GS-4012F: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL GS-4012F: 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.4012f.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL GS-4012F: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-GS4012F-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.4012f.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL GS-4012F: 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.4012f.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL GS-4012F: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.4012f.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL GS-4012F: Template does not match hardware |<p>This template is for Zyxel GS-4012F, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.4012f.model.last()}<>"GS-4012F"` |INFO | | +|ZYXEL GS-4012F: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.4012f.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.4012f.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL GS-4012F: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.4012f.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.4012f.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL GS-4012F: 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.4012f.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.4012f.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.4012f.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL GS-4012F: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.4012f.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL GS-4012F: 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 GS-4012F: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.4012f.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL GS-4012F: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.4012f.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 GS-4012F + diff --git a/templates/net/zyxel_snmp/zyxel_gs4012f_snmp/template_net_zyxel_gs4012f_snmp.yaml b/templates/net/zyxel_snmp/zyxel_gs4012f_snmp/template_net_zyxel_gs4012f_snmp.yaml new file mode 100644 index 00000000000..67e8dd56575 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_gs4012f_snmp/template_net_zyxel_gs4012f_snmp.yaml @@ -0,0 +1,1161 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:19:49Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 73f123bb9ffe4587a0269c7e8752b2ed + template: 'ZYXEL GS-4012F SNMP' + name: 'ZYXEL GS-4012F SNMP' + description: | + ZYXEL GS-4012F + + MIBs used: + ZYXEL-GS4012F-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 GS-4012F + + 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: 2839fec9602a4162bb0acfb1be89fd57 + name: 'ZYXEL GS-4012F: 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: 07b74d3face24c838c7efe8dfb87564e + expression: 'max(/ZYXEL GS-4012F SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL GS-4012F: 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: 831444715edf4a12baf6a5727ba9276c + name: 'ZYXEL GS-4012F: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.4012f.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: e2a6ce044f6d40bebb50927cc70bd593 + name: 'ZYXEL GS-4012F: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.20.12.7.0 + key: zyxel.4012f.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-GS4012F-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 2052d9e6becd48e5a3aed8037eaf9e87 + expression: 'min(/ZYXEL GS-4012F SNMP/zyxel.4012f.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL GS-4012F: 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: adb85140eb8c4b6489078dc79bd61a87 + name: 'ZYXEL GS-4012F: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.20.1]' + key: zyxel.4012f.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-GS4012F-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: ecde6db248674039a30874f29e704e65 + expression: '(last(/ZYXEL GS-4012F SNMP/zyxel.4012f.fwversion,#1)<>last(/ZYXEL GS-4012F SNMP/zyxel.4012f.fwversion,#2))=1 and length(last(/ZYXEL GS-4012F SNMP/zyxel.4012f.fwversion))>0' + name: 'ZYXEL GS-4012F: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: f55214647bab4544adb7d9a63e8be69d + name: 'ZYXEL GS-4012F: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.4012f.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: 770d70d2ebcb4978b6c6fae0692ab77f + name: 'ZYXEL GS-4012F: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.4012f.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: 25c5e9b3d34f4bb8805e2a6c43934f51 + name: 'ZYXEL GS-4012F: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.4012f.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: 1ba1faabe15c4d46adaa4dc74c5dc05c + expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.model)<>"GS-4012F"' + name: 'ZYXEL GS-4012F: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel GS-4012F, but connected to {ITEM.VALUE}' + - + uuid: 38fb81dca1db49bc83343ba197bfe980 + name: 'ZYXEL GS-4012F: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.4012f.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: 0080e896f1384245887a191d87496fa9 + name: 'ZYXEL GS-4012F: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.20.1.10.0 + key: zyxel.4012f.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-GS4012F-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: ae941404115d4b10809bce603528ceaa + expression: '(last(/ZYXEL GS-4012F SNMP/zyxel.4012f.serialnumber,#1)<>last(/ZYXEL GS-4012F SNMP/zyxel.4012f.serialnumber,#2))=1 and length(last(/ZYXEL GS-4012F SNMP/zyxel.4012f.serialnumber))>0' + name: 'ZYXEL GS-4012F: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 1c14e77679fe4ee6b167036d8888867e + name: 'ZYXEL GS-4012F: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.4012f.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: 93c70a5dd2504d0d9b13a17af942d45e + expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.uptime)<10m' + name: 'ZYXEL GS-4012F: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 344cd89247db49ba854ab6edb504086d + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.20.9.1.1.5]' + key: zyxel.4012f.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 0f7fb278c896436c96fb1b5006ee4e06 + name: 'ZYXEL GS-4012F: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.20.9.1.1.2.{#SNMPINDEX}' + key: 'zyxel.4012f.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-GS4012F-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: c91993daf9e44102a04b1ff2b72bf773 + expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL GS-4012F: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 9c17e54a98324a9bb35c3a4234efe55f + name: 'ZYXEL GS-4012F: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.fan[{#SNMPINDEX}]' + - + uuid: 2f731cdb2e2943fbae17b6858859eb7a + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.20.23.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.20.23.1.1.5]' + key: zyxel.4012f.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: 2b87dc4104704d3891ac061aaa81c629 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.4012f.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 GS-4012F port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 32abe2903d1c4652a74a44c5154f1451 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 42040f2ca85e4f80bdc4bdc9d0ef5966 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.4012f.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: a71a364726524a6e9d00eb4098fa5faa + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 8dda9a8e70bc44c5acca08284eb94bac + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 7240d04927a742dd93844c1fcc68dba0 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 4b7a80cf38d44dd9b270dcbc5c44ecfc + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 8c0eca407f47404a86d26c5fb1885f87 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.4012f.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.4012f.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.4012f.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: a63165d407e740c38cab55aefeccbca8 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.20.23.1.1.5.{#SNMPINDEX}' + key: 'zyxel.4012f.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-GS4012F-MIB + Physical connection type + valuemap: + name: 'ZYXEL GS-4012F operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5c439eae60184abd8ec9b209cda19f8b + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.20.23.1.1.3.{#SNMPINDEX}' + key: 'zyxel.4012f.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-GS4012F-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 033b0e5b141b437c805b845f2e3f54a0 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.4012f.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 GS-4012F port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 9c332411a6db46acaab2b49ccabd2970 + expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL GS-4012F SNMP/zyxel.4012f.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL GS-4012F SNMP/zyxel.4012f.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL GS-4012F: 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: 0f3decaec17a4812aac826056cce9e8a + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 5ac33c29b537409cb6347548290e5ecc + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 69ab1d86cd0347b49e2500a1d8e7e6a8 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 870c54f85d57473c8b48ed896d5e2b2b + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.4012f.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: 98fffdb492a149b7b684e3867b113d37 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.4012f.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.4012f.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.4012f.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.4012f.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: 64037c50f0344d02ae06690e91c7ead8 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.20.23.1.1.1.{#SNMPINDEX}' + key: 'zyxel.4012f.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-GS4012F-MIB + Transmission mode + valuemap: + name: 'ZYXEL GS-4012F operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: 1cad0c1a40a8472da2edee9cd889e6cf + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: ca2e18634f87486987251a2894eabaa0 + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: 3223519ee24947c5a82b584fc3f2dd3d + name: 'ZYXEL GS-4012F: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.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: de7fbcbcaa8a460d8048e7816ccc1a87 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.20.9.2.1.5]' + key: zyxel.4012f.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: ee82e6f1916a4ce7b5cd77f0249cc2af + name: 'ZYXEL GS-4012F: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.20.9.2.1.2.{#SNMPINDEX}' + key: 'zyxel.4012f.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-GS4012F-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: 719aad00708e4fd3b99997834c5d68b2 + expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL GS-4012F: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: f2dbed78c1d2440480cff0d1b243a546 + name: 'ZYXEL GS-4012F: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.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: 88047112669f4d7eae81c8bb514ddecb + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.20.9.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.20.9.3.1.5]' + key: zyxel.4012f.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: b5cb92c8d63a41158e7072b8ebf33ca1 + name: 'ZYXEL GS-4012F: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.20.9.3.1.2.{#SNMPINDEX}' + key: 'zyxel.4012f.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-GS4012F-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: 7d28666404bd4cedb687214846f89d4a + expression: 'last(/ZYXEL GS-4012F SNMP/zyxel.4012f.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL GS-4012F: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 021bf935acc542d89a0a26120e995671 + name: 'ZYXEL GS-4012F: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: 'zyxel.4012f.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.' + valuemaps: + - + uuid: c6ba6086ed584ba0a4dd58ffe8564fbf + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 82cce670bef64a47b326bb8b1a2f6cd8 + name: 'ZYXEL GS-4012F operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: d7d38cadffc240f9a01434546659d036 + name: 'ZYXEL GS-4012F 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: 7456d212b8f44f7da215fc86f39e3956 + name: 'ZYXEL GS-4012F port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: afa699db0bfc4cfbb48729932967230e + name: 'ZYXEL GS-4012F 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 + graphs: + - + uuid: 966ba518f4e045ed98d2edf65df45078 + name: 'ZYXEL GS-4012F: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL GS-4012F SNMP' + key: zyxel.4012f.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_ies-500x_snmp/README.md b/templates/net/zyxel_snmp/zyxel_ies-500x_snmp/README.md new file mode 100644 index 00000000000..9b8f09ba729 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_ies-500x_snmp/README.md @@ -0,0 +1,157 @@ + +# IES-500x SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/global/en/products/msansdslams/central-msans/chassis-msans/ies-5000-series + +This template was tested on: + +- ZYXEL IES-500x + +## 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| +|----|-----------|-------| +|{$SNMP.TIMEOUT} |<p>The time interval for SNMP agent availability trigger expression.</p> |`5m` | +|{$ZYXEL.ADSL.ATN.MAX} |<p>Type the maximum signal attenuation</p> |`40` | +|{$ZYXEL.ADSL.SNR.MIN} |<p>Type the minimum signal to noise margin (0-31 dB)</p> |`8` | +|{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES} |<p>Filter to exclude discovered slots by status.</p> |`1` | +|{$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.DESC.MATCHES} |<p>Filter by discoverable interface names.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES} |<p>Filter to exclude discovered interfaces by name.</p> |`CHANGE_IF_NEEDED` | +|{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES} |<p>Filter of discoverable link types.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES} |<p>Filter to exclude discovered by link types.</p> |`2` | +|{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES} |<p>Filter by discoverable slot status.</p> |`.*` | + +## Template links + +There are no template links in this template. + +## Discovery rules + +|Name|Description|Type|Key and additional info| +|----|-----------|----|----| +|Slot discovery |<p>The table which contains the slot information in a chassis.</p> |SNMP |zyxel.ies500x.slot.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.SLOTSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES}`</p><p>- B: {#ZYXEL.SLOTSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES}`</p> | +|Fan discovery |<p>An entry in fanRpmTable.</p> |SNMP |zyxel.ies500x.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p> |SNMP |zyxel.ies500x.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.ies500x.volt.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|CPU discovery |<p>A table that contains CPU utilization information.</p><p>This table is supported by R1.03 and later versions.</p> |SNMP |zyxel.ies500x.cpu.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Memory discovery |<p>A table that contains memory usage information.</p> |SNMP |zyxel.ies500x.memory.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Packet buffer discovery |<p>A table that contains packet buffer usage information.</p> |SNMP |zyxel.ies500x.buffer.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Ethernet interface discovery |<p>-</p> |SNMP |zyxel.ies500x.net.if.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.DESC} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}`</p><p>- B: {#ZYXEL.IF.DESC} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- D: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- E: {#ZYXEL.IF.NAME} MATCHES_REGEX `enet`</p> | +|ADSL interface discovery |<p>-</p> |SNMP |zyxel.ies500x.net.adsl.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.DESC} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}`</p><p>- B: {#ZYXEL.IF.DESC} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- D: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- E: {#ZYXEL.IF.NAME} MATCHES_REGEX `adsl`</p> | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: CPU utilization |<p>MIB: ZYXEL-IES5000-MIB</p><p>The CPU utilization in the past 60 seconds.</p> |SNMP |zyxel.ies500x.cpu[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Fans |ZYXEL IES-500x: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-IES5000-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.ies500x.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL IES-500x: 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.ies500x.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-500x: 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.ies500x.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-500x: 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.ies500x.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-500x: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.ies500x.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-500x: 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.ies500x.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Memory utilization |<p>MIB: ZYXEL-IES5000-MIB</p><p>The memory usage in the past 60 seconds.</p> |SNMP |zyxel.ies500x.memory[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Memory |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Packet buffer utilization |<p>MIB: ZYXEL-IES5000-MIB</p><p>The packet buffer usage in the past 60 seconds.</p> |SNMP |zyxel.ies500x.buffer[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Type |<p>MIB: ZYXEL-IES5000-MIB</p><p>Card type of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Description |<p>MIB: ZYXEL-IES5000-MIB</p><p>The descriptions of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.desc[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Firmware version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The firmware version of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Driver version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The DSL driver of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: DSL modem code version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The DSL modem code version of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Status |<p>MIB: ZYXEL-IES5000-MIB</p><p>The module state of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Alarm status |<p>MIB: ZYXEL-IES5000-MIB</p><p>This variable indicates the alarm status of the module.</p><p>It is a bit map represented a sum, therefore, it can represent</p><p>multiple defects simultaneously. The moduleNoDefect should be set</p><p>if and only if no other flag is set.</p><p>The various bit positions are:</p><p>1 moduleNoDefect</p><p>2 moduleOverHeat</p><p>3 moduleFanRpmLow</p><p>4 moduleVoltageLow</p><p>5 moduleThermalSensorFailure</p><p>6 modulePullOut</p><p>7 powerDC48VAFailure</p><p>8 powerDC48VBFailure</p><p>9 extAlarmInputTrigger</p><p>10 moduleDown</p><p>11 mscSwitchOverOK</p><p>12 networkTopologyChange</p><p>13 macSpoof</p><p>14 cpuHigh</p><p>15 memoryUsageHigh</p><p>16 packetBufferUsageHigh</p><p>17 loopguardOccurence</p> |SNMP |zyxel.ies500x.slot.alarm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Hardware version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The hardware version of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Serial number |<p>MIB: ZYXEL-IES5000-MIB</p><p>The serial number of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.serial[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Uptime |<p>MIB: ZYXEL-IES5000-MIB</p><p>The time (in seconds) since the plug-in card was last re-initialized.</p> |SNMP |zyxel.ies500x.slot.uptime[{#SNMPINDEX}] | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: MAC address 1 |<p>MIB: ZYXEL-IES5000-MIB</p><p>The MAC Address of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.mac1[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: MAC address 2 |<p>MIB: ZYXEL-IES5000-MIB</p><p>The MAC Address of the plug-in card.</p> |SNMP |zyxel.ies500x.slot.mac2[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Port {#SNMPINDEX}: Interface description |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies500x.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies500x.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: 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.ies500x.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.ies500x.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.ies500x.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL IES-500x: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.ies500x.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.ies500x.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface description |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies500x.net.adsl.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies500x.net.adsl.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-500x, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies500x.net.adsl.atuc.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-500x, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies500x.net.adsl.atuc.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-500x, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies500x.net.adsl.atuc.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies500x.net.adsl.atur.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies500x.net.adsl.atur.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies500x.net.adsl.atur.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Power_supply |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-IES5000-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.ies500x.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL IES-500x: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL IES-500x: 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.ies500x.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-IES5000-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.ies500x.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} high CPU utilization (over {#ZYXEL.CPU.THRESH.HIGH}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`{TEMPLATE_NAME:zyxel.ies500x.cpu[{#SNMPINDEX}].min(5m)}>{#ZYXEL.CPU.THRESH.HIGH}` |WARNING | | +|ZYXEL IES-500x: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.ies500x.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW} or {TEMPLATE_NAME:zyxel.ies500x.fan[{#SNMPINDEX}].last()}>{#ZYXEL.FANRPM.THRESH.HIGH}` |AVERAGE | | +|ZYXEL IES-500x: Template does not match hardware |<p>This template is for Zyxel IES-500x, but connected to {ITEM.VALUE}</p> |`not({TEMPLATE_NAME:zyxel.ies500x.model.last()}="IES-5000" or {TEMPLATE_NAME:zyxel.ies500x.model.last()}="IES-5005")` |INFO | | +|ZYXEL IES-500x: High memory utilization in Slot {#ZYXEL.SLOT.ID} pool (>{#ZYXEL.MEMORYHIGHTHRESH}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.ies500x.memory[{#SNMPINDEX}].min(5m)}>{#ZYXEL.MEMORYHIGHTHRESH}` |AVERAGE | | +|ZYXEL IES-500x: High Packet buffer utilization in Slot {#ZYXEL.SLOT.ID} (>{#ZYXEL.BUFFERHIGHTHRESH}% for 5m) |<p>The system is running out of free buffer.</p> |`{TEMPLATE_NAME:zyxel.ies500x.buffer[{#SNMPINDEX}].min(5m)}>{#ZYXEL.BUFFERHIGHTHRESH}` |AVERAGE | | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Driver has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: DSL modem code has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} alarm |<p>The slot reported an error.</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.alarm[{#SNMPINDEX}].str("moduleNoDefect")}=0` |AVERAGE | | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Hardware version has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} has been replaced (new serial number received) |<p>Slot {#ZYXEL.SLOT.ID} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.serial[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies500x.slot.serial[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.ies500x.slot.uptime[{#SNMPINDEX}].last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: 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.ies500x.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.ies500x.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.ies500x.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies500x.net.adsl.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.ies500x.net.adsl.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.ies500x.net.adsl.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.ies500x.net.adsl.atuc.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL IES-500x: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.ies500x.net.adsl.atuc.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL IES-500x: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.ies500x.net.adsl.atur.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL IES-500x: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.ies500x.net.adsl.atur.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL IES-500x: Voltage Slot {#ZYXEL.SLOT.ID} {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.ies500x.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW} or {TEMPLATE_NAME:zyxel.ies500x.volt[{#SNMPINDEX}].last()}>{#ZYXEL.VOLT.THRESH.HIGH}` |AVERAGE | | +|ZYXEL IES-500x: 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 IES-500x: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.ies500x.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-500x: Temperature Slot {#ZYXEL.SLOT.ID} Sensor: {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.ies500x.temp[{#SNMPINDEX}].last()}>{#ZYXEL.TEMP.THRESH.HIGH} or {TEMPLATE_NAME:zyxel.ies500x.temp[{#SNMPINDEX}].last()}<{#ZYXEL.TEMP.THRESH.LOW}` |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 IES-500x + diff --git a/templates/net/zyxel_snmp/zyxel_ies-500x_snmp/template_net_zyxel_ies-500x_snmp.yaml b/templates/net/zyxel_snmp/zyxel_ies-500x_snmp/template_net_zyxel_ies-500x_snmp.yaml new file mode 100644 index 00000000000..211b1e42b43 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_ies-500x_snmp/template_net_zyxel_ies-500x_snmp.yaml @@ -0,0 +1,2258 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:19:59Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 3db86b0d235e4c7b80f7d6144ca08925 + template: 'ZYXEL IES-500x SNMP' + name: 'ZYXEL IES-500x SNMP' + description: | + ZYXEL IES-500x + + MIBs used: + RFC1213-MIB + ADSL-LINE-MIB + ZYXEL-IES5000-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 IES-500x + + 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: dbaf039727f542a6935223c944fab95d + name: 'ZYXEL IES-500x: 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: 73967d1d3d01458c8e947a1aacb838b0 + expression: 'max(/ZYXEL IES-500x SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL IES-500x: 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: 5bc150cfc9b147e68b5d15a750546a3f + name: 'ZYXEL IES-500x: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.ies500x.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: cd669772d4454a359f1c372dce4a01de + name: 'ZYXEL IES-500x: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.ies500x.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: 591148b198854413aed834874bf8f137 + name: 'ZYXEL IES-500x: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.ies500x.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: aa26dcc1d8c54feaaa70d42c6ff4d1c7 + name: 'ZYXEL IES-500x: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.ies500x.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: d4b378535f5c4299af1295029e94f9d1 + expression: 'not(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.model)="IES-5000" or last(/ZYXEL IES-500x SNMP/zyxel.ies500x.model)="IES-5005")' + name: 'ZYXEL IES-500x: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel IES-500x, but connected to {ITEM.VALUE}' + - + uuid: ee9da829778e4da69fde78f72b5b0783 + name: 'ZYXEL IES-500x: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.ies500x.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: 28df2d29a94d429d811dd40ceb510fcf + name: 'ZYXEL IES-500x: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.ies500x.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: d618295a763f42cd9063fad5cd600c34 + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.uptime)<10m' + name: 'ZYXEL IES-500x: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 2ddba614e41f4014abef703418439e2a + name: 'Packet buffer discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.BUFFERHIGHTHRESH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.5.1.4]' + key: zyxel.ies500x.buffer.discovery + delay: 1h + description: 'A table that contains packet buffer usage information.' + item_prototypes: + - + uuid: ac3d27ace5b54f80ad1dd9182d01c0fa + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Packet buffer utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.5.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.buffer[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-IES5000-MIB + The packet buffer usage in the past 60 seconds. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: b02248180f314948bdbb68e8b940cb99 + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.buffer[{#SNMPINDEX}],5m)>{#ZYXEL.BUFFERHIGHTHRESH}' + name: 'ZYXEL IES-500x: High Packet buffer utilization in Slot {#ZYXEL.SLOT.ID} (>{#ZYXEL.BUFFERHIGHTHRESH}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free buffer.' + graph_prototypes: + - + uuid: 83573a387ef24596bf7e4171506a9ea5 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Packet buffer utilization' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.buffer[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: 72237ffed25148bea512b9a977e0bbde + name: 'CPU discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.CPU.THRESH.HIGH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.4.1.4]' + key: zyxel.ies500x.cpu.discovery + delay: 1h + description: | + A table that contains CPU utilization information. + This table is supported by R1.03 and later versions. + item_prototypes: + - + uuid: 570e8cb266cd4b38819f2091d3981f24 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: CPU utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.4.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.cpu[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-IES5000-MIB + The CPU utilization in the past 60 seconds. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: e2e689642a884509a5254e946deaf69f + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.cpu[{#SNMPINDEX}],5m)>{#ZYXEL.CPU.THRESH.HIGH}' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} high CPU utilization (over {#ZYXEL.CPU.THRESH.HIGH}% for 5m)' + opdata: 'Current utilization: {ITEM.LASTVALUE1}' + priority: WARNING + description: 'CPU utilization is too high. The system might be slow to respond.' + graph_prototypes: + - + uuid: c9a9a54478ba46bbb91b4945c977a823 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: CPU utilization' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.cpu[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: 6b75915015194d40b043d69754b0e8e9 + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.HIGH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.7,{#ZYXEL.FANRPM.THRESH.LOW}, .1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.5]' + key: zyxel.ies500x.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 5edaea71cd9e4190912a9d4a916436b3 + name: 'ZYXEL IES-500x: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-IES5000-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: 9e249839db314f05a7a3cd16172ae9a7 + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW} or last(/ZYXEL IES-500x SNMP/zyxel.ies500x.fan[{#SNMPINDEX}])>{#ZYXEL.FANRPM.THRESH.HIGH}' + name: 'ZYXEL IES-500x: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 79f318a961b5418e888de36f8ffe17e7 + name: 'ZYXEL IES-500x: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.fan[{#SNMPINDEX}]' + - + uuid: 3b33b6eb85b14bfba025b0cd4909fa3e + name: 'Memory discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.MEMORYHIGHTHRESH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.6.1.4]' + key: zyxel.ies500x.memory.discovery + delay: 1h + description: 'A table that contains memory usage information.' + item_prototypes: + - + uuid: 61d07cbd85734ea6933182cbcb77b6a8 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Memory utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.6.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.memory[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-IES5000-MIB + The memory usage in the past 60 seconds. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: c3099861742f4303af838a0bf3921fac + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.memory[{#SNMPINDEX}],5m)>{#ZYXEL.MEMORYHIGHTHRESH}' + name: 'ZYXEL IES-500x: High memory utilization in Slot {#ZYXEL.SLOT.ID} pool (>{#ZYXEL.MEMORYHIGHTHRESH}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + graph_prototypes: + - + uuid: 0b72c4f49d434e0c9a7de3a6617511ea + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Memory utilization' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.memory[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: f3cb59dc48924203bc34da090f084665 + name: 'ADSL interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.31.1.1.1.1,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8,{#ZYXEL.IF.DESC},.1.3.6.1.2.1.31.1.1.1.18]' + key: zyxel.ies500x.net.adsl.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: C + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - + macro: '{#ZYXEL.IF.NAME}' + value: adsl + formulaid: E + item_prototypes: + - + uuid: be9de0c5e397414bbef8edd74d0f6500 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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 IES-500x port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 3a97021a210442c3bdc461060fbe700b + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.5.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.atuc.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-500x, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 375982ea68ec4800aa27a50a89fd79d5 + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.atuc.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL IES-500x: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: 62f3eb71d01946a68d799aa6ed1d29a3 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.atuc.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-500x, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 540251c3a4024e4289194130853be305 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.4.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.atuc.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-500x, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 8d2f57548d4e47f2981a4fd79d065246 + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.atuc.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL IES-500x: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: a664c452a98d4478b4663aa7cca9c19c + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.5.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.atur.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 1dec7ed135a348b1a1cebb3b4319d77f + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.atur.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL IES-500x: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: 91a4b40293d54fe8bc8894303055cba3 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.atur.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 691ffcf882c54ebe8d0dfa305d8497e0 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.4.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.atur.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 7f8f4a2bff14464fbe2f956be87ad56d + expression: 'min(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.atur.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL IES-500x: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: c00cf2ee74c0476f9118594d04e6640d + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.18.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 3df0ee0298c2445f81e1aca8ee748a50 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 05799441c906425d8f584ead3e9b909b + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: fff4c400f6774b9ba5e47fbeb214e5ec + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 4ffe4823f03b4c738b305f03ae4f1d55 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 514910a945e34befa0ecc22ea0b89783 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.name[{#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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 216ad17a0c3348d7a250697f768a6481 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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 IES-500x port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 8afcc973a7e94a0782a057205cc1b8ed + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.adsl.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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: 7eec054602cb4f988999d80b29f25a32 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 420fa08f36bf487cb0af6dc64f335e7b + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 70a1342e17634500ac9c896c66177de6 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 5c2f168d421e4b81a3d62e415ec8218a + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + graph_prototypes: + - + uuid: a98704946d534a06909de85a05d75224 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 184fddf8b22047e6a7ff4c5837642e60 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.adsl.out.traffic[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = Math.floor(item['{#SNMPINDEX}'] / 100); + item['{#ZYXEL.PORTID}'] = item['{#SNMPINDEX}'] % 100; + outArr.push(item) + }); + return JSON.stringify(outArr); + 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: 5121e130194244869e45f9f7bda7cd01 + name: 'Ethernet interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.31.1.1.1.1,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8,{#ZYXEL.IF.DESC},.1.3.6.1.2.1.31.1.1.1.18]' + key: zyxel.ies500x.net.if.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: C + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - + macro: '{#ZYXEL.IF.NAME}' + value: enet + formulaid: E + item_prototypes: + - + uuid: bc53c15035a94ed4a7537f0ab119d738 + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.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 IES-500x port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 7bd13f8dd37c417dbbc92abbcbefbdde + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.18.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: 7ab66a4640ee4852ad0e587eb1076f9d + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: 0b1508bec31642c381b4bab5b1c394fb + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: 5a77fb99febd45feaadbb4f1c6f58ead + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: a4375745658546598b786c43bafb629f + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: eb00c7f533b24a06b3b9b926dc8aff2d + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: c90cfe865d7a4fdd89970e086b04a9a7 + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.ies500x.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.ies500x.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) <> 0) /( last(//zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.ies500x.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: bbbd8624e0e24db8b062625a2de1785b + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.ies500x.net.if.name[{#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: d3e519c9648c4c58a7e55a9c90d8a3c0 + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.ies500x.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 IES-500x port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 71a10836f3094184bba728a0cf4d005a + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL IES-500x: 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: 7816c8845baa498a96cc6d0a4049357c + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: bbd80eaceee848019cfef5e20f0c356a + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: c9f694268c334213a39c09dbadcdd067 + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: f929a7e5d0b741c4b557715fbc5a7e1f + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.ies500x.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: 74beae2dcc424702a906aa736e9f9d0f + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.ies500x.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.ies500x.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) <> 0) /( last(//zyxel.ies500x.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.ies500x.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}' + graph_prototypes: + - + uuid: cb09087451b3472ab5d04f18c829acc9 + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 82fd413110454b88ab811229cc598eeb + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: c4cbf45592f8421eacc85a833509a819 + name: 'ZYXEL IES-500x: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.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: 3edd9015b1794d39819acf0a2fdc35ba + name: 'Slot discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SLOTSTATUS},.1.3.6.1.4.1.890.1.5.13.5.6.3.1.7,{#ZYXEL.SLOT.ID},.1.3.6.1.4.1.890.1.5.13.5.6.3.1.1]' + key: zyxel.ies500x.slot.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.SLOTSTATUS}' + value: '{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.SLOTSTATUS}' + value: '{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + description: 'The table which contains the slot information in a chassis.' + item_prototypes: + - + uuid: e3a25e0a2532495291446bd1a6641926 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Alarm status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.8.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.alarm[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + This variable indicates the alarm status of the module. + It is a bit map represented a sum, therefore, it can represent + multiple defects simultaneously. The moduleNoDefect should be set + if and only if no other flag is set. + The various bit positions are: + 1 moduleNoDefect + 2 moduleOverHeat + 3 moduleFanRpmLow + 4 moduleVoltageLow + 5 moduleThermalSensorFailure + 6 modulePullOut + 7 powerDC48VAFailure + 8 powerDC48VBFailure + 9 extAlarmInputTrigger + 10 moduleDown + 11 mscSwitchOverOK + 12 networkTopologyChange + 13 macSpoof + 14 cpuHigh + 15 memoryUsageHigh + 16 packetBufferUsageHigh + 17 loopguardOccurence + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var valueArray = [ + 'moduleNoDefect', + 'moduleOverHeat', + 'moduleFanRpmLow', + 'moduleVoltageLow', + 'moduleThermalSensorFailure', + 'modulePullOut', + 'powerDC48VAFailure', + 'powerDC48VBFailure', + 'extAlarmInputTrigger', + 'moduleDown', + 'mscSwitchOverOK', + 'networkTopologyChange', + 'macSpoof', + 'cpuHigh', + 'memoryUsageHigh', + 'packetBufferUsageHigh', + 'loopguardOccurence' + ]; + var base2 = parseInt(value).toString(2); + var outArray = []; + for (var i = 0; i < base2.length; ++i) { + if (base2[base2.length - 1 - i] === '1') outArray.push(valueArray[i]); + } + return outArray.join(); + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: d2dd1a23dbbb467e90ab99ff59a817a2 + expression: 'find(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.alarm[{#SNMPINDEX}],,"like","moduleNoDefect")=0' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} alarm' + priority: AVERAGE + description: 'The slot reported an error.' + - + uuid: a58ef41b02d94d16abe294bc26fc0874 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: DSL modem code version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.6.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The DSL modem code version of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 1b163693dc87407db836021da67bdccc + expression: '(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.cv.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: DSL modem code has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: bf65cd99df724b64a4cad64c0681ab27 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.3.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.desc[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The descriptions of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: 081fb5758fb6412890a54630d737f239 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Driver version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.5.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The DSL driver of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 44f7087bcb524593a419887c199fb613 + expression: '(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.dv.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Driver has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 6b3a925397094b00aa31efee03a226fa + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Firmware version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.4.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The firmware version of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 6de6e5adadf04a79813ed7778b454043 + expression: '(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.fw.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: c16e15224326406ba5f4c58a1c2e3b2c + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Hardware version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.10.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The hardware version of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 42969016e9c846a8954ebf95d2ff0ffc + expression: '(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.hw.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Hardware version has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: eed64c81e4b54ccd9d7f0e5b86ede083 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: MAC address 1' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.12.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.mac1[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The MAC Address of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: d0fdd2a7dcb348b58dd3bea0357f84b3 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: MAC address 2' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.13.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.mac2[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The MAC Address of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: 6f9532e9368344ad8f7d35273e14c358 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.9.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.serial[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The serial number of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 0994c0ab8b004dc280d1a036e7043cc0 + expression: '(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.serial[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.serial[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.serial[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} has been replaced (new serial number received)' + priority: INFO + description: 'Slot {#ZYXEL.SLOT.ID} serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 7b8791b7c91e4c14aa56a29617a6fa81 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.7.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.status[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-IES5000-MIB + The module state of the plug-in card. + valuemap: + name: 'ZYXEL IES-500x module status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: 9387847247134f3296e077713407686e + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-IES5000-MIB + Card type of the plug-in card. + valuemap: + name: 'ZYXEL IES-500x module type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: be141094a1ee4b2391bf8684ddca86e6 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Uptime' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.11.{#SNMPINDEX}' + key: 'zyxel.ies500x.slot.uptime[{#SNMPINDEX}]' + history: 7d + units: s + description: | + MIB: ZYXEL-IES5000-MIB + The time (in seconds) since the plug-in card was last re-initialized. + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 6717069c115147b095321f2c4c5ec51b + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.slot.uptime[{#SNMPINDEX}])<10m' + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID} has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + - + uuid: c2d924fbfe3b44a58454e6a4392aa6a8 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.LOW},.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.7,{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.5]' + key: zyxel.ies500x.temp.discovery + delay: 1h + description: 'An entry in tempTable.' + item_prototypes: + - + uuid: c8f98b46dbc3464eaa390c504198f550 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-IES5000-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: c4993b2d52e04808862ac0d043b0e982 + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH} or last(/ZYXEL IES-500x SNMP/zyxel.ies500x.temp[{#SNMPINDEX}])<{#ZYXEL.TEMP.THRESH.LOW}' + name: 'ZYXEL IES-500x: Temperature Slot {#ZYXEL.SLOT.ID} Sensor: {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 3b8799c609344e749de0da409b666714 + name: 'ZYXEL IES-500x: "Temperature Slot {#ZYXEL.SLOT.ID} Sensor: {#ZYXEL.TEMP.ID}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.temp[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = []; + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.TEMP.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item); + }); + return JSON.stringify(outArr); + - + uuid: dbc4a230a0bd408b9847b1507c248062 + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.8,{#ZYXEL.VOLT.THRESH.LOW}, .1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.5]' + key: zyxel.ies500x.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 1b3485d6cc6847639d75d4dbcfda99ea + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.2.{#SNMPINDEX}' + key: 'zyxel.ies500x.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-IES5000-MIB + The current voltage reading. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.001' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 55bc511ff2094a86b10c542e896d10e2 + expression: 'last(/ZYXEL IES-500x SNMP/zyxel.ies500x.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW} or last(/ZYXEL IES-500x SNMP/zyxel.ies500x.volt[{#SNMPINDEX}])>{#ZYXEL.VOLT.THRESH.HIGH}' + name: 'ZYXEL IES-500x: Voltage Slot {#ZYXEL.SLOT.ID} {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: bf0cfa212f934287b8dd3e405f8d1de3 + name: 'ZYXEL IES-500x: Slot {#ZYXEL.SLOT.ID}: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-500x SNMP' + key: 'zyxel.ies500x.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + item["{#ZYXEL.VOLT.NOMINAL}"] = "+" + item["{#ZYXEL.VOLT.NOMINAL}"] / 1000 + "V"; + item["{#ZYXEL.VOLT.THRESH.LOW}"] /= 1000; + item["{#ZYXEL.VOLT.THRESH.HIGH}"] /= 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$SNMP.TIMEOUT}' + value: 5m + description: 'The time interval for SNMP agent availability trigger expression.' + - + macro: '{$ZYXEL.ADSL.ATN.MAX}' + value: '40' + description: 'Type the maximum signal attenuation' + - + macro: '{$ZYXEL.ADSL.SNR.MIN}' + value: '8' + description: 'Type the minimum signal to noise margin (0-31 dB)' + - + macro: '{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES}' + value: '1' + description: 'Filter to exclude discovered slots by status.' + - + 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.DESC.MATCHES}' + value: '.*' + description: 'Filter by discoverable interface names.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}' + value: CHANGE_IF_NEEDED + description: 'Filter to exclude discovered interfaces by name.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + value: '.*' + description: 'Filter of discoverable link types.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + value: '2' + description: 'Filter to exclude discovered by link types.' + - + macro: '{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES}' + value: '.*' + description: 'Filter by discoverable slot status.' + valuemaps: + - + uuid: 10dd3d9951014a38bc3517df54381a66 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: efd6a6086011465ca956b1664f7d6474 + name: 'ZYXEL IES-500x module status' + mappings: + - + value: '1' + newvalue: Empty + - + value: '2' + newvalue: Up + - + value: '3' + newvalue: Down + - + value: '4' + newvalue: Testing + - + value: '5' + newvalue: Standby + - + uuid: 892651d2b1e3431490f2c531a50e2732 + name: 'ZYXEL IES-500x module type' + mappings: + - + value: '1' + newvalue: unknown + - + value: '101' + newvalue: msc1000G + - + value: '102' + newvalue: alc1248G_51 + - + value: '103' + newvalue: alc1248G_53 + - + value: '104' + newvalue: slc1248G_22 + - + value: '105' + newvalue: vlc1224G_41 + - + value: '106' + newvalue: msc1024G + - + value: '107' + newvalue: alc1272G_51 + - + value: '108' + newvalue: vop1248G_61_SIP + - + value: '109' + newvalue: msc1000GA + - + value: '110' + newvalue: vlc1324G_51 + - + value: '111' + newvalue: msc1224G + - + value: '112' + newvalue: vop1248G_61_H248 + - + value: '113' + newvalue: vlc1348G_51 + - + value: '114' + newvalue: elc1220G_55 + - + value: '115' + newvalue: msc1024GA + - + value: '116' + newvalue: vlc1324G_53 + - + value: '117' + newvalue: ima1408G_81 + - + value: '118' + newvalue: vlc1424G_56 + - + value: '119' + newvalue: slc1348G_22 + - + value: '120' + newvalue: vlc1348G_53 + - + value: '121' + newvalue: alc1372G_51 + - + value: '122' + newvalue: msc1024GB + - + value: '123' + newvalue: msc1224GB + - + value: '124' + newvalue: vop1372G_61_H248 + - + uuid: 9174dafc199e438994256eff4dd87bdd + name: 'ZYXEL IES-500x port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: f64c046f1eca45e09dad683603f4674b + name: 'ZYXEL IES-500x 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 diff --git a/templates/net/zyxel_snmp/zyxel_ies-6000_snmp/README.md b/templates/net/zyxel_snmp/zyxel_ies-6000_snmp/README.md new file mode 100644 index 00000000000..462e2651d0c --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_ies-6000_snmp/README.md @@ -0,0 +1,157 @@ + +# IES-6000 SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/global/en/products/msansdslams/central-msans/chassis-msans/ies-6000-series + +This template was tested on: + +- ZYXEL IES-6000 + +## 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| +|----|-----------|-------| +|{$SNMP.TIMEOUT} |<p>The time interval for SNMP agent availability trigger expression.</p> |`5m` | +|{$ZYXEL.ADSL.ATN.MAX} |<p>Type the maximum signal attenuation</p> |`40` | +|{$ZYXEL.ADSL.SNR.MIN} |<p>Type the minimum signal to noise margin (0-31 dB)</p> |`8` | +|{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES} |<p>Filter to exclude discovered slots by status.</p> |`1` | +|{$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.DESC.MATCHES} |<p>Filter by discoverable interface names.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES} |<p>Filter to exclude discovered interfaces by name.</p> |`CHANGE_IF_NEEDED` | +|{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES} |<p>Filter of discoverable link types.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES} |<p>Filter to exclude discovered by link types.</p> |`2` | +|{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES} |<p>Filter by discoverable slot status.</p> |`.*` | + +## Template links + +There are no template links in this template. + +## Discovery rules + +|Name|Description|Type|Key and additional info| +|----|-----------|----|----| +|Slot discovery |<p>The table which contains the slot information in a chassis.</p> |SNMP |zyxel.ies6000.slot.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.SLOTSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES}`</p><p>- B: {#ZYXEL.SLOTSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES}`</p> | +|Fan discovery |<p>An entry in fanRpmTable.</p> |SNMP |zyxel.ies6000.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p> |SNMP |zyxel.ies6000.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.ies6000.volt.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|CPU discovery |<p>A table that contains CPU utilization information.</p><p>This table is supported by R1.03 and later versions.</p> |SNMP |zyxel.ies6000.cpu.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Memory discovery |<p>A table that contains memory usage information.</p> |SNMP |zyxel.ies6000.memory.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Packet buffer discovery |<p>A table that contains packet buffer usage information.</p> |SNMP |zyxel.ies6000.buffer.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Ethernet interface discovery |<p>-</p> |SNMP |zyxel.ies6000.net.if.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.DESC} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}`</p><p>- B: {#ZYXEL.IF.DESC} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- D: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- E: {#ZYXEL.IF.NAME} MATCHES_REGEX `enet`</p> | +|ADSL interface discovery |<p>-</p> |SNMP |zyxel.ies6000.net.adsl.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.DESC} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}`</p><p>- B: {#ZYXEL.IF.DESC} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- D: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- E: {#ZYXEL.IF.NAME} MATCHES_REGEX `adsl`</p> | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: CPU utilization |<p>MIB: ZYXEL-IES5000-MIB</p><p>The CPU utilization in the past 60 seconds.</p> |SNMP |zyxel.ies6000.cpu[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Fans |ZYXEL IES-6000: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-IES5000-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.ies6000.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL IES-6000: 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.ies6000.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-6000: 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.ies6000.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-6000: 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.ies6000.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-6000: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.ies6000.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES-6000: 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.ies6000.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Memory utilization |<p>MIB: ZYXEL-IES5000-MIB</p><p>The memory usage in the past 60 seconds.</p> |SNMP |zyxel.ies6000.memory[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Memory |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Packet buffer utilization |<p>MIB: ZYXEL-IES5000-MIB</p><p>The packet buffer usage in the past 60 seconds.</p> |SNMP |zyxel.ies6000.buffer[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Type |<p>MIB: ZYXEL-IES5000-MIB</p><p>Card type of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Description |<p>MIB: ZYXEL-IES5000-MIB</p><p>The descriptions of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.desc[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Firmware version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The firmware version of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Driver version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The DSL driver of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: DSL modem code version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The DSL modem code version of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Status |<p>MIB: ZYXEL-IES5000-MIB</p><p>The module state of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Alarm status |<p>MIB: ZYXEL-IES5000-MIB</p><p>This variable indicates the alarm status of the module.</p><p>It is a bit map represented a sum, therefore, it can represent</p><p>multiple defects simultaneously. The moduleNoDefect should be set</p><p>if and only if no other flag is set.</p><p>The various bit positions are:</p><p>1 moduleNoDefect</p><p>2 moduleOverHeat</p><p>3 moduleFanRpmLow</p><p>4 moduleVoltageLow</p><p>5 moduleThermalSensorFailure</p><p>6 modulePullOut</p><p>7 powerDC48VAFailure</p><p>8 powerDC48VBFailure</p><p>9 extAlarmInputTrigger</p><p>10 moduleDown</p><p>11 mscSwitchOverOK</p><p>12 networkTopologyChange</p><p>13 macSpoof</p><p>14 cpuHigh</p><p>15 memoryUsageHigh</p><p>16 packetBufferUsageHigh</p><p>17 loopguardOccurence</p> |SNMP |zyxel.ies6000.slot.alarm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Hardware version |<p>MIB: ZYXEL-IES5000-MIB</p><p>The hardware version of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Serial number |<p>MIB: ZYXEL-IES5000-MIB</p><p>The serial number of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.serial[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Uptime |<p>MIB: ZYXEL-IES5000-MIB</p><p>The time (in seconds) since the plug-in card was last re-initialized.</p> |SNMP |zyxel.ies6000.slot.uptime[{#SNMPINDEX}] | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: MAC address 1 |<p>MIB: ZYXEL-IES5000-MIB</p><p>The MAC Address of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.mac1[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: MAC address 2 |<p>MIB: ZYXEL-IES5000-MIB</p><p>The MAC Address of the plug-in card.</p> |SNMP |zyxel.ies6000.slot.mac2[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Port {#SNMPINDEX}: Interface description |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies6000.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies6000.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: 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.ies6000.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.ies6000.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.ies6000.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL IES-6000: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.ies6000.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.ies6000.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface description |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies6000.net.adsl.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies6000.net.adsl.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-6000, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies6000.net.adsl.atuc.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-6000, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies6000.net.adsl.atuc.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-6000, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies6000.net.adsl.atuc.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies6000.net.adsl.atur.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies6000.net.adsl.atur.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies6000.net.adsl.atur.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Power_supply |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-IES5000-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.ies6000.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL IES-6000: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL IES-6000: 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.ies6000.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-IES5000-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.ies6000.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} high CPU utilization (over {#ZYXEL.CPU.THRESH.HIGH}% for 5m) |<p>CPU utilization is too high. The system might be slow to respond.</p> |`{TEMPLATE_NAME:zyxel.ies6000.cpu[{#SNMPINDEX}].min(5m)}>{#ZYXEL.CPU.THRESH.HIGH}` |WARNING | | +|ZYXEL IES-6000: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.ies6000.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW} or {TEMPLATE_NAME:zyxel.ies6000.fan[{#SNMPINDEX}].last()}>{#ZYXEL.FANRPM.THRESH.HIGH}` |AVERAGE | | +|ZYXEL IES-6000: Template does not match hardware |<p>This template is for Zyxel IES-6000, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.ies6000.model.last()}<>"IES-6000"` |INFO | | +|ZYXEL IES-6000: High memory utilization in Slot {#ZYXEL.SLOT.ID} pool (>{#ZYXEL.MEMORYHIGHTHRESH}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.ies6000.memory[{#SNMPINDEX}].min(5m)}>{#ZYXEL.MEMORYHIGHTHRESH}` |AVERAGE | | +|ZYXEL IES-6000: High Packet buffer utilization in Slot {#ZYXEL.SLOT.ID} (>{#ZYXEL.BUFFERHIGHTHRESH}% for 5m) |<p>The system is running out of free buffer.</p> |`{TEMPLATE_NAME:zyxel.ies6000.buffer[{#SNMPINDEX}].min(5m)}>{#ZYXEL.BUFFERHIGHTHRESH}` |AVERAGE | | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Driver has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: DSL modem code has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} alarm |<p>The slot reported an error.</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.alarm[{#SNMPINDEX}].str("moduleNoDefect")}=0` |AVERAGE | | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Hardware version has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} has been replaced (new serial number received) |<p>Slot {#ZYXEL.SLOT.ID} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.serial[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.ies6000.slot.serial[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.ies6000.slot.uptime[{#SNMPINDEX}].last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: 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.ies6000.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.ies6000.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.ies6000.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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.ies6000.net.adsl.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.ies6000.net.adsl.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.ies6000.net.adsl.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.ies6000.net.adsl.atuc.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL IES-6000: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.ies6000.net.adsl.atuc.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL IES-6000: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.ies6000.net.adsl.atur.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL IES-6000: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.ies6000.net.adsl.atur.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL IES-6000: Voltage Slot {#ZYXEL.SLOT.ID} {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.ies6000.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW} or {TEMPLATE_NAME:zyxel.ies6000.volt[{#SNMPINDEX}].last()}>{#ZYXEL.VOLT.THRESH.HIGH}` |AVERAGE | | +|ZYXEL IES-6000: 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 IES-6000: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.ies6000.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES-6000: Temperature Slot {#ZYXEL.SLOT.ID} Sensor: {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.ies6000.temp[{#SNMPINDEX}].last()}>{#ZYXEL.TEMP.THRESH.HIGH} or {TEMPLATE_NAME:zyxel.ies6000.temp[{#SNMPINDEX}].last()}<{#ZYXEL.TEMP.THRESH.LOW}` |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 IES-6000 + diff --git a/templates/net/zyxel_snmp/zyxel_ies-6000_snmp/template_net_zyxel_ies-6000_snmp.yaml b/templates/net/zyxel_snmp/zyxel_ies-6000_snmp/template_net_zyxel_ies-6000_snmp.yaml new file mode 100644 index 00000000000..70c0ac80440 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_ies-6000_snmp/template_net_zyxel_ies-6000_snmp.yaml @@ -0,0 +1,2258 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:20:13Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 3645654baaf04f11927b171bcb048349 + template: 'ZYXEL IES-6000 SNMP' + name: 'ZYXEL IES-6000 SNMP' + description: | + ZYXEL IES-6000 + + MIBs used: + RFC1213-MIB + ADSL-LINE-MIB + ZYXEL-IES5000-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 IES-6000 + + 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: ab61e5047280486885692ba89781c9fd + name: 'ZYXEL IES-6000: 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: 41eb76d6be3e47b8b0ca1296470372aa + expression: 'max(/ZYXEL IES-6000 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL IES-6000: 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: c4856aae926047078d33bc760833ec12 + name: 'ZYXEL IES-6000: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.ies6000.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: 631f2bc2963c4abb8d01b5cca6179d77 + name: 'ZYXEL IES-6000: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.ies6000.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: 663131027cc84bd188fb4e5bd240777c + name: 'ZYXEL IES-6000: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.ies6000.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: a91730326e1c4479bb330110a15ee689 + name: 'ZYXEL IES-6000: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.ies6000.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: 7f6f8bdde2644182a892792ff2bb7c68 + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.model)<>"IES-6000"' + name: 'ZYXEL IES-6000: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel IES-6000, but connected to {ITEM.VALUE}' + - + uuid: 2062eb7816e242668936c020e6e1d532 + name: 'ZYXEL IES-6000: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.ies6000.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: e79a790f3ca54943997f1d0b3e74943d + name: 'ZYXEL IES-6000: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.ies6000.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: 7a52520cc3dc4350bd7aa14260899f1c + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.uptime)<10m' + name: 'ZYXEL IES-6000: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 6023c8a68b5547dcab838414cbf544ea + name: 'Packet buffer discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.BUFFERHIGHTHRESH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.5.1.4]' + key: zyxel.ies6000.buffer.discovery + delay: 1h + description: 'A table that contains packet buffer usage information.' + item_prototypes: + - + uuid: 5de9037f3a1444adbcf5bcfbe4618ad6 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Packet buffer utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.5.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.buffer[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-IES5000-MIB + The packet buffer usage in the past 60 seconds. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 1173ae0cf9f440f595366a6da7a4c672 + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.buffer[{#SNMPINDEX}],5m)>{#ZYXEL.BUFFERHIGHTHRESH}' + name: 'ZYXEL IES-6000: High Packet buffer utilization in Slot {#ZYXEL.SLOT.ID} (>{#ZYXEL.BUFFERHIGHTHRESH}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free buffer.' + graph_prototypes: + - + uuid: fcb46fd73a884e60b1ba3d4e8873bbce + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Packet buffer utilization' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.buffer[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: 1aace4fa8bdc49d28d8785aeadcdc8d4 + name: 'CPU discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.CPU.THRESH.HIGH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.4.1.4]' + key: zyxel.ies6000.cpu.discovery + delay: 1h + description: | + A table that contains CPU utilization information. + This table is supported by R1.03 and later versions. + item_prototypes: + - + uuid: 209b18dabcaa4d6a8870864eec2fc898 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: CPU utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.4.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.cpu[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-IES5000-MIB + The CPU utilization in the past 60 seconds. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 0d882e8f017e46c78727437bd55759d4 + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.cpu[{#SNMPINDEX}],5m)>{#ZYXEL.CPU.THRESH.HIGH}' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} high CPU utilization (over {#ZYXEL.CPU.THRESH.HIGH}% for 5m)' + opdata: 'Current utilization: {ITEM.LASTVALUE1}' + priority: WARNING + description: 'CPU utilization is too high. The system might be slow to respond.' + graph_prototypes: + - + uuid: 6c3837433afe4a1cb64038c62743be15 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: CPU utilization' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.cpu[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: abd64129536e4b43b5718adde7979c18 + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.HIGH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.7,{#ZYXEL.FANRPM.THRESH.LOW}, .1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.5]' + key: zyxel.ies6000.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: cfb5021170ca4365a72e76fca74efd9c + name: 'ZYXEL IES-6000: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-IES5000-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: d5f65aebabf741798dcd0b452302aefb + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW} or last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.fan[{#SNMPINDEX}])>{#ZYXEL.FANRPM.THRESH.HIGH}' + name: 'ZYXEL IES-6000: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 48736da52a8947e6a69cef3a9980bfbb + name: 'ZYXEL IES-6000: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.fan[{#SNMPINDEX}]' + - + uuid: 691c50d10ae342e0b9825c9d72a4cff9 + name: 'Memory discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.MEMORYHIGHTHRESH}, .1.3.6.1.4.1.890.1.5.13.5.11.3.6.1.4]' + key: zyxel.ies6000.memory.discovery + delay: 1h + description: 'A table that contains memory usage information.' + item_prototypes: + - + uuid: 41168b2146274e8d8d93d49e89b0f018 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Memory utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.6.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.memory[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-IES5000-MIB + The memory usage in the past 60 seconds. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 64108d56dc6d43148f67503383fc6705 + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.memory[{#SNMPINDEX}],5m)>{#ZYXEL.MEMORYHIGHTHRESH}' + name: 'ZYXEL IES-6000: High memory utilization in Slot {#ZYXEL.SLOT.ID} pool (>{#ZYXEL.MEMORYHIGHTHRESH}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + graph_prototypes: + - + uuid: c85c2345f80448feb2253a10ec16778a + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Memory utilization' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.memory[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item) + }); + return JSON.stringify(outArr); + - + uuid: cc124fe17126405f82fd61f248fe1abe + name: 'ADSL interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.31.1.1.1.1,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8,{#ZYXEL.IF.DESC},.1.3.6.1.2.1.31.1.1.1.18]' + key: zyxel.ies6000.net.adsl.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: C + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - + macro: '{#ZYXEL.IF.NAME}' + value: adsl + formulaid: E + item_prototypes: + - + uuid: d8a6e995233245cd8ac684232add71f0 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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 IES-6000 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: dfd46b4bf39140b391bb2a8ab21db668 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.5.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.atuc.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-6000, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: e1233b29eb764b0bb5a2ce35f79060bf + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.atuc.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL IES-6000: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: 0b77f799291548de84478dff54742afe + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.atuc.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-6000, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 292d33986274498b819ab0b6b3ac3c21 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUC noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.4.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.atuc.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES-6000, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: d7392fd0c372459bb21b9a85a47ccb8c + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.atuc.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL IES-6000: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: f6d71feb40954a88a2fa5ebe35af25cb + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.5.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.atur.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 2ef5b800bb4148ce82bed8c4bf977a35 + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.atur.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL IES-6000: High the DSL line attenuation in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: c4d523e2ef9c4d7d901383e19876af80 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.atur.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: ad834d61ca834dd987784180211320f7 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: ATUR noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.4.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.atur.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: ba6eb4b3b6904b5dac4c057d3f6f3c17 + expression: 'min(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.atur.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL IES-6000: Low the DSL line noise margins in Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: 2349bae6bb864a4f8c6c8d9b0087503f + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.18.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: fd6e0cff15834d9ea5d5f5f570608abb + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: eff728cc8d824bb98a840e07c0c370ed + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: f689c73f2aae4b4aa1688c584c88a562 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 26a0ded897e745208787710bca306658 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 8d0583741866478cb77f21e4e8e982ec + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.name[{#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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: ba66aeea219840929dfbc7b8cb61b2ab + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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 IES-6000 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + trigger_prototypes: + - + uuid: 3fbe4b16a94648089df78829ee7e683f + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.adsl.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: 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: d4911b93b2084ca5b4e1c5a91bbb50af + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: d2d5d679e4974b3099111cb79506cbab + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 982554d0208a422d94b53a55ca566239 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + - + uuid: 49c3f935e21248b69ea351e1210cc62d + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.adsl.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: 'Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}' + graph_prototypes: + - + uuid: e8a72d0fe2d745ffbffae11b379297e4 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 60c44917db2045c19efd64718a9f37cf + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} Port {#ZYXEL.PORTID}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.adsl.out.traffic[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = Math.floor(item['{#SNMPINDEX}'] / 100); + item['{#ZYXEL.PORTID}'] = item['{#SNMPINDEX}'] % 100; + outArr.push(item) + }); + return JSON.stringify(outArr); + 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: 8f9073a53cee4e6fb8c36feda5185900 + name: 'Ethernet interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.31.1.1.1.1,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8,{#ZYXEL.IF.DESC},.1.3.6.1.2.1.31.1.1.1.18]' + key: zyxel.ies6000.net.if.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.DESC}' + value: '{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: C + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - + macro: '{#ZYXEL.IF.NAME}' + value: enet + formulaid: E + item_prototypes: + - + uuid: c96f6a48c03f4a92a5a75a6e6d603079 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.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 IES-6000 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: a70d2041768945a6906ab0cbe0f518ae + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.18.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: cee8836a0e00466fbe72a5de85007a49 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: a37e15f8480e47bf8b8f542e65df0a80 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: c3c7164096c845b599267186f66aa8ee + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: 03aeeb2bb9c9454ebd91714fff1eb713 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: c2b9296b58bf4617b86348c82f88b1c2 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: 2dc6ed1aacb84706bccd26c9c4e1e944 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.ies6000.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.ies6000.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) <> 0) /( last(//zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.ies6000.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: c4a8c8d0b51d496cbae4089ffee1e531 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.ies6000.net.if.name[{#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: 00c015d42840420c9878ef84177c8d42 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.ies6000.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 IES-6000 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: a9aac7e6c66a4a69a77f8c165f9a9d5c + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL IES-6000: 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: ff5b7d95366d47c68589c65b4b0dcb15 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: e88787c50f654d5295d03b55d94810bf + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: ac2959db86d44152b4a87294ee817dd7 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: c11fc8f0eacc42e5a6ca2443bdca60ce + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.ies6000.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: 6ef41c7cc0074674b43d583a8fa36868 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.ies6000.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.ies6000.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) <> 0) /( last(//zyxel.ies6000.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.ies6000.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}' + graph_prototypes: + - + uuid: 006679b6dfd64b65ad13de41be74783d + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 6c545945185743b2929edf1b81fe0872 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: b7085154d7694b9aba49b56bc412d458 + name: 'ZYXEL IES-6000: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.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: 10a176c3da924a95939cd35c0d0be862 + name: 'Slot discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SLOTSTATUS},.1.3.6.1.4.1.890.1.5.13.5.6.3.1.7,{#ZYXEL.SLOT.ID},.1.3.6.1.4.1.890.1.5.13.5.6.3.1.1]' + key: zyxel.ies6000.slot.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.SLOTSTATUS}' + value: '{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.SLOTSTATUS}' + value: '{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + description: 'The table which contains the slot information in a chassis.' + item_prototypes: + - + uuid: 7be6d40418f94284902c742fef1ada43 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Alarm status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.8.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.alarm[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + This variable indicates the alarm status of the module. + It is a bit map represented a sum, therefore, it can represent + multiple defects simultaneously. The moduleNoDefect should be set + if and only if no other flag is set. + The various bit positions are: + 1 moduleNoDefect + 2 moduleOverHeat + 3 moduleFanRpmLow + 4 moduleVoltageLow + 5 moduleThermalSensorFailure + 6 modulePullOut + 7 powerDC48VAFailure + 8 powerDC48VBFailure + 9 extAlarmInputTrigger + 10 moduleDown + 11 mscSwitchOverOK + 12 networkTopologyChange + 13 macSpoof + 14 cpuHigh + 15 memoryUsageHigh + 16 packetBufferUsageHigh + 17 loopguardOccurence + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var valueArray = [ + 'moduleNoDefect', + 'moduleOverHeat', + 'moduleFanRpmLow', + 'moduleVoltageLow', + 'moduleThermalSensorFailure', + 'modulePullOut', + 'powerDC48VAFailure', + 'powerDC48VBFailure', + 'extAlarmInputTrigger', + 'moduleDown', + 'mscSwitchOverOK', + 'networkTopologyChange', + 'macSpoof', + 'cpuHigh', + 'memoryUsageHigh', + 'packetBufferUsageHigh', + 'loopguardOccurence' + ]; + var base2 = parseInt(value).toString(2); + var outArray = []; + for (var i = 0; i < base2.length; ++i) { + if (base2[base2.length - 1 - i] === '1') outArray.push(valueArray[i]); + } + return outArray.join(); + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: c3f610ab856e42c7bb6460f552779e12 + expression: 'find(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.alarm[{#SNMPINDEX}],,"like","moduleNoDefect")=0' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} alarm' + priority: AVERAGE + description: 'The slot reported an error.' + - + uuid: 6ce4b55490ed425b8fbc1ad337071730 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: DSL modem code version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.6.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The DSL modem code version of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: c62327e51d27445b893e80bf77c9696c + expression: '(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.cv.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: DSL modem code has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 780fdca5ba10495d8ae1dfec6a655d4a + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.3.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.desc[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The descriptions of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: a0dc5b9a8968401a832dfd76cda474f1 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Driver version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.5.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The DSL driver of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 63a4bdc73f8c49a7abb914f47e162dec + expression: '(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.dv.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Driver has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: e74a7678743c4739b98160a9cf3d516b + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Firmware version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.4.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The firmware version of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 7a2ef454d9624fd78416d2e1345be9a5 + expression: '(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.fw.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 96ee73d987be4576b6b40f21d43ebbac + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Hardware version' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.10.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}]' + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The hardware version of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 537f28be56984664822b574a2064453b + expression: '(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.hw.ver[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Hardware version has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: aa0c1799930a46d9a658f26bf3549a18 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: MAC address 1' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.12.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.mac1[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The MAC Address of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: 6fdbc67b2612400c9e8372b310ca496e + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: MAC address 2' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.13.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.mac2[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The MAC Address of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: 5edbf1b21ca5436a9522f5dcfe80b61d + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.9.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.serial[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IES5000-MIB + The serial number of the plug-in card. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 3fbbcffe1c46497d89fe0d987a5f6eff + expression: '(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.serial[{#SNMPINDEX}],#1)<>last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.serial[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.serial[{#SNMPINDEX}]))>0' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} has been replaced (new serial number received)' + priority: INFO + description: 'Slot {#ZYXEL.SLOT.ID} serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 5eeedb8e70764975872bd6dc6bc10821 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.7.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.status[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-IES5000-MIB + The module state of the plug-in card. + valuemap: + name: 'ZYXEL IES-6000 module status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: ea78751ce7954aa5b84caf9bdfcfeefd + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-IES5000-MIB + Card type of the plug-in card. + valuemap: + name: 'ZYXEL IES-6000 module type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + - + uuid: 37de3e96e8d8420192e6aae7a56ff9ef + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Uptime' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.11.{#SNMPINDEX}' + key: 'zyxel.ies6000.slot.uptime[{#SNMPINDEX}]' + history: 7d + units: s + description: | + MIB: ZYXEL-IES5000-MIB + The time (in seconds) since the plug-in card was last re-initialized. + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 50e43c41d0e241238b65da25c12d1616 + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.slot.uptime[{#SNMPINDEX}])<10m' + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID} has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + - + uuid: 65972390ff734a088e984ac6531833c6 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.LOW},.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.7,{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.5]' + key: zyxel.ies6000.temp.discovery + delay: 1h + description: 'An entry in tempTable.' + item_prototypes: + - + uuid: 352f409f553f4805854690b51d83b061 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-IES5000-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: c517b703b5084e9b8053fb139e3350ae + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH} or last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.temp[{#SNMPINDEX}])<{#ZYXEL.TEMP.THRESH.LOW}' + name: 'ZYXEL IES-6000: Temperature Slot {#ZYXEL.SLOT.ID} Sensor: {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 8e885ce1061b4400abce9eaad1271ea1 + name: 'ZYXEL IES-6000: "Temperature Slot {#ZYXEL.SLOT.ID} Sensor: {#ZYXEL.TEMP.ID}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.temp[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = []; + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.TEMP.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + outArr.push(item); + }); + return JSON.stringify(outArr); + - + uuid: 86ee5ab94e9a49dca526ce6e3d9c95fa + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.8,{#ZYXEL.VOLT.THRESH.LOW}, .1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.5]' + key: zyxel.ies6000.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 36940f27f78248d48ed8caf34fc15721 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.2.{#SNMPINDEX}' + key: 'zyxel.ies6000.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-IES5000-MIB + The current voltage reading. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.001' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Slot {#ZYXEL.SLOT.ID}' + trigger_prototypes: + - + uuid: 14c98fc8b4864a3c87062510a079d948 + expression: 'last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW} or last(/ZYXEL IES-6000 SNMP/zyxel.ies6000.volt[{#SNMPINDEX}])>{#ZYXEL.VOLT.THRESH.HIGH}' + name: 'ZYXEL IES-6000: Voltage Slot {#ZYXEL.SLOT.ID} {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: d7f01a58a08a4403818242a907152f78 + name: 'ZYXEL IES-6000: Slot {#ZYXEL.SLOT.ID}: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES-6000 SNMP' + key: 'zyxel.ies6000.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + item["{#ZYXEL.VOLT.NOMINAL}"] = "+" + item["{#ZYXEL.VOLT.NOMINAL}"] / 1000 + "V"; + item["{#ZYXEL.VOLT.THRESH.LOW}"] /= 1000; + item["{#ZYXEL.VOLT.THRESH.HIGH}"] /= 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$SNMP.TIMEOUT}' + value: 5m + description: 'The time interval for SNMP agent availability trigger expression.' + - + macro: '{$ZYXEL.ADSL.ATN.MAX}' + value: '40' + description: 'Type the maximum signal attenuation' + - + macro: '{$ZYXEL.ADSL.SNR.MIN}' + value: '8' + description: 'Type the minimum signal to noise margin (0-31 dB)' + - + macro: '{$ZYXEL.LLD.FILTER..SLOT.STATUS.NOT_MATCHES}' + value: '1' + description: 'Filter to exclude discovered slots by status.' + - + 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.DESC.MATCHES}' + value: '.*' + description: 'Filter by discoverable interface names.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.DESC.NOT_MATCHES}' + value: CHANGE_IF_NEEDED + description: 'Filter to exclude discovered interfaces by name.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + value: '.*' + description: 'Filter of discoverable link types.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + value: '2' + description: 'Filter to exclude discovered by link types.' + - + macro: '{$ZYXEL.LLD.FILTER.SLOT.STATUS.MATCHES}' + value: '.*' + description: 'Filter by discoverable slot status.' + valuemaps: + - + uuid: 5247e9e5efcd4b29b864e336619eafcf + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 0236177f088340ff8ce5adb9361b8df8 + name: 'ZYXEL IES-6000 module status' + mappings: + - + value: '1' + newvalue: Empty + - + value: '2' + newvalue: Up + - + value: '3' + newvalue: Down + - + value: '4' + newvalue: Testing + - + value: '5' + newvalue: Standby + - + uuid: 7ad4e124b8184fb8abc454c70c67e309 + name: 'ZYXEL IES-6000 module type' + mappings: + - + value: '1' + newvalue: unknown + - + value: '101' + newvalue: msc1000G + - + value: '102' + newvalue: alc1248G_51 + - + value: '103' + newvalue: alc1248G_53 + - + value: '104' + newvalue: slc1248G_22 + - + value: '105' + newvalue: vlc1224G_41 + - + value: '106' + newvalue: msc1024G + - + value: '107' + newvalue: alc1272G_51 + - + value: '108' + newvalue: vop1248G_61_SIP + - + value: '109' + newvalue: msc1000GA + - + value: '110' + newvalue: vlc1324G_51 + - + value: '111' + newvalue: msc1224G + - + value: '112' + newvalue: vop1248G_61_H248 + - + value: '113' + newvalue: vlc1348G_51 + - + value: '114' + newvalue: elc1220G_55 + - + value: '115' + newvalue: msc1024GA + - + value: '116' + newvalue: vlc1324G_53 + - + value: '117' + newvalue: ima1408G_81 + - + value: '118' + newvalue: vlc1424G_56 + - + value: '119' + newvalue: slc1348G_22 + - + value: '120' + newvalue: vlc1348G_53 + - + value: '121' + newvalue: alc1372G_51 + - + value: '122' + newvalue: msc1024GB + - + value: '123' + newvalue: msc1224GB + - + value: '124' + newvalue: vop1372G_61_H248 + - + uuid: b20f50ac559f45369de16c04f5ccf523 + name: 'ZYXEL IES-6000 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 2f3b061e1d6f46a3b8216b2398fc2896 + name: 'ZYXEL IES-6000 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 diff --git a/templates/net/zyxel_snmp/zyxel_ies1248-51_snmp/README.md b/templates/net/zyxel_snmp/zyxel_ies1248-51_snmp/README.md new file mode 100644 index 00000000000..cecdc071bb5 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_ies1248-51_snmp/README.md @@ -0,0 +1,113 @@ + +# IES1248-51 SNMP + +## Overview + +For Zabbix version: 6.0 and higher +http://origin-eu.zyxel.com/products_services/ies_1248_51v.shtml?t=p + +This template was tested on: + +- ZYXEL IES1248-51 + +## 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| +|----|-----------|-------| +|{$SNMP.TIMEOUT} |<p>The time interval for SNMP agent availability trigger expression.</p> |`5m` | +|{$ZYXEL.ADSL.ATN.MAX} |<p>Type the maximum signal attenuation</p> |`40` | +|{$ZYXEL.ADSL.SNR.MIN} |<p>Type the minimum signal to noise margin (0-31 dB)</p> |`8` | +|{$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.LINKSTATUS.MATCHES} |<p>Filter of discoverable link types.</p> |`.*` | +|{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES} |<p>Filter to exclude discovered by link types.</p> |`2` | + +## 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.ies1248.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p> |SNMP |zyxel.ies1248.temp.discovery | +|Voltage discovery |<p>An entry in voltageTable.</p> |SNMP |zyxel.ies1248.volt.discovery<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Ethernet interface discovery |<p>-</p> |SNMP |zyxel.ies1248.net.if.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- B: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.NAME} MATCHES_REGEX `enet`</p> | +|ADSL interface discovery |<p>-</p> |SNMP |zyxel.ies1248.net.adsl.discovery<p>**Filter**:</p>AND <p>- A: {#ZYXEL.IF.LINKSTATUS} MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}`</p><p>- B: {#ZYXEL.IF.LINKSTATUS} NOT_MATCHES_REGEX `{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}`</p><p>- C: {#ZYXEL.IF.NAME} MATCHES_REGEX `adsl`</p> | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|Fans |ZYXEL IES1248-51: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.ies1248.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL IES1248-51: 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.ies1248.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES1248-51: 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.ies1248.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES1248-51: 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.ies1248.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES1248-51: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.ies1248.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES1248-51: 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.ies1248.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES1248-51: ZyNOS F/W Version |<p>MIB: ZYXEL-IESCOMMON-MIB</p> |SNMP |zyxel.ies1248.fwversion<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL IES1248-51: Hardware serial number |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>Serial number</p> |SNMP |zyxel.ies1248.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies1248.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: 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.ies1248.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: 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.ies1248.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: 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.ies1248.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: 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.ies1248.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.ies1248.net.adsl.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: 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.ies1248.net.adsl.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: 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.ies1248.net.adsl.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL IES1248-51: 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.ies1248.net.adsl.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES1248-51: 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.ies1248.net.adsl.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES1248-51, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies1248.net.adsl.atuc.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES1248-51, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies1248.net.adsl.atuc.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES1248-51, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies1248.net.adsl.atuc.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR noise margin |<p>MIB: ADSL-LINE-MIB</p><p>Noise Margin as seen by this ATU with respect to its</p><p>received signal in tenth dB. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies1248.net.adsl.atur.snrmgn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR attenuation |<p>MIB: ADSL-LINE-MIB</p><p>Measured difference in the total power transmitted by</p><p>the peer ATU and the total power received by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies1248.net.adsl.atur.atn[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR output power |<p>MIB: ADSL-LINE-MIB</p><p>Measured total output power transmitted by this ATU. </p><p>The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges.</p> |SNMP |zyxel.ies1248.net.adsl.atur.outpwr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.1`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Power_supply |ZYXEL IES1248-51: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.ies1248.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL IES1248-51: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL IES1248-51: 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.ies1248.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Status |ZYXEL IES1248-51: Alarm status |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>This variable indicates the alarm status of the module.</p><p>It is a bit map represented a sum, therefore, it can represent</p><p>multiple defects simultaneously. The moduleNoDefect should be set</p><p>if and only if no other flag is set.</p><p>The various bit positions are:</p><p>1 moduleNoDefect</p><p>2 moduleOverHeat</p><p>3 moduleFanRpmLow</p><p>4 moduleVoltageLow</p><p>5 moduleThermalSensorFailure</p><p>6 modulePullOut</p><p>7 powerDC48VAFailure</p><p>8 powerDC48VBFailure</p><p>9 extAlarmInputTrigger</p><p>10 moduleDown</p><p>11 mscSwitchOverOK</p><p>12 networkTopologyChange</p><p>13 macSpoof</p><p>14 cpuHigh</p><p>15 memoryUsageHigh</p><p>16 packetBufferUsageHigh</p><p>17 loopguardOccurence</p> |SNMP |zyxel.ies1248.slot.alarm<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p> | +|Temperature |ZYXEL IES1248-51: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-IESCOMMON-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.ies1248.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL IES1248-51: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.ies1248.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL IES1248-51: Template does not match hardware |<p>This template is for Zyxel IES1248-51, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.ies1248.model.last()}<>"IES1248-51"` |INFO | | +|ZYXEL IES1248-51: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies1248.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.ies1248.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES1248-51: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.ies1248.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.ies1248.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: 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.ies1248.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL IES1248-51: 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.ies1248.net.adsl.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL IES1248-51: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.ies1248.net.adsl.atuc.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL IES1248-51: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.ies1248.net.adsl.atuc.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL IES1248-51: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m) |<p>Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed</p> |`{TEMPLATE_NAME:zyxel.ies1248.net.adsl.atur.snrmgn[{#SNMPINDEX}].min(5m)}<{$ZYXEL.ADSL.SNR.MIN}` |WARNING | | +|ZYXEL IES1248-51: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m) |<p>The reductions in amplitude of the downstream and upstream DSL signals.</p> |`{TEMPLATE_NAME:zyxel.ies1248.net.adsl.atur.atn[{#SNMPINDEX}].min(5m)}>{$ZYXEL.ADSL.ATN.MAX}` |WARNING | | +|ZYXEL IES1248-51: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.ies1248.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL IES1248-51: 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 IES1248-51: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.ies1248.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL IES1248-51: Port {#SNMPINDEX} alarm |<p>The slot reported an error.</p> |`{TEMPLATE_NAME:zyxel.ies1248.slot.alarm.str("moduleNoDefect")}=0` |AVERAGE | | +|ZYXEL IES1248-51: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.ies1248.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 IES1248-51 + diff --git a/templates/net/zyxel_snmp/zyxel_ies1248-51_snmp/template_net_zyxel_ies1248-51_snmp.yaml b/templates/net/zyxel_snmp/zyxel_ies1248-51_snmp/template_net_zyxel_ies1248-51_snmp.yaml new file mode 100644 index 00000000000..3cef0c7831a --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_ies1248-51_snmp/template_net_zyxel_ies1248-51_snmp.yaml @@ -0,0 +1,1204 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:20:25Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 8e6d7067cd094e56a52db999b3199edc + template: 'ZYXEL IES1248-51 SNMP' + name: 'ZYXEL IES1248-51 SNMP' + description: | + ZYXEL IES1248-51 + + MIBs used: + RFC1213-MIB + ADSL-LINE-MIB + ZYXEL-IESCOMMON-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 IES1248-51 + + 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: 03cf90df51e0466c8b31744ce820276f + name: 'ZYXEL IES1248-51: 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: 40466f29b8e54dc88cb49e818fc48281 + expression: 'max(/ZYXEL IES1248-51 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL IES1248-51: 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: a01b8490f3b94ac5ab500d67171cfe1a + name: 'ZYXEL IES1248-51: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.ies1248.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: 56974ccbede04e9eb966951ac3c88250 + name: 'ZYXEL IES1248-51: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.13.1.1.3.1.4.0.0 + key: zyxel.ies1248.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-IESCOMMON-MIB' + inventory_link: SOFTWARE_FULL + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: b64e891456674457ab4abf994b097277 + expression: '(last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.fwversion,#1)<>last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.fwversion,#2))=1 and length(last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.fwversion))>0' + name: 'ZYXEL IES1248-51: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 600e6a8b9dd549b69f64f1a536bce7de + name: 'ZYXEL IES1248-51: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.ies1248.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: ad09c90a951a4c41b935a70f58f5c26a + name: 'ZYXEL IES1248-51: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.ies1248.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: 427ef42e55ca498db16d078ed41e7ad9 + name: 'ZYXEL IES1248-51: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.ies1248.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: 21b638f9f1154b6bb78a652d8e54c1c2 + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.model)<>"IES1248-51"' + name: 'ZYXEL IES1248-51: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel IES1248-51, but connected to {ITEM.VALUE}' + - + uuid: 8c6546b670d4455aa1234c35bb033ac7 + name: 'ZYXEL IES1248-51: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.ies1248.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: 0d30380bb9a24bd1939d16287d5d0711 + name: 'ZYXEL IES1248-51: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.13.1.1.2.1.3.0 + key: zyxel.ies1248.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IESCOMMON-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 2f2972169c164053a8d439b0e572b0c6 + expression: '(last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.serialnumber,#1)<>last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.serialnumber,#2))=1 and length(last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.serialnumber))>0' + name: 'ZYXEL IES1248-51: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: bafdca2040ba44be911fd1e5a09f3298 + name: 'ZYXEL IES1248-51: Alarm status' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.13.1.1.3.1.8.0.0 + key: zyxel.ies1248.slot.alarm + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-IESCOMMON-MIB + This variable indicates the alarm status of the module. + It is a bit map represented a sum, therefore, it can represent + multiple defects simultaneously. The moduleNoDefect should be set + if and only if no other flag is set. + The various bit positions are: + 1 moduleNoDefect + 2 moduleOverHeat + 3 moduleFanRpmLow + 4 moduleVoltageLow + 5 moduleThermalSensorFailure + 6 modulePullOut + 7 powerDC48VAFailure + 8 powerDC48VBFailure + 9 extAlarmInputTrigger + 10 moduleDown + 11 mscSwitchOverOK + 12 networkTopologyChange + 13 macSpoof + 14 cpuHigh + 15 memoryUsageHigh + 16 packetBufferUsageHigh + 17 loopguardOccurence + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var valueArray = [ + 'moduleNoDefect', + 'moduleOverHeat', + 'moduleFanRpmLow', + 'moduleVoltageLow', + 'moduleThermalSensorFailure', + 'modulePullOut', + 'powerDC48VAFailure', + 'powerDC48VBFailure', + 'extAlarmInputTrigger', + 'moduleDown', + 'mscSwitchOverOK', + 'networkTopologyChange', + 'macSpoof', + 'cpuHigh', + 'memoryUsageHigh', + 'packetBufferUsageHigh', + 'loopguardOccurence' + ]; + var base2 = parseInt(value).toString(2); + var outArray = []; + for (var i = 0; i < base2.length; ++i) { + if (base2[base2.length - 1 - i] === '1') outArray.push(valueArray[i]); + } + return outArray.join(); + tags: + - + tag: Application + value: Status + triggers: + - + uuid: 6b1b1b27241f42229e8b159320371356 + expression: 'find(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.slot.alarm,,"like","moduleNoDefect")=0' + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX} alarm' + priority: AVERAGE + description: 'The slot reported an error.' + - + uuid: ba41848140394ac29fe9b77e77627f20 + name: 'ZYXEL IES1248-51: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.ies1248.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: bbccceac3dc24b9ab76a820fe5be4788 + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.uptime)<10m' + name: 'ZYXEL IES1248-51: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 9ffacb42c2fe4abd9e8d10e4b8803fc2 + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.5.13.1.2.1.1.5]' + key: zyxel.ies1248.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: d420958f89f04467b5aa4d41c565160b + name: 'ZYXEL IES1248-51: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.1.2.1.1.2.{#SNMPINDEX}' + key: 'zyxel.ies1248.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-IESCOMMON-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: 86f18f4e598443ab9e0ec30554d78e1a + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL IES1248-51: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: f8d2136dab70403a98da660bcf4c02a2 + name: 'ZYXEL IES1248-51: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.fan[{#SNMPINDEX}]' + - + uuid: 47dc5ba65f25444c961b7684d65bbc07 + name: 'ADSL interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.2.2.1.2,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8]' + key: zyxel.ies1248.net.adsl.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.NAME}' + value: adsl + formulaid: C + item_prototypes: + - + uuid: ca789e47cbfc4ee080a25e7003e92fad + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.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 IES1248-51 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 7c13234155f343bc90bf1584a7f0fb3f + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.5.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.atuc.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES1248-51, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 23e50c0031c1457596b1366a40606ef9 + expression: 'min(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.atuc.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL IES1248-51: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: 524bf397c9a640c48716fa20e4c45034 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.atuc.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES1248-51, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: ed1768b17f0f434392c5cbc91ddd5222 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.2.1.4.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.atuc.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit – Central), in this case ZYXEL IES1248-51, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 23bbc44b2f114afe99a8175a2b7f0ddd + expression: 'min(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.atuc.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL IES1248-51: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: 0dd3a9f10abb4a8a92f627228c9fbb52 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR attenuation' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.5.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.atur.atn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured difference in the total power transmitted by + the peer ATU and the total power received by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 2132fed26fe54a7daa017b7264c37f1c + expression: 'min(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.atur.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}' + name: 'ZYXEL IES1248-51: High the DSL line attenuation in Port {#SNMPINDEX} (>{$ZYXEL.ADSL.ATN.MAX}dB for 5m)' + priority: WARNING + description: 'The reductions in amplitude of the downstream and upstream DSL signals.' + - + uuid: 54c5b104d96945eca7cf402a2e910f90 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR output power' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.7.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.atur.outpwr[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Measured total output power transmitted by this ATU. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 9744b18d3eec4bd2954ec7ea29e341fd + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR noise margin' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.10.94.1.1.3.1.4.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.atur.snrmgn[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: dB + description: | + MIB: ADSL-LINE-MIB + Noise Margin as seen by this ATU with respect to its + received signal in tenth dB. + The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit – Remote), in this case the subscriber’s ADSL modem or router, during negotiation/provisioning message interchanges. + preprocessing: + - + type: MULTIPLIER + parameters: + - '0.1' + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 2d8f752b376f4c10bc8efbd39c8f45a9 + expression: 'min(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.atur.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}' + name: 'ZYXEL IES1248-51: Low the DSL line noise margins in Port {#SNMPINDEX} (<{$ZYXEL.ADSL.SNR.MIN}dB for 5m)' + priority: WARNING + description: 'Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed' + - + uuid: b7f622f72f98417cab3954717d311080 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.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: bff933861d744ee5a3229c2c6b1dc4c0 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.name[{#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: 25c07c59e30e42b191162fa40066c8b8 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.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 IES1248-51 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 93a58c14939d4c3491646171910fe5ad + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL IES1248-51: 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: 6df1c990c9dc49caa151dfc989d055b9 + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.16.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.adsl.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}' + graph_prototypes: + - + uuid: 7c9c5ff332394b97a311225de08b6bc6 + name: 'ZYXEL IES1248-51: ADSL port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.net.adsl.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.net.adsl.out.traffic[{#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: 4b32903336ad4c9e826cfd65a89a8960 + name: 'Ethernet interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.2.1.2.2.1.2,{#ZYXEL.IF.LINKSTATUS},.1.3.6.1.2.1.2.2.1.8]' + key: zyxel.ies1248.net.if.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}' + formulaid: A + - + macro: '{#ZYXEL.IF.LINKSTATUS}' + value: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - + macro: '{#ZYXEL.IF.NAME}' + value: enet + formulaid: C + item_prototypes: + - + uuid: 8d402a2674084fdb9d26bc5caeafc34f + name: 'ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.ies1248.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 IES1248-51 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#ZYXEL.IF.NAME}' + - + uuid: de5cf230831840cc985b63ba58d05059 + name: 'ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.10.{#SNMPINDEX}' + key: 'zyxel.ies1248.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 {#ZYXEL.IF.NAME}' + - + uuid: eeb4236d4ebe4cb396413f13d1fa669b + name: 'ZYXEL IES1248-51: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.ies1248.net.if.name[{#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 {#ZYXEL.IF.NAME}' + - + uuid: cd0bbc3c587a47e6a2a2307343a377b7 + name: 'ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.ies1248.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 IES1248-51 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#ZYXEL.IF.NAME}' + trigger_prototypes: + - + uuid: 8d90a989c82a4890a3a1a0b8eeb53462 + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: 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: 2e39a01f6315444cb3ae47836945b514 + name: 'ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.ies1248.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 {#ZYXEL.IF.NAME}' + graph_prototypes: + - + uuid: 1988adb1e96b423a8df3c55ea2f63d47 + name: 'ZYXEL IES1248-51: Ethernet port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.net.if.out.traffic[{#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: f8e1575174f9414e9ddf1459a420b2d6 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.ID}, .1.3.6.1.4.1.890.1.5.13.1.2.3.1.1,{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.13.1.2.3.1.5]' + key: zyxel.ies1248.temp.discovery + delay: 1h + description: 'An entry in tempTable.' + item_prototypes: + - + uuid: 3049c6b2d6024949bbb240c9104418e6 + name: 'ZYXEL IES1248-51: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.1.2.3.1.2.{#SNMPINDEX}' + key: 'zyxel.ies1248.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-IESCOMMON-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: f0d7f5282c784224b0cd5f76d3c2ad90 + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL IES1248-51: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: a5ec11a8936746c492fcf2e4462c7ca7 + name: 'ZYXEL IES1248-51: "Temperature {#ZYXEL.TEMP.ID}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.temp[{#SNMPINDEX}]' + - + uuid: a2df63bd07f24277acf36e7a3854bd81 + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.13.1.2.2.1.6,{#ZYXEL.VOLT.NOMINAL}, .1.3.6.1.4.1.890.1.5.13.1.2.2.1.5]' + key: zyxel.ies1248.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 747034dc53c34554ad141a70dd5905f0 + name: 'ZYXEL IES1248-51: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.13.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.ies1248.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-IESCOMMON-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: 9815420fe46c45ce8731b9688b4a543e + expression: 'last(/ZYXEL IES1248-51 SNMP/zyxel.ies1248.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL IES1248-51: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: ebbc2726558c4504aa6bd22844d0bc83 + name: 'ZYXEL IES1248-51: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL IES1248-51 SNMP' + key: 'zyxel.ies1248.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function (item, i, arr) { + item['{#ZYXEL.SLOT.ID}'] = item['{#SNMPINDEX}'].split('.')[1]; + item['{#ZYXEL.SENSOR.ID}'] = item['{#SNMPINDEX}'].split('.')[2]; + item["{#ZYXEL.VOLT.NOMINAL}"] = "+" + item["{#ZYXEL.VOLT.NOMINAL}"] / 1000 + "V"; + item["{#ZYXEL.VOLT.THRESH.LOW}"] /= 1000; + item["{#ZYXEL.VOLT.THRESH.HIGH}"] /= 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$SNMP.TIMEOUT}' + value: 5m + description: 'The time interval for SNMP agent availability trigger expression.' + - + macro: '{$ZYXEL.ADSL.ATN.MAX}' + value: '40' + description: 'Type the maximum signal attenuation' + - + macro: '{$ZYXEL.ADSL.SNR.MIN}' + value: '8' + description: 'Type the minimum signal to noise margin (0-31 dB)' + - + 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.LINKSTATUS.MATCHES}' + value: '.*' + description: 'Filter of discoverable link types.' + - + macro: '{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}' + value: '2' + description: 'Filter to exclude discovered by link types.' + valuemaps: + - + uuid: 34ea860866f24498927b73f4ce438837 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: b933d3a98256457d906de8f7da377bac + name: 'ZYXEL IES1248-51 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: e780cc91765849a0ace3d2eb2e4824a0 + name: 'ZYXEL IES1248-51 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 diff --git a/templates/net/zyxel_snmp/zyxel_mes-3528_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mes-3528_snmp/README.md new file mode 100644 index 00000000000..afba96436ac --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mes-3528_snmp/README.md @@ -0,0 +1,118 @@ + +# MES-3528 SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mes3500-series + +This template was tested on: + +- ZYXEL MES-3528, version V3.90(BHR.5)20111006 | 10/06/2011 + +## 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| +|----|-----------|----|----| +|Interface discovery |<p>An entry in fanRpmTable.</p> |SNMP |zyxel.3528.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.3528.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.3528.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 MES-3528: CPU utilization |<p>MIB: ZYXEL-MES3528-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3528.cpuusage | +|Inventory |ZYXEL MES-3528: 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.3528.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES-3528: 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.3528.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES-3528: 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.3528.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES-3528: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3528.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES-3528: 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.3528.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES-3528: ZyNOS F/W Version |<p>MIB: ZYXEL-MES3528-MIB</p> |SNMP |zyxel.3528.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL MES-3528: Hardware serial number |<p>MIB: ZYXEL-MES3528-MIB</p><p>Serial number</p> |SNMP |zyxel.3528.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-MES3528-MIB</p><p>Transmission mode</p> |SNMP |zyxel.3528.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-MES3528-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3528.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-MES3528-MIB</p><p>Physical connection type</p> |SNMP |zyxel.3528.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3528.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES-3528: 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.3528.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES-3528: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3528.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.3528.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES-3528: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3528.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.3528.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-MES3528-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.3528.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-MES3528-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3528.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-MES3528-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3528.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-MES3528-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3528.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-MES3528-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3528.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-MES3528-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3528.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-MES3528-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3528.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES-3528: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-MES3528-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3528.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Status |ZYXEL MES-3528: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES-3528: 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.3528.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MES-3528: 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.3528.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MES-3528: Template does not match hardware |<p>This template is for Zyxel MES-3528, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3528.model.last()}<>"MES-3528"` |INFO | | +|ZYXEL MES-3528: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3528.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3528.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES-3528: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3528.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3528.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES-3528: 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.3528.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3528.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3528.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MES-3528: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3528.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3528.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES-3528: 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.3528.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MES-3528: 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.3528.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MES-3528: 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 MES-3528: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3528.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | + +## 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 MES-3528 + diff --git a/templates/net/zyxel_snmp/zyxel_mes-3528_snmp/template_net_zyxel_mes-3528_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mes-3528_snmp/template_net_zyxel_mes-3528_snmp.yaml new file mode 100644 index 00000000000..06f9f2457f5 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mes-3528_snmp/template_net_zyxel_mes-3528_snmp.yaml @@ -0,0 +1,1296 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:20:38Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 249de8d8d21e4dda9c3f766ab6201378 + template: 'ZYXEL MES-3528 SNMP' + name: 'ZYXEL MES-3528 SNMP' + description: | + ZYXEL MES-3528 + + MIBs used: + RFC1213-MIB + ZYXEL-MES3528-MIB + ZYXEL-MES3528-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 MES-3528 + + 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: 836a8ccc430a4ede87906b9f9eef8471 + name: 'ZYXEL MES-3528: 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: 0e38d148fc29439488b3b23ee308b1d9 + expression: 'max(/ZYXEL MES-3528 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MES-3528: 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: 7f947ff733314b23be2cea634a1fba75 + name: 'ZYXEL MES-3528: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3528.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: c7bd32a8835842d7b469f2323cc8a308 + name: 'ZYXEL MES-3528: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.51.12.7.0 + key: zyxel.3528.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-MES3528-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 247a25a4976a45eca78853aea112cdd6 + expression: 'min(/ZYXEL MES-3528 SNMP/zyxel.3528.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MES-3528: 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: c650e217f92c4e2ca1ec94f391dfe706 + name: 'ZYXEL MES-3528: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.51.1]' + key: zyxel.3528.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-MES3528-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: 7c4cfa75447a4eeda874d916d052eb6e + expression: '(last(/ZYXEL MES-3528 SNMP/zyxel.3528.fwversion,#1)<>last(/ZYXEL MES-3528 SNMP/zyxel.3528.fwversion,#2))=1 and length(last(/ZYXEL MES-3528 SNMP/zyxel.3528.fwversion))>0' + name: 'ZYXEL MES-3528: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 679445d352f14db4b5401efa5661447d + name: 'ZYXEL MES-3528: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3528.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: 1b4f56edba2a486a9c48ccafaa10eb09 + name: 'ZYXEL MES-3528: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3528.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: 050fbf9b7c544678b79b37572984f698 + name: 'ZYXEL MES-3528: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3528.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: b98e244abe2a4bd481be50048234afe6 + expression: 'last(/ZYXEL MES-3528 SNMP/zyxel.3528.model)<>"MES-3528"' + name: 'ZYXEL MES-3528: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MES-3528, but connected to {ITEM.VALUE}' + - + uuid: 2411ebd40ee94b6285f4a6abf6127e04 + name: 'ZYXEL MES-3528: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3528.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: ea25cf79e45f40398580afd48e0bb9c8 + name: 'ZYXEL MES-3528: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.51.1.10.0 + key: zyxel.3528.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: d08bc1ffb11e4bbc98851c30595e996c + expression: '(last(/ZYXEL MES-3528 SNMP/zyxel.3528.serialnumber,#1)<>last(/ZYXEL MES-3528 SNMP/zyxel.3528.serialnumber,#2))=1 and length(last(/ZYXEL MES-3528 SNMP/zyxel.3528.serialnumber))>0' + name: 'ZYXEL MES-3528: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 351295fe155543c18930541c20ccac58 + name: 'ZYXEL MES-3528: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3528.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: d138c874f4de4f3a97a0c615d589826a + expression: 'last(/ZYXEL MES-3528 SNMP/zyxel.3528.uptime)<10m' + name: 'ZYXEL MES-3528: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: ebe2a413217c4239805f3f592f551b7c + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.51.24.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.51.24.1.1.5]' + key: zyxel.3528.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: 6dc0efb31738415a884d15020d9e30a9 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3528.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 MES-3528 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: e719364c125048e8a1fb6712e507863b + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3528.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: b2225fa57c0d468b9b0a40b220d50639 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3528.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: 9f1720f6286a4b038724563a32f97844 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3528.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: 184f7cfcfe964ea9b2b310a666c77420 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3528.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: 41f4b8bb9e1c461e8ef834348589e468 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3528.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: 681460dffc9242fba072eacd503fd190 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3528.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: c2792996d52045c9ad4c955f6330264e + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3528.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3528.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3528.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: 9a45866adc3043ad81c7778b4334b317 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.24.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3528.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MES3528-MIB + Physical connection type + valuemap: + name: 'ZYXEL MES-3528 operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5a30094c57b54d89b1d61a73616e186e + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.24.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3528.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 1ed72a56523b48e89b964f6c4afc8800 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3528.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 MES-3528 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: c23272db35f44fe6958e3b5e31a52974 + expression: 'last(/ZYXEL MES-3528 SNMP/zyxel.3528.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MES-3528 SNMP/zyxel.3528.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MES-3528 SNMP/zyxel.3528.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MES-3528 SNMP/zyxel.3528.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MES-3528: 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: 873ba4c47c1c4525b52d53e6d98e8b6e + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3528.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: 9dae4fa8d9c2494aa01478dc9605b066 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3528.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: 63f92516450d4dbcbea481231caf89f6 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3528.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: d7b17c5521a94b13b3ef6528fedcf5e0 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3528.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: 3dd1d62e9cdb402b888b7ccbe3cbb182 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3528.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3528.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3528.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3528.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: 284e41a49397492590bbcf34e1881553 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.24.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3528.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MES3528-MIB + Transmission mode + valuemap: + name: 'ZYXEL MES-3528 operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: d021344604284e9ca127851ae1cb95ff + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 936c27e914044b0eb31f874995c0571c + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: f50ceeef9c6446a685127383176fe811 + name: 'ZYXEL MES-3528: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.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: a4850c41f31a4bdfa3506c2ef3077d88 + 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.51.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.51.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.51.117.2.1.8]' + key: zyxel.3528.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: 732084ce0daf4e8085c43e16982e4aba + name: 'ZYXEL MES-3528: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-MES3528-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: f9e2991ea38343c8b2c9815bf733aef8 + expression: 'last(/ZYXEL MES-3528 SNMP/zyxel.3528.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MES-3528: 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: 341bff907cd943219bbed92773d9b005 + expression: 'last(/ZYXEL MES-3528 SNMP/zyxel.3528.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MES-3528: 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: ed8f780aa61845309aebfa522e3e9f3d + name: 'ZYXEL MES-3528: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES-3528 SNMP' + key: 'zyxel.3528.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: 0c1fabd98e134f9dab698bb0794afa93 + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.51.117.1.1.2]' + key: zyxel.3528.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: 2d09724ecd8147d298ae2a2486921ccb + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 9d9e08755fa444efb408d3db30843098 + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 90952405b1504eabb6e5436eaa179f5a + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-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: 83d084e9a0554e8eae31b0bd38aefe72 + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 5cd22f26211a428099d2a41c5c41efab + expression: '(last(/ZYXEL MES-3528 SNMP/zyxel.3528.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MES-3528 SNMP/zyxel.3528.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MES-3528 SNMP/zyxel.3528.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MES-3528: 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: ecbd3db41592408d8e9fe0d1d6078a3f + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-MES3528-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL MES-3528 SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 049cbbcea720493f9638d08f928710cb + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5ece25cae49f47169a335be40dee744a + name: 'ZYXEL MES-3528: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.51.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3528.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3528-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + 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: ac3d8b1e51074733a8bce57814528d83 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 042fc0ecdef34baab224062d4f746b96 + name: 'ZYXEL MES-3528 operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: cce63413576040fe8df5969886da993d + name: 'ZYXEL MES-3528 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: 6220d70f35404dd6834674510e0ae9ea + name: 'ZYXEL MES-3528 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 36e992f6794a492e87c3c5a9749e26b3 + name: 'ZYXEL MES-3528 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: da9692b414de47d5bac9cd3287492e0b + name: 'ZYXEL MES-3528 SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: 6a05d499aec2421e9a7e758fba82255a + name: 'ZYXEL MES-3528: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MES-3528 SNMP' + key: zyxel.3528.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_mes3500-10_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mes3500-10_snmp/README.md new file mode 100644 index 00000000000..ed757c8cd07 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mes3500-10_snmp/README.md @@ -0,0 +1,128 @@ + +# MES3500-10 SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mes3500-series + +This template was tested on: + +- ZYXEL MES3500-10, version V4.00(AABB.4)b1_20180502 | 05/02/2018 + +## 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` | +|{$MEMORY.UTIL.MAX} |<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| +|----|-----------|----|----| +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.3500_10.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.3500_10.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.3500_10.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.3500_10.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.3500_10.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> | +|Memory pool discovery |<p>-</p> |SNMP |zyxel.3500_10.memory.discovery | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL MES3500-10: CPU utilization |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3500_10.cpuusage | +|Inventory |ZYXEL MES3500-10: 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.3500_10.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-10: 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.3500_10.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-10: 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.3500_10.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-10: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3500_10.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-10: 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.3500_10.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-10: ZyNOS F/W Version |<p>MIB: ZYXEL-MES3500-10-MIB</p> |SNMP |zyxel.3500_10.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL MES3500-10: Hardware serial number |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Serial number</p> |SNMP |zyxel.3500_10.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL MES3500-10: Memory "{#ZYXEL.MEMORY.NAME}" utilization |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Utilization of memory pool in %.</p> |SNMP |zyxel.3500_10.memory[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Transmission mode</p> |SNMP |zyxel.3500_10.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_10.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Physical connection type</p> |SNMP |zyxel.3500_10.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_10.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-10: 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.3500_10.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-10: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_10.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.3500_10.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES3500-10: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_10.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.3500_10.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.3500_10.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3500_10.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_10.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_10.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3500_10.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3500_10.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-10: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3500_10.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL MES3500-10: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3500_10.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES3500-10: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES3500-10: 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.3500_10.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL MES3500-10: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-MES3500-10-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3500_10.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MES3500-10: 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.3500_10.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MES3500-10: Template does not match hardware |<p>This template is for Zyxel MES3500-10, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3500_10.model.last()}<>"MES3500-10"` |INFO | | +|ZYXEL MES3500-10: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_10.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_10.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-10: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_10.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_10.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-10: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.3500_10.memory[{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | | +|ZYXEL MES3500-10: 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.3500_10.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3500_10.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3500_10.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MES3500-10: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-10: 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.3500_10.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MES3500-10: 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.3500_10.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MES3500-10: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3500_10.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL MES3500-10: 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 MES3500-10: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3500_10.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-10: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3500_10.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 MES3500-10 + diff --git a/templates/net/zyxel_snmp/zyxel_mes3500-10_snmp/template_net_zyxel_mes3500-10_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mes3500-10_snmp/template_net_zyxel_mes3500-10_snmp.yaml new file mode 100644 index 00000000000..4101348b954 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mes3500-10_snmp/template_net_zyxel_mes3500-10_snmp.yaml @@ -0,0 +1,1461 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:20:53Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 21a95afef0e74fb19691693090403d1d + template: 'ZYXEL MES3500-10 SNMP' + name: 'ZYXEL MES3500-10 SNMP' + description: | + ZYXEL MES3500-10 + + MIBs used: + RFC1213-MIB + ZYXEL-MES3500-10-MIB + ZYXEL-MES3500-10-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 MES3500-10 + + 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: 1ec18d9656654a9e9114ba2b5ff965b1 + name: 'ZYXEL MES3500-10: 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: c33a4bffd5464934b4b9f1e7160806e1 + expression: 'max(/ZYXEL MES3500-10 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MES3500-10: 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: 84a1eb118ad2453ca5a5ccca6111516b + name: 'ZYXEL MES3500-10: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3500_10.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: dd6585221297476885e900c54a820ae7 + name: 'ZYXEL MES3500-10: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.80.12.7.0 + key: zyxel.3500_10.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-MES3500-10-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 0d31c154f8f34ed18a99558f7839bbb6 + expression: 'min(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MES3500-10: 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: 144931a31b2a4a52978679a6a029fc8e + name: 'ZYXEL MES3500-10: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.80.1]' + key: zyxel.3500_10.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-MES3500-10-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: db567c7693b6437e89ef7a5b78c889f9 + expression: '(last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.fwversion,#1)<>last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.fwversion,#2))=1 and length(last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.fwversion))>0' + name: 'ZYXEL MES3500-10: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 0005f568cd384734b9f21e846648cd5f + name: 'ZYXEL MES3500-10: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3500_10.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: 3bc8285eebad410996c4697022038345 + name: 'ZYXEL MES3500-10: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3500_10.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: b270937507f345f88421cf1825c29917 + name: 'ZYXEL MES3500-10: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3500_10.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: 27f1cb5a297c4b1eafd4056317a37f01 + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.model)<>"MES3500-10"' + name: 'ZYXEL MES3500-10: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MES3500-10, but connected to {ITEM.VALUE}' + - + uuid: 831783fc67ab49b1be0ae5132fb2d8df + name: 'ZYXEL MES3500-10: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3500_10.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: a0d17f11a5624f4e8520ee5e583ad322 + name: 'ZYXEL MES3500-10: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.80.1.10.0 + key: zyxel.3500_10.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: ee14abdf61b04a90adf6e2afcc3d73f4 + expression: '(last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.serialnumber,#1)<>last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.serialnumber,#2))=1 and length(last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.serialnumber))>0' + name: 'ZYXEL MES3500-10: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: d581384242074b07a4c5cd03a562827c + name: 'ZYXEL MES3500-10: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3500_10.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: 9899ada82b0e4507948a8a0068e5640d + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.uptime)<10m' + name: 'ZYXEL MES3500-10: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: ae66d16a5531489580d394e040950ecb + name: 'Memory pool discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.MEMORY.NAME},.1.3.6.1.4.1.890.1.5.8.80.124.1.1.2]' + key: zyxel.3500_10.memory.discovery + delay: 1h + item_prototypes: + - + uuid: 20c3127430534c049073c43a039fd29d + name: 'ZYXEL MES3500-10: Memory "{#ZYXEL.MEMORY.NAME}" utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.124.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_10.memory[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-MES3500-10-MIB + Utilization of memory pool in %. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Memory + trigger_prototypes: + - + uuid: 91609e57df4941faa9fee17051f8ac24 + expression: 'min(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.memory[{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}' + name: 'ZYXEL MES3500-10: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + - + uuid: b8cd74eeb2b94ceeba49157ccb617bb8 + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.80.24.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.80.24.1.1.5]' + key: zyxel.3500_10.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: d300b380e4bc44f89ac7a40083d424ed + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_10.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 MES3500-10 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5a4b1c62b5834ecea8a90b71cb7c5f2e + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: bba418acc01d4732891c775c68bad518 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: 7c6f62ebe1ec48e080c0edb36cf2304c + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: 846dfcfcdd974d1e9f8ec71f54f8933b + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: b1843c913e6d4f638e43da1c92807a4f + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: 31e8e47755804816882d2070ecfca130 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: e4963aa170554edebb356515c04aaafb + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3500_10.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_10.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_10.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: 66572368d798449baa945b3985156e07 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.24.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_10.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MES3500-10-MIB + Physical connection type + valuemap: + name: 'ZYXEL MES3500-10 operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 4c45f11441f4450e9f310ffb1d999a68 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.24.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_10.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: a2269b48020a46c193830f8cc1ef3595 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_10.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 MES3500-10 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: fb9bb0e2ceb643f495b93bbaf04b0cc1 + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MES3500-10: 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: 521a2ac2ff0c42c282380c45bd12706f + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: 7638a07162bd4668b086f0d07d4a6513 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: f563a76ec9ae4f62ad1601f1d91549d2 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: 8888c9da5191443facfec4c865181d18 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3500_10.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: dffcc1796e8b4a3c84f9d925b3644215 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3500_10.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_10.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_10.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_10.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: a54d1c46a1c842b88854be651c4e4caa + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.24.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3500_10.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MES3500-10-MIB + Transmission mode + valuemap: + name: 'ZYXEL MES3500-10 operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: 914bb954a2ef42939825074378d001bc + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 9b6213d6ab0248bd9bfd62a5af0846a7 + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: c209a6e8cdb748978b90584432f0a09e + name: 'ZYXEL MES3500-10: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.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: 1c6952a276fa454bb83f64a11424b7ec + 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.80.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.80.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.80.117.2.1.8]' + key: zyxel.3500_10.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: 13ddb64324c4401da5e742a93698e2f6 + name: 'ZYXEL MES3500-10: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-MES3500-10-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: bc09d6c1771d4d04afe86f49dbd98852 + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MES3500-10: 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: d05ae92b624347cc9a8fe1154995f3f9 + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MES3500-10: 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: 1b5db1876c0a4acf9d45ac26a9739778 + name: 'ZYXEL MES3500-10: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.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: fb3dea0bae0e45b0a9ca4969a7b33843 + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.80.117.1.1.2]' + key: zyxel.3500_10.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: aab3e0e09bc64de0a2e7322cfb4da68e + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 2f338f7f29464e0b88ebe7d3ec69050a + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 53582950f20e474ba4b6f46c42bc3216 + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-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: cecd4ba3b9014400a2d5d5b1b98f5463 + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 8832e1fa622449f582218cf5a7bf6b75 + expression: '(last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MES3500-10: 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: b09aad7939cb4897bff413ef956bebfe + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-MES3500-10-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL MES3500-10 SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 3878fecf990d4cb6aba13225b2bbfa59 + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 3c8dfe57cab242c2ade6139e8666e621 + name: 'ZYXEL MES3500-10: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_10.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-10-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 39ef9d256f8847fca6077524f01270c1 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.80.9.2.1.5]' + key: zyxel.3500_10.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: 60f580a757814d2a9b320b6810a8f65d + name: 'ZYXEL MES3500-10: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.9.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_10.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-MES3500-10-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: 6970c577993343dfaa97f4317acf0f08 + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL MES3500-10: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 0c7b7b235f174e048bd3da37d1ed0913 + name: 'ZYXEL MES3500-10: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.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: c78ffbc1aa2547a2a5c387ecc68cac1f + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.80.9.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.80.9.3.1.5]' + key: zyxel.3500_10.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 2f842775bf27436ab28278754594e5b9 + name: 'ZYXEL MES3500-10: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.80.9.3.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_10.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-MES3500-10-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: c86b60bc2d0842e28f0718314db4cde0 + expression: 'last(/ZYXEL MES3500-10 SNMP/zyxel.3500_10.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL MES3500-10: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 909d64e8063647de90f9fd61375c40a9 + name: 'ZYXEL MES3500-10: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: 'zyxel.3500_10.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: '{$MEMORY.UTIL.MAX}' + 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: 7ad9362759b542d98a67796dd13fc5d4 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 064efc8dae8e47ae9c14713c7b31a36c + name: 'ZYXEL MES3500-10 operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: 4ad7b4bf94494c93bdcbf36af095d5c3 + name: 'ZYXEL MES3500-10 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: e6a8dc82d4ca4b989daafd66ef1ab2ce + name: 'ZYXEL MES3500-10 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: a96f6ed4d9e34a0cb79cee8bdbd672f5 + name: 'ZYXEL MES3500-10 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: 8e9755ff129740298ab5f5497c6c17a2 + name: 'ZYXEL MES3500-10 SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: d44501ff36e1430da2080397868bb8aa + name: 'ZYXEL MES3500-10: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MES3500-10 SNMP' + key: zyxel.3500_10.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_mes3500-24_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mes3500-24_snmp/README.md new file mode 100644 index 00000000000..214e6fd8534 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mes3500-24_snmp/README.md @@ -0,0 +1,128 @@ + +# MES3500-24 SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mes3500-series + +This template was tested on: + +- ZYXEL MES3500-24, version V4.00(AABB.4)b1_20180502 | 05/02/2018 + +## 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` | +|{$MEMORY.UTIL.MAX} |<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| +|----|-----------|----|----| +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.3500_24.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.3500_24.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.3500_24.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.3500_24.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.3500_24.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> | +|Memory pool discovery |<p>-</p> |SNMP |zyxel.3500_24.memory.discovery | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL MES3500-24: CPU utilization |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3500_24.cpuusage | +|Inventory |ZYXEL MES3500-24: 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.3500_24.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24: 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.3500_24.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24: 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.3500_24.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3500_24.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24: 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.3500_24.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24: ZyNOS F/W Version |<p>MIB: ZYXEL-MES3500-24-MIB</p> |SNMP |zyxel.3500_24.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL MES3500-24: Hardware serial number |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Serial number</p> |SNMP |zyxel.3500_24.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL MES3500-24: Memory "{#ZYXEL.MEMORY.NAME}" utilization |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Utilization of memory pool in %.</p> |SNMP |zyxel.3500_24.memory[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Transmission mode</p> |SNMP |zyxel.3500_24.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_24.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Physical connection type</p> |SNMP |zyxel.3500_24.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_24.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24: 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.3500_24.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_24.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.3500_24.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES3500-24: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_24.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.3500_24.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.3500_24.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3500_24.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_24.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_24.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3500_24.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3500_24.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3500_24.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL MES3500-24: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3500_24.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES3500-24: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES3500-24: 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.3500_24.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL MES3500-24: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-MES3500-24-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3500_24.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MES3500-24: 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.3500_24.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MES3500-24: Template does not match hardware |<p>This template is for Zyxel MES3500-24, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3500_24.model.last()}<>"MES3500-24"` |INFO | | +|ZYXEL MES3500-24: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_24.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_24.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_24.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_24.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.3500_24.memory[{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | | +|ZYXEL MES3500-24: 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.3500_24.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3500_24.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3500_24.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MES3500-24: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24: 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.3500_24.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MES3500-24: 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.3500_24.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MES3500-24: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3500_24.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL MES3500-24: 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 MES3500-24: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3500_24.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3500_24.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 MES3500-24 + diff --git a/templates/net/zyxel_snmp/zyxel_mes3500-24_snmp/template_net_zyxel_mes3500-24_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mes3500-24_snmp/template_net_zyxel_mes3500-24_snmp.yaml new file mode 100644 index 00000000000..5594860b8dc --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mes3500-24_snmp/template_net_zyxel_mes3500-24_snmp.yaml @@ -0,0 +1,1461 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:21:05Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 292970ad91204722b5e5cb3233fc0026 + template: 'ZYXEL MES3500-24 SNMP' + name: 'ZYXEL MES3500-24 SNMP' + description: | + ZYXEL MES3500-24 + + MIBs used: + RFC1213-MIB + ZYXEL-MES3500-24-MIB + ZYXEL-MES3500-24-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 MES3500-24 + + 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: 7d30d099448e408bb7be13881e4149ed + name: 'ZYXEL MES3500-24: 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: 96435fde17384c6bb4f9811ad9ca184a + expression: 'max(/ZYXEL MES3500-24 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MES3500-24: 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: 7e1745e5130f4b7cb2b31814fecd6792 + name: 'ZYXEL MES3500-24: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3500_24.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: 31029f8a8cc541908b8f765b27254ecd + name: 'ZYXEL MES3500-24: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.68.12.7.0 + key: zyxel.3500_24.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-MES3500-24-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 911d1c7e921f43af8ab3c0035be57a27 + expression: 'min(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MES3500-24: 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: 53e694b360254f2896301e78cf982650 + name: 'ZYXEL MES3500-24: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.68.1]' + key: zyxel.3500_24.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-MES3500-24-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: f3daea29a34b4cf992d3c23ba8a64d2e + expression: '(last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.fwversion,#1)<>last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.fwversion,#2))=1 and length(last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.fwversion))>0' + name: 'ZYXEL MES3500-24: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: 5aa2128d8530415f855a0d33b7fb9c7f + name: 'ZYXEL MES3500-24: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3500_24.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: a8209492e29040a3896abf35019e6cdd + name: 'ZYXEL MES3500-24: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3500_24.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: 1820c7b7d903402dab0d7c8fb251f9bc + name: 'ZYXEL MES3500-24: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3500_24.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: ab363c150ecd447ea4d3a3a9c311b992 + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.model)<>"MES3500-24"' + name: 'ZYXEL MES3500-24: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MES3500-24, but connected to {ITEM.VALUE}' + - + uuid: b5fc886ab5b94f929e866d4a2e9c5648 + name: 'ZYXEL MES3500-24: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3500_24.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: b5243eb2c7664203acb4f5e6bc8da296 + name: 'ZYXEL MES3500-24: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.68.1.10.0 + key: zyxel.3500_24.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: a475d29129664eec82fc7ed85cb74df9 + expression: '(last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.serialnumber,#1)<>last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.serialnumber,#2))=1 and length(last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.serialnumber))>0' + name: 'ZYXEL MES3500-24: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 00c831c6cc9d415e91319b6bec15423d + name: 'ZYXEL MES3500-24: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3500_24.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: c389b0db83bc404e8cb84ce65db79700 + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.uptime)<10m' + name: 'ZYXEL MES3500-24: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 263079e9c77c4539b248a5b62b5f1b0f + name: 'Memory pool discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.MEMORY.NAME},.1.3.6.1.4.1.890.1.5.8.68.124.1.1.2]' + key: zyxel.3500_24.memory.discovery + delay: 1h + item_prototypes: + - + uuid: b41542121d724e1a82e72687ecce6cf2 + name: 'ZYXEL MES3500-24: Memory "{#ZYXEL.MEMORY.NAME}" utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.124.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_24.memory[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-MES3500-24-MIB + Utilization of memory pool in %. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Memory + trigger_prototypes: + - + uuid: 66802198e0764ee29cdf557378b5566b + expression: 'min(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.memory[{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}' + name: 'ZYXEL MES3500-24: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + - + uuid: 0f57f2a82f764b908fbc8f4d828203c6 + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.68.24.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.68.24.1.1.5]' + key: zyxel.3500_24.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: 8320028ac1ca4ef8b0dce4817281887a + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24.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 MES3500-24 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 7309a7b73c2848088c282096c334d541 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: 72efe5b4f1584d438739298561b3c8ab + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: f11f5928218a4b619b31b597895a13b2 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: 22a65221bc194c03909956179180808a + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: e759a09d0f504567bd2fc0dd9c0d8395 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: 16df754a1ac94c0588e1b6be5e175ed7 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: 5051b4a19bad47a8b546fbfb6d5ea85e + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3500_24.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_24.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_24.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: 25f6b400af8a40b29bf83ac988bc3cd8 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.24.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_24.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MES3500-24-MIB + Physical connection type + valuemap: + name: 'ZYXEL MES3500-24 operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 6d860666d83b4886b04bb1ff2ecb19d9 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.24.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: adf6ce16961240a9a7775de2e41df3d1 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_24.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 MES3500-24 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 5a9faa35f7d547a987e78075832cf38e + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MES3500-24: 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: 9119a0ba755e426580310376d6a70b5f + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: b13b8fecada34eed8f40ee79e2a12295 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: d15d6b6ab8af4d5d8501784bb590af08 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: 08e0d078c5224b0885ea8c03af9328e4 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3500_24.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: 40b0f81094014f6cb667c143b5345795 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3500_24.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_24.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_24.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_24.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: a814c27268e648f18ac9c82d5a5f78cb + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.24.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3500_24.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MES3500-24-MIB + Transmission mode + valuemap: + name: 'ZYXEL MES3500-24 operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: 2b07fe7c9bd14177b8cc8c05e3975ac9 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: b4c385f72ca243c8a7681c8220229d8d + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: ae845a9a10204c40a1a044002f5b1a72 + name: 'ZYXEL MES3500-24: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.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: 302fdabe174e425d9f32d36694453331 + 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.68.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.68.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.68.117.2.1.8]' + key: zyxel.3500_24.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: 096d50d830f144079fe0231bae2528e5 + name: 'ZYXEL MES3500-24: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-MES3500-24-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: ef830e34f83347bebba87a72208d805b + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MES3500-24: 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: 229f44666e6043a1a8e34437ad24e3ae + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MES3500-24: 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: 14b916383368427cad794b92d5d706e9 + name: 'ZYXEL MES3500-24: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.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: 998d08685c72456b959b47adabf48f3f + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.68.117.1.1.2]' + key: zyxel.3500_24.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: f17e1f42abda43c7974afb415fa1544d + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: b8b4d20515d748ac9bc77f8223294861 + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 380d4a1f3aa041fea4108c08d7108344 + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-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: 24dc72b317284f568e962b461bbb33de + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: f84b378d79b74174842cc49af29c2a0c + expression: '(last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MES3500-24: 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: 0b8041b750ed4734b70cce707c4782ad + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-MES3500-24-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL MES3500-24 SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: cf254d7b5d0d4525b8f871863a1ced2d + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: cda45fc5cf1d44779e1a5eda3f120df2 + name: 'ZYXEL MES3500-24: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-MES3500-24-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 034f5965d39940d29ac58641f3b01183 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.68.9.2.1.5]' + key: zyxel.3500_24.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: 0ab57df406f64806a6ad93660258f08c + name: 'ZYXEL MES3500-24: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.9.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-MES3500-24-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: 9963d3848c774563881689da1bcddefc + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL MES3500-24: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 5e06e88aca5b492aa9c623e4ef727b5d + name: 'ZYXEL MES3500-24: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.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: 2197368f67d548b7a7c6b0fe5edb5a2d + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.68.9.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.68.9.3.1.5]' + key: zyxel.3500_24.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: fc5ca0139747408aa65d960577bd4dbc + name: 'ZYXEL MES3500-24: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.68.9.3.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-MES3500-24-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: 2eef8cabb2e141dd8b6d1868ebc79db4 + expression: 'last(/ZYXEL MES3500-24 SNMP/zyxel.3500_24.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL MES3500-24: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 40f7ab2435d345279b8a7a52bad06dcd + name: 'ZYXEL MES3500-24: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: 'zyxel.3500_24.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: '{$MEMORY.UTIL.MAX}' + 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: dbb03955eb7043dda4dea1a9d7e8e043 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: c0f699295af740e2aabbb06c6718e8f8 + name: 'ZYXEL MES3500-24 operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: f94441e46ffe4908a8a57089cbdaeaa7 + name: 'ZYXEL MES3500-24 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: df2213aff9984b3f837f99944f3c9bc0 + name: 'ZYXEL MES3500-24 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 679674c6b9364083a1eb1c9c9be136a2 + name: 'ZYXEL MES3500-24 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: f12de6ba6b4c4556b276f9d5d509ffcf + name: 'ZYXEL MES3500-24 SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: ae7d968e6ec942efb4e0b20fd75a5eac + name: 'ZYXEL MES3500-24: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24 SNMP' + key: zyxel.3500_24.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_mgs-3712_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mgs-3712_snmp/README.md new file mode 100644 index 00000000000..0f3c1822235 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs-3712_snmp/README.md @@ -0,0 +1,127 @@ + +# MGS-3712 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-3712, version V3.90(BBA.5)_2018.7.13 + +## 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.3712.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.3712.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.3712.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.3712.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.3712.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.3712.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-3712: 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.3712.cpuusage | +|Fans |ZYXEL MGS-3712: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.3712.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL MGS-3712: 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.3712.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712: 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.3712.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712: 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.3712.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3712.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712: 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.3712.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS-3712: ZyNOS F/W Version |<p>MIB: ZYXEL-MGS3712F-MIB</p> |SNMP |zyxel.3712.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-3712: Hardware serial number |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Serial number</p> |SNMP |zyxel.3712.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transmission mode</p> |SNMP |zyxel.3712.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3712.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Physical connection type</p> |SNMP |zyxel.3712.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3712.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS-3712: 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.3712.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS-3712: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3712.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.3712.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MGS-3712: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3712.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.3712.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.3712.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3712.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3712.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3712.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3712.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3712.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3712.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS-3712: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3712.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL MGS-3712: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3712.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MGS-3712: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MGS-3712: 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.3712.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL MGS-3712: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-MGS3712F-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3712.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MGS-3712: 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.3712.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MGS-3712: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.3712.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL MGS-3712: Template does not match hardware |<p>This template is for Zyxel MGS-3712, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3712.model.last()}<>"MGS-3712"` |INFO | | +|ZYXEL MGS-3712: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3712.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3712.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3712.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3712.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712: 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.3712.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3712.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3712.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MGS-3712: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3712.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3712.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712: 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.3712.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MGS-3712: 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.3712.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MGS-3712: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3712.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL MGS-3712: 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-3712: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3712.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS-3712: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3712.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-3712 + diff --git a/templates/net/zyxel_snmp/zyxel_mgs-3712_snmp/template_net_zyxel_mgs-3712_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mgs-3712_snmp/template_net_zyxel_mgs-3712_snmp.yaml new file mode 100644 index 00000000000..6df726bf8af --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs-3712_snmp/template_net_zyxel_mgs-3712_snmp.yaml @@ -0,0 +1,1469 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:22:00Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 8ea7299983f24d0a913606e334f0e526 + template: 'ZYXEL MGS-3712 SNMP' + name: 'ZYXEL MGS-3712 SNMP' + description: | + ZYXEL MGS-3712 + + 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-3712 + + 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: 8777bb95a4b64fd293e96b25febf3915 + name: 'ZYXEL MGS-3712: 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: 60787fd1204b42bfb515b1b204c1d14f + expression: 'max(/ZYXEL MGS-3712 SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MGS-3712: 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: b93b020818034096a973d8e171a099b2 + name: 'ZYXEL MGS-3712: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3712.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: 4d13bad4f29f41b1890fa9e2709dd461 + name: 'ZYXEL MGS-3712: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.47.11.7.0 + key: zyxel.3712.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: b1ca06637dbe4c9ca84e2811e780d5d5 + expression: 'min(/ZYXEL MGS-3712 SNMP/zyxel.3712.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MGS-3712: 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: efc31527c7af48729c1d5a229b115c55 + name: 'ZYXEL MGS-3712: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.47.1]' + key: zyxel.3712.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: de7d7e7d976c4b9894259c4e7fb5a4dd + expression: '(last(/ZYXEL MGS-3712 SNMP/zyxel.3712.fwversion,#1)<>last(/ZYXEL MGS-3712 SNMP/zyxel.3712.fwversion,#2))=1 and length(last(/ZYXEL MGS-3712 SNMP/zyxel.3712.fwversion))>0' + name: 'ZYXEL MGS-3712: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: a52f578cc57448f0a43641c75be89ce9 + name: 'ZYXEL MGS-3712: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3712.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: 26236c6667c9411393fb45af2324e318 + name: 'ZYXEL MGS-3712: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3712.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: fc5d5cfb35a14ed597623db67433dcac + name: 'ZYXEL MGS-3712: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3712.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: e0b4c4f09f6f496cb035af320fcf96a0 + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.model)<>"MGS-3712"' + name: 'ZYXEL MGS-3712: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MGS-3712, but connected to {ITEM.VALUE}' + - + uuid: 409fb8c9b315474db7602fba18702a1d + name: 'ZYXEL MGS-3712: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3712.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: 91afb18daedc403a866302ef943beef7 + name: 'ZYXEL MGS-3712: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.47.1.10.0 + key: zyxel.3712.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: 4a9495748e09477ca5f12443fff533c9 + expression: '(last(/ZYXEL MGS-3712 SNMP/zyxel.3712.serialnumber,#1)<>last(/ZYXEL MGS-3712 SNMP/zyxel.3712.serialnumber,#2))=1 and length(last(/ZYXEL MGS-3712 SNMP/zyxel.3712.serialnumber))>0' + name: 'ZYXEL MGS-3712: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 692e0384fcf44ec1ac6df0d8925358e3 + name: 'ZYXEL MGS-3712: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3712.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: eefe29ad784d40d3980a4cb1118dd816 + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.uptime)<10m' + name: 'ZYXEL MGS-3712: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: 8402d05803ff481497a5e6f95874e983 + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.47.8.1.1.5]' + key: zyxel.3712.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 568dd120eb8b409dbc8c19d5869c6978 + name: 'ZYXEL MGS-3712: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.8.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3712.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: edc0057dbdb64fd584cc968c5d8bb41f + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL MGS-3712: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 06d4f886b788464fad9f0da91d78b0e4 + name: 'ZYXEL MGS-3712: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.fan[{#SNMPINDEX}]' + - + uuid: 1568af5125ee4005abc1860e0610f7c4 + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.47.22.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.47.22.1.1.5]' + key: zyxel.3712.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: 9a97d9e95dba4ba88e08ccbd48acce07 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3712.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-3712 port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: f6e2db1bdfd0451a9ca896ade8df790f + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3712.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: ae4776dea7aa44e7a403aa8bab391a30 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3712.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: 5c48f1894ae449528d0ef9844c22dee2 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3712.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: 83b692f16c7f40899fb802686dccffb5 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3712.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: a9880181229d44e0a60f173820eb5d67 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3712.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: 2555e749de034c2db2c7a800a8785695 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3712.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: ca42c0b40bf74f03b544b9d0dd678223 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3712.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3712.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3712.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: 4a4c54e3736246e1a534afa93303b481 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.22.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3712.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MGS3712F-MIB + Physical connection type + valuemap: + name: 'ZYXEL MGS-3712 operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 2b4c245972454f24b703d4cb29581dfc + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.22.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3712.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: e12e5d4b36db44c38968652a048f1a26 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3712.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-3712 port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: e21751b08fe740f2ad9ad6bde6b879c4 + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MGS-3712 SNMP/zyxel.3712.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS-3712 SNMP/zyxel.3712.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MGS-3712: 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: a28bbd54c2e54e90b7280f84e964c681 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3712.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: 1f6f7e4f23ee4208a5288dd6eaf0aed8 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3712.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: 2e5d50c95f4942e08f54feb989058cd0 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3712.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: 8580f10654ea4020ae08d2917fdb8b17 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3712.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: d8b945fc71534a00ba35867d62bc8703 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3712.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3712.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3712.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3712.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: b8c053a89b32400595d4a0673cfa1e81 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.22.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3712.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-MGS3712F-MIB + Transmission mode + valuemap: + name: 'ZYXEL MGS-3712 operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: b2bed2a4ab7b42119009f4aabd979656 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: 489edc6b24844d8cb5c718a8a4d45a3c + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: 1466f28d9f014bb39396cda181630fc4 + name: 'ZYXEL MGS-3712: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.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: 65477e8c3f8948aea5f6101b08e307cc + 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.47.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.47.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.47.117.2.1.8]' + key: zyxel.3712.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: cd2434237f264fd0aa57a9816eb9cdb1 + name: 'ZYXEL MGS-3712: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3712.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: e9d242819d7345a0b44cc14a392f05fa + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MGS-3712: 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: 177c2fe88ec24e3d9a5ea9f6b3f346d9 + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MGS-3712: 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: 2d432abf28354f4193d93b21bc5f1507 + name: 'ZYXEL MGS-3712: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.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: e780a6c3b3db45d9b539bba14ca89ef9 + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.47.117.1.1.2]' + key: zyxel.3712.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: 434d614d231d41c49810342cb3d09797 + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3712.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: 184be2048cf64e7abf703cb16e1e128b + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3712.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: 80d2606b4d644993b13f7efd001ed096 + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3712.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: 2d974479665844ae86511d471e190d51 + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3712.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: aaa3492aa0c64e8a973d1a755fd24f50 + expression: '(last(/ZYXEL MGS-3712 SNMP/zyxel.3712.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS-3712 SNMP/zyxel.3712.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MGS-3712 SNMP/zyxel.3712.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MGS-3712: 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: 46e11863a74f481aaea204148fe8b5b7 + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3712.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-MGS3712F-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL MGS-3712 SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: e2e07835d3ef431ea6c5559151dee258 + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3712.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: 18f798a7ca0d4ea4a24a58c3bcdb9edd + name: 'ZYXEL MGS-3712: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3712.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: 6a39668b647f49f19591451cc977cc92 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.47.8.2.1.5]' + key: zyxel.3712.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: e1703024fdee4c6c812e9c0204510705 + name: 'ZYXEL MGS-3712: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.8.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3712.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: b5ba7daf05204f2b987b879a3d44fac2 + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL MGS-3712: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 952122594bf14cad9ce00e202209388a + name: 'ZYXEL MGS-3712: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.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: fdaa0461127c489fac83161e9d388e8f + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.47.8.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.47.8.3.1.5]' + key: zyxel.3712.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 5ef499ecbada4691a5598d99c2a362eb + name: 'ZYXEL MGS-3712: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.47.8.3.1.2.{#SNMPINDEX}' + key: 'zyxel.3712.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: 02a7a32af7a440b6a7199b425305fdde + expression: 'last(/ZYXEL MGS-3712 SNMP/zyxel.3712.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL MGS-3712: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 67b6c6c6085e45cbbb58fb93c1b6eb2f + name: 'ZYXEL MGS-3712: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: 'zyxel.3712.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: 6e923e1e3ed34b8f87357b5fd7407c54 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 7c5d7efbd17f48619a3f4211a269b38d + name: 'ZYXEL MGS-3712 operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + uuid: da42da17340044ea83521107ac4dee04 + name: 'ZYXEL MGS-3712 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: 7e107b2d754945dbaf833955fcae7f48 + name: 'ZYXEL MGS-3712 port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: ed71a5038bf34198a3a56b0020ad728e + name: 'ZYXEL MGS-3712 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: b89570749c5d4dcb9378b7951803b8e4 + name: 'ZYXEL MGS-3712 SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: 21c2da2f53e44f6a8b3fc722e415b4c8 + name: 'ZYXEL MGS-3712: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MGS-3712 SNMP' + key: zyxel.3712.cpuusage 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 diff --git a/templates/net/zyxel_snmp/zyxel_mgs3500-24s_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mgs3500-24s_snmp/README.md new file mode 100644 index 00000000000..867bf71c29c --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs3500-24s_snmp/README.md @@ -0,0 +1,130 @@ + +# MES3500-24S SNMP + +## Overview + +For Zabbix version: 6.0 and higher +hhttps://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mes3500-series + +This template was tested on: + +- ZYXEL MES3500-24S, version V4.10(ABBR.1)C0_20200309 | 03/09/2020 + +## 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` | +|{$MEMORY.UTIL.MAX} |<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><p>3 - XFP</p><p>4 - CX4</p> |`1|2|3|4` | +|{$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.3500_24s.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p> |SNMP |zyxel.3500_24s.temp.discovery | +|Voltage discovery |<p>An entry in voltageTable.</p> |SNMP |zyxel.3500_24s.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.3500_24s.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.3500_24s.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.3500_24s.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 MES3500-24S: CPU utilization |<p>MIB: ZYXEL-ES-COMMON</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3500_24s.cpuusage | +|Fans |ZYXEL MES3500-24S: {#ZYXEL.FAN.DESCRIPTION} |<p>MIB: ZYXEL-HW-MONITOR-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.3500_24s.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL MES3500-24S: 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.3500_24s.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24S: 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.3500_24s.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24S: 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.3500_24s.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24S: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3500_24s.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24S: 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.3500_24s.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24S: ZyNOS F/W Version |<p>MIB: ZYXEL-ES-COMMON</p> |SNMP |zyxel.3500_24s.fwversion<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MES3500-24S: Hardware serial number |<p>MIB: ZYXEL-ES-COMMON</p><p>Serial number</p> |SNMP |zyxel.3500_24s.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL MES3500-24S: Memory utilization |<p>MIB: ZYXEL-ES-COMMON</p><p>Show device memory usage in %.</p> |SNMP |zyxel.3500_24s.memusage | +|Network_interfaces |ZYXEL MES3500-24S: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-PORT-MIB</p><p>Select The speed and the duplex mode of the Ethernet connection on this port. Selecting Auto </p><p>(auto-negotiation) allows one port to negotiate with a peer port automatically to obtain the </p><p>connection speed and duplex mode that both ends support. When auto-negotiation is turned on, </p><p>a port on the Switch negotiates with the peer automatically to determine the connection speed </p><p>and duplex mode. If the peer port does not support auto-negotiation or turns off this feature, </p><p>the Switch determines the connection speed by detecting the signal on the cable and using half </p><p>duplex mode. Thus requiring you to make sure that the settings of the peer port are the same in </p><p>order to connect.</p> |SNMP |zyxel.3500_24s.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-PORT-MIB</p><p>Descriptive name that identifies this port.</p> |SNMP |zyxel.3500_24s.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-PORT-MIB</p><p>The entry shows the linkUp cable type (copper, fiber, xfp or cx4) for the combo ports.</p> |SNMP |zyxel.3500_24s.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3500_24s.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MES3500-24S: 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.3500_24s.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_24s.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.3500_24s.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES3500-24S: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3500_24s.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.3500_24s.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module type.</p> |SNMP |zyxel.3500_24s.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3500_24s.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_24s.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3500_24s.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3500_24s.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3500_24s.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MES3500-24S: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3500_24s.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL MES3500-24S: Nominal "{#ZYXEL.DESCRIPTION}" |<p>MIB: ZYXEL-HW-MONITOR-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3500_24s.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES3500-24S: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MES3500-24S: 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.3500_24s.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL MES3500-24S: Temperature "{#ZYXEL.TEMPDESCRIPTION}" |<p>MIB: ZYXEL-HW-MONITOR-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3500_24s.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MES3500-24S: 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.3500_24s.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MES3500-24S: {#ZYXEL.FAN.DESCRIPTION} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.3500_24s.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL MES3500-24S: Template does not match hardware |<p>This template is for Zyxel MES3500-24S series, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.3500_24s.model.last()}<>"MES3500-24S"` |INFO | | +|ZYXEL MES3500-24S: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_24s.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_24s.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24S: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_24s.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3500_24s.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24S: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.3500_24s.memusage.min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | | +|ZYXEL MES3500-24S: 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.3500_24s.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3500_24s.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3500_24s.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MES3500-24S: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24S: 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.3500_24s.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MES3500-24S: 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.3500_24s.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MES3500-24S: Voltage {#ZYXEL.DESCRIPTION} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3500_24s.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL MES3500-24S: 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 MES3500-24S: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3500_24s.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL MES3500-24S: Temperature {#ZYXEL.TEMPDESCRIPTION} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3500_24s.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 MGS3520-28 + diff --git a/templates/net/zyxel_snmp/zyxel_mgs3500-24s_snmp/template_net_zyxel_mgs3500-24s_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mgs3500-24s_snmp/template_net_zyxel_mgs3500-24s_snmp.yaml new file mode 100644 index 00000000000..7ded1ad5c07 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs3500-24s_snmp/template_net_zyxel_mgs3500-24s_snmp.yaml @@ -0,0 +1,1492 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:21:48Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 89eef2fe23964f44bf9aec6d00e39efd + template: 'ZYXEL MES3500-24S SNMP' + name: 'ZYXEL MES3500-24S SNMP' + description: | + ZYXEL MES3500-24S + + MIBs used: + RFC1213-MIB + ZYXEL-HW-MONITOR-MIB + ZYXEL-PORT-MIB + ZYXEL-ES-COMMON + ZYXEL-TRANSCEIVER-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 MGS3520-28 + + 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: 4b5994ccefe5492b8ee81c88f4871efe + name: 'ZYXEL MES3500-24S: 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: d80bc493096b4da4857651e7e28829e7 + expression: 'max(/ZYXEL MES3500-24S SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MES3500-24S: 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: aa2cb34bb8a24ea883d13039175e7955 + name: 'ZYXEL MES3500-24S: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3500_24s.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: 6fccaef6a6f84d97b825d46b62955b76 + name: 'ZYXEL MES3500-24S: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.2.4.0 + key: zyxel.3500_24s.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-ES-COMMON + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 7bf51ce2b7a64f3f8151edc224c601e8 + expression: 'min(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MES3500-24S: 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: 37410c60fd224987920640313a0b229b + name: 'ZYXEL MES3500-24S: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.1.6.0 + key: zyxel.3500_24s.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-ES-COMMON' + inventory_link: SOFTWARE_FULL + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 182e8b14935445268c096a3e4fdb5795 + expression: '(last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.fwversion,#1)<>last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.fwversion,#2))=1 and length(last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.fwversion))>0' + name: 'ZYXEL MES3500-24S: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: a2ee7e4d0dbc463aa9fc997f14740d0b + name: 'ZYXEL MES3500-24S: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3500_24s.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: 082f2005c90d4edebdddedd1ee946793 + name: 'ZYXEL MES3500-24S: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3500_24s.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: 1e8654e4f9ba487f971f5dc4c1fd5c9d + name: 'ZYXEL MES3500-24S: Memory utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.2.5.0 + key: zyxel.3500_24s.memusage + history: 7d + description: | + MIB: ZYXEL-ES-COMMON + Show device memory usage in %. + tags: + - + tag: Application + value: Memory + triggers: + - + uuid: d3a4dca93ad946589b1b83e0fe647dde + expression: 'min(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.memusage,5m)>{$MEMORY.UTIL.MAX}' + name: 'ZYXEL MES3500-24S: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + - + uuid: a7d255bd093744ef853335e1b961bef7 + name: 'ZYXEL MES3500-24S: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3500_24s.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: 96c011542d5b4473934e0de9e442479c + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.model)<>"MES3500-24S"' + name: 'ZYXEL MES3500-24S: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MES3500-24S series, but connected to {ITEM.VALUE}' + - + uuid: 9225792a06444aabb120c390c68c2a06 + name: 'ZYXEL MES3500-24S: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3500_24s.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: a9e8c7ae033b4f7e95aadd663f3656d9 + name: 'ZYXEL MES3500-24S: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.1.12.0 + key: zyxel.3500_24s.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES-COMMON + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 90268ffbf33049d6adc6ed96badd67ec + expression: '(last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.serialnumber,#1)<>last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.serialnumber,#2))=1 and length(last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.serialnumber))>0' + name: 'ZYXEL MES3500-24S: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: b3f7ffa22b174e2c8ed8bf0deeb62b42 + name: 'ZYXEL MES3500-24S: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3500_24s.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: 6c8fce36fd9c49569be0ba2bfb70f478 + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.uptime)<10m' + name: 'ZYXEL MES3500-24S: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: a76d8952c6424abe926a5b9453bbc75d + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.15.3.26.1.1.1.6,{#ZYXEL.FAN.DESCRIPTION},.1.3.6.1.4.1.890.1.15.3.26.1.1.1.2]' + key: zyxel.3500_24s.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 4f8bcd1fc9b54f3e94009c5a098ca4e0 + name: 'ZYXEL MES3500-24S: {#ZYXEL.FAN.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24s.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-HW-MONITOR-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: 19846f8e671945c68b065ac53ebb2d38 + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL MES3500-24S: {#ZYXEL.FAN.DESCRIPTION} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: ed81cba771d34db3b50262ff0bbc73b4 + name: 'ZYXEL MES3500-24S: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.fan[{#SNMPINDEX}]' + - + uuid: 75336fa715834ade8a5434520543bf1c + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.15.3.61.1.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.15.3.61.2.1.1.2]' + key: zyxel.3500_24s.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: 40967a08563e4f62b56d0f3983a5b76a + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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 MES3500-24S port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: d4f846a781f543539e05bc139e01a462 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 27ac6ebffd2e47ecb9ebbece3ef3bb68 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: e406bba0c87a4607bc36d4be74ac5abb + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 18a759f3be5247b282fe7f685ae4d18b + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 6b87de872fa84ec8bc9c1058716617ff + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 6e04ed7c0b154deeb1a32150aff18b26 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 197cf5fd63d541439b282e154bcd4ef1 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3500_24s.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_24s.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_24s.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: f357ac3f816d4232a2ba6ff571d95773 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.61.2.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24s.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-PORT-MIB + The entry shows the linkUp cable type (copper, fiber, xfp or cx4) for the combo ports. + valuemap: + name: 'ZYXEL MES3500-24S operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5a6debce6aa6420e8c76f50c24fb541e + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.61.1.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24s.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-PORT-MIB + Descriptive name that identifies this port. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 419b897845244642a84a1bd224ec72a6 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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 MES3500-24S port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 60f1b7c76a6b410db3f3a2ae40c3b74c + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MES3500-24S: 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: 2ca954bd5d90447288da9ac4d75ec976 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: b229348293cd47b39e826f5be1285928 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 445163f587b24339adc9155bff798f7d + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 8f080d3c0bd045e59d22585878bccbff + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3500_24s.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: 43b466a87757484dae36abe07e946bff + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3500_24s.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3500_24s.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3500_24s.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3500_24s.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: ff93002a2b5341a8a287fdc78c7e9c6d + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.61.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3500_24s.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-PORT-MIB + Select The speed and the duplex mode of the Ethernet connection on this port. Selecting Auto + (auto-negotiation) allows one port to negotiate with a peer port automatically to obtain the + connection speed and duplex mode that both ends support. When auto-negotiation is turned on, + a port on the Switch negotiates with the peer automatically to determine the connection speed + and duplex mode. If the peer port does not support auto-negotiation or turns off this feature, + the Switch determines the connection speed by detecting the signal on the cable and using half + duplex mode. Thus requiring you to make sure that the settings of the peer port are the same in + order to connect. + valuemap: + name: 'ZYXEL MES3500-24S operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: 86f5f836fba94de9aed70cf58c6cf1d4 + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: f9f04b1fffeb49d3995957c026a5de5b + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: a9d922236e12416a85f07c7caff3e3cb + name: 'ZYXEL MES3500-24S: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.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: f90783a6170c4802a1833ae25008b618 + name: 'SFP with DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.WARN.MAX},.1.3.6.1.4.1.890.1.15.3.84.1.2.1.4,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.15.3.84.1.2.1.5,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.15.3.84.1.2.1.7]' + key: zyxel.3500_24s.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: 69d7fcbc7e3242c99737ef98efbac0a7 + name: 'ZYXEL MES3500-24S: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.2.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-TRANSCEIVER-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: 2a75ca5b7ef444d0a96dcf2d7c824f03 + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MES3500-24S: 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: f2989317c3f847da84979dde3b4f4db4 + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MES3500-24S: 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: e5e5d83e9f9e429fb51ff79245335065 + name: 'ZYXEL MES3500-24S: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.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: 98536d7e95c145e6ba5d3a5531c570ce + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.15.3.84.1.1.1.1]' + key: zyxel.3500_24s.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: 7232bba1aed34b5aaeb2d4ce3ad8250f + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 745310ab6da449aa8150956c076a2223 + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 4565c91a0641405ba4e3d853b5db86e5 + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-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: b0fa1b76a33041bcab473b17b7b74eef + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: f6533a3fe07c4f0290e7758ac4183a1f + expression: '(last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MES3500-24S: 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: 80aa0e87f7b24dfe9b525be735aa1ec3 + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module type. + valuemap: + name: 'ZYXEL MES3500-24S SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5175fe53ba2d4bb6a3ad1aa673b67777 + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 17c99b32a9674426807fdf5d469b324a + name: 'ZYXEL MES3500-24S: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3500_24s.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 774dd069aeb948569d21396dd8dceea1 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.15.3.26.1.2.1.6,{#ZYXEL.TEMPDESCRIPTION},.1.3.6.1.4.1.890.1.15.3.26.1.2.1.2]' + key: zyxel.3500_24s.temp.discovery + delay: 1h + description: 'An entry in tempTable.' + item_prototypes: + - + uuid: 64975a8449d7457c84715f27eb5018fc + name: 'ZYXEL MES3500-24S: Temperature "{#ZYXEL.TEMPDESCRIPTION}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.2.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24s.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-HW-MONITOR-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: c6db10ac3bec446e9152545119b555bc + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL MES3500-24S: Temperature {#ZYXEL.TEMPDESCRIPTION} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: c238ae64f1ca4e948b36cb423669c864 + name: 'ZYXEL MES3500-24S: Temperature "{#ZYXEL.TEMPDESCRIPTION}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.temp[{#SNMPINDEX}]' + - + uuid: e8a886916c37490f9ba6b29c57d7331e + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.15.3.26.1.3.1.7,{#ZYXEL.DESCRIPTION},.1.3.6.1.4.1.890.1.15.3.26.1.3.1.2]' + key: zyxel.3500_24s.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 6134a567c193489aa1ca32d03c0c2c42 + name: 'ZYXEL MES3500-24S: Nominal "{#ZYXEL.DESCRIPTION}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.3.1.3.{#SNMPINDEX}' + key: 'zyxel.3500_24s.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-HW-MONITOR-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: 52ac34f156aa434dace3447bb5745b34 + expression: 'last(/ZYXEL MES3500-24S SNMP/zyxel.3500_24s.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL MES3500-24S: Voltage {#ZYXEL.DESCRIPTION} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: a94a590eed624cac8ece4ff2956419d8 + name: 'ZYXEL MES3500-24S: Nominal "{#ZYXEL.DESCRIPTION}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: 'zyxel.3500_24s.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function(item, i, arr) { + item["{#ZYXEL.VOLT.THRESH.LOW}"] /= 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$CPU.UTIL.CRIT}' + value: '90' + - + macro: '{$MEMORY.UTIL.MAX}' + 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|3|4 + description: 'Filter of discoverable link types. 0 - Down link 1 - Cooper link 2 - Fiber link 3 - XFP 4 - CX4' + - + 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: 9e4265c1129d482fa12a09e657a7cda3 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 615d399b1a6045359dfc262b364b4c55 + name: 'ZYXEL MES3500-24S operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + value: '3' + newvalue: XFP + - + value: '4' + newvalue: CX4 + - + uuid: 4217cd5f5c1f4b438cd4701c023da375 + name: 'ZYXEL MES3500-24S 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' + - + value: '6' + newvalue: '10G full' + - + value: '7' + newvalue: '12G full' + - + value: '8' + newvalue: '40G full' + - + value: '9' + newvalue: '1G auto' + - + uuid: 7e705fdb791341b8a1c86ee7d85fbfea + name: 'ZYXEL MES3500-24S port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 08e22f2eac034c9db9bba73040cea453 + name: 'ZYXEL MES3500-24S 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: 161770392cdb4dcd92c3596b5ad6d06a + name: 'ZYXEL MES3500-24S SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: 055310b8a5c94d94aeeaf75ff5d2de55 + name: 'ZYXEL MES3500-24S: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MES3500-24S SNMP' + key: zyxel.3500_24s.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_mgs3520-28x_snmp/README.md b/templates/net/zyxel_snmp/zyxel_mgs3520-28x_snmp/README.md new file mode 100644 index 00000000000..1523f47bc1f --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs3520-28x_snmp/README.md @@ -0,0 +1,131 @@ + +# MGS3520-28x SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mgs3520-series + +This template was tested on: + +- ZYXEL MGS3520-28, version V4.10(AATN.1)C0_20190522 | 05/22/2019 +- ZYXEL MGS3520-28F, version V4.10(AATM.1)C0_20190626 | 06/27/2019 + +## 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` | +|{$MEMORY.UTIL.MAX} |<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><p>3 - XFP</p><p>4 - CX4</p> |`1|2|3|4` | +|{$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.3520_28.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p> |SNMP |zyxel.3520_28.temp.discovery | +|Voltage discovery |<p>An entry in voltageTable.</p> |SNMP |zyxel.3520_28.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.3520_28.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.3520_28.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.3520_28.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 MGS3520-28x: CPU utilization |<p>MIB: ZYXEL-ES-COMMON</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.3520_28.cpuusage | +|Fans |ZYXEL MGS3520-28x: {#ZYXEL.FAN.DESCRIPTION} |<p>MIB: ZYXEL-HW-MONITOR-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.3520_28.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL MGS3520-28x: 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.3520_28.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS3520-28x: 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.3520_28.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS3520-28x: 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.3520_28.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS3520-28x: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.3520_28.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS3520-28x: 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.3520_28.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS3520-28x: ZyNOS F/W Version |<p>MIB: ZYXEL-ES-COMMON</p> |SNMP |zyxel.3520_28.fwversion<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL MGS3520-28x: Hardware serial number |<p>MIB: ZYXEL-ES-COMMON</p><p>Serial number</p> |SNMP |zyxel.3520_28.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL MGS3520-28x: Memory utilization |<p>MIB: ZYXEL-ES-COMMON</p><p>Show device memory usage in %.</p> |SNMP |zyxel.3520_28.memusage | +|Network_interfaces |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-PORT-MIB</p><p>Select The speed and the duplex mode of the Ethernet connection on this port. Selecting Auto </p><p>(auto-negotiation) allows one port to negotiate with a peer port automatically to obtain the </p><p>connection speed and duplex mode that both ends support. When auto-negotiation is turned on, </p><p>a port on the Switch negotiates with the peer automatically to determine the connection speed </p><p>and duplex mode. If the peer port does not support auto-negotiation or turns off this feature, </p><p>the Switch determines the connection speed by detecting the signal on the cable and using half </p><p>duplex mode. Thus requiring you to make sure that the settings of the peer port are the same in </p><p>order to connect.</p> |SNMP |zyxel.3520_28.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-PORT-MIB</p><p>Descriptive name that identifies this port.</p> |SNMP |zyxel.3520_28.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-PORT-MIB</p><p>The entry shows the linkUp cable type (copper, fiber, xfp or cx4) for the combo ports.</p> |SNMP |zyxel.3520_28.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.3520_28.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL MGS3520-28x: 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.3520_28.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3520_28.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.3520_28.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.3520_28.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.3520_28.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module type.</p> |SNMP |zyxel.3520_28.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.3520_28.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.3520_28.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.3520_28.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.3520_28.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.3520_28.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL MGS3520-28x: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-TRANSCEIVER-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL MGS3520-28x: Nominal "{#ZYXEL.DESCRIPTION}" |<p>MIB: ZYXEL-HW-MONITOR-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.3520_28.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MGS3520-28x: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL MGS3520-28x: 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.3520_28.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL MGS3520-28x: Temperature "{#ZYXEL.TEMPDESCRIPTION}" |<p>MIB: ZYXEL-HW-MONITOR-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.3520_28.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL MGS3520-28x: 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.3520_28.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL MGS3520-28x: {#ZYXEL.FAN.DESCRIPTION} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.3520_28.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL MGS3520-28x: Template does not match hardware |<p>This template is for Zyxel MGS3520-28x series, but connected to {ITEM.VALUE}</p> |`not({TEMPLATE_NAME:zyxel.3520_28.model.last()}="MGS3520-28" or {TEMPLATE_NAME:zyxel.3520_28.model.last()}="MGS3520-28F")` |INFO | | +|ZYXEL MGS3520-28x: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3520_28.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.3520_28.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS3520-28x: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3520_28.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.3520_28.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS3520-28x: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.3520_28.memusage.min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | | +|ZYXEL MGS3520-28x: 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.3520_28.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL MGS3520-28x: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS3520-28x: 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.3520_28.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL MGS3520-28x: 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.3520_28.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL MGS3520-28x: Voltage {#ZYXEL.DESCRIPTION} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.3520_28.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL MGS3520-28x: 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 MGS3520-28x: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.3520_28.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL MGS3520-28x: Temperature {#ZYXEL.TEMPDESCRIPTION} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.3520_28.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 MGS3520-28 + diff --git a/templates/net/zyxel_snmp/zyxel_mgs3520-28x_snmp/template_net_zyxel_mgs3520-28x_snmp.yaml b/templates/net/zyxel_snmp/zyxel_mgs3520-28x_snmp/template_net_zyxel_mgs3520-28x_snmp.yaml new file mode 100644 index 00000000000..7104f4df208 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_mgs3520-28x_snmp/template_net_zyxel_mgs3520-28x_snmp.yaml @@ -0,0 +1,1492 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:22:23Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: 9cc843a085bb4ee5af0dc4d764a7eee9 + template: 'ZYXEL MGS3520-28x SNMP' + name: 'ZYXEL MGS3520-28x SNMP' + description: | + ZYXEL MGS3520-28x + + MIBs used: + RFC1213-MIB + ZYXEL-HW-MONITOR-MIB + ZYXEL-PORT-MIB + ZYXEL-ES-COMMON + ZYXEL-TRANSCEIVER-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 MGS3520-28 + + 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: dd305c07637b49c985aef490fb237359 + name: 'ZYXEL MGS3520-28x: 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: 3bf5d80d383e4e98853caa02063d69c9 + expression: 'max(/ZYXEL MGS3520-28x SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL MGS3520-28x: 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: be1d951beb564638a6102fe4b35fede0 + name: 'ZYXEL MGS3520-28x: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.3520_28.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: abdb31aeb0034998b91ab8f9b475409f + name: 'ZYXEL MGS3520-28x: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.2.4.0 + key: zyxel.3520_28.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-ES-COMMON + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 96ed7ee3906541ea9cb2c95cf4da1a62 + expression: 'min(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL MGS3520-28x: 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: dd0ab3fa502b43969eec05ffd687450e + name: 'ZYXEL MGS3520-28x: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.1.6.0 + key: zyxel.3520_28.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-ES-COMMON' + inventory_link: SOFTWARE_FULL + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 3785991565b948c2a1e1a2a140c42df4 + expression: '(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.fwversion,#1)<>last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.fwversion,#2))=1 and length(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.fwversion))>0' + name: 'ZYXEL MGS3520-28x: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: d9923ed59ef14cbebfe2f6d24c0d8414 + name: 'ZYXEL MGS3520-28x: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.3520_28.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: 65116a646d734290926de9444a58ff2d + name: 'ZYXEL MGS3520-28x: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.3520_28.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: 89d6942524f84e6d80d02a80be25ce57 + name: 'ZYXEL MGS3520-28x: Memory utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.2.5.0 + key: zyxel.3520_28.memusage + history: 7d + description: | + MIB: ZYXEL-ES-COMMON + Show device memory usage in %. + tags: + - + tag: Application + value: Memory + triggers: + - + uuid: 1a999dff1dd9481083681741e71aba76 + expression: 'min(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.memusage,5m)>{$MEMORY.UTIL.MAX}' + name: 'ZYXEL MGS3520-28x: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + - + uuid: 2dced10921704f8a9ccaabb2f951af15 + name: 'ZYXEL MGS3520-28x: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.3520_28.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: d72bc70a67014d818d593d6c484fc9ee + expression: 'not(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.model)="MGS3520-28" or last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.model)="MGS3520-28F")' + name: 'ZYXEL MGS3520-28x: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel MGS3520-28x series, but connected to {ITEM.VALUE}' + - + uuid: bccc98beb7ea45d6a7463de339e8877e + name: 'ZYXEL MGS3520-28x: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.3520_28.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: 095d82b3c92340debb324844a6c7f8a8 + name: 'ZYXEL MGS3520-28x: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.15.3.1.12.0 + key: zyxel.3520_28.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-ES-COMMON + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: e953886c5a464fc18bb1e221d801901c + expression: '(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.serialnumber,#1)<>last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.serialnumber,#2))=1 and length(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.serialnumber))>0' + name: 'ZYXEL MGS3520-28x: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: 78959009721a453c8b8a2c49eb26c90c + name: 'ZYXEL MGS3520-28x: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.3520_28.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: 308761b6dffb44c7b827f6ca76312233 + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.uptime)<10m' + name: 'ZYXEL MGS3520-28x: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: e56b6958ca184f549d86502ad9aa10bc + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.15.3.26.1.1.1.6,{#ZYXEL.FAN.DESCRIPTION},.1.3.6.1.4.1.890.1.15.3.26.1.1.1.2]' + key: zyxel.3520_28.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: dd26e2542d174248af94102230e3b590 + name: 'ZYXEL MGS3520-28x: {#ZYXEL.FAN.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3520_28.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-HW-MONITOR-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: 9eedeb7aaba943c0947896cd50b39c7f + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL MGS3520-28x: {#ZYXEL.FAN.DESCRIPTION} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 8599554de97e46e2bb7d3575d97f9453 + name: 'ZYXEL MGS3520-28x: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.fan[{#SNMPINDEX}]' + - + uuid: 800ea9596e6f4fa0b59966f9e9e7cf74 + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.15.3.61.1.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.15.3.61.2.1.1.2]' + key: zyxel.3520_28.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: 43cf7ba65c39475b9614ed4b95e9b398 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.3520_28.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 MGS3520-28x port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: de6bab43bf544489976261919ae52e98 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 01f3cc6551bb4703b199e6c996ad48ce + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 68b987f900c0467ea77a8c8eb661f6d0 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: ddcef9809ee34de5bec1acbdc8abc162 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: e8c2a3a8ba654311bc90901502983b7a + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 003eb52b5fe44f509b3c04eef9cc2aa7 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 8e060cde0fae44d792080fbc7da5a2a1 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.3520_28.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3520_28.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3520_28.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: 15a2c17e0bba4f0d824790c3caa9840f + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.61.2.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3520_28.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-PORT-MIB + The entry shows the linkUp cable type (copper, fiber, xfp or cx4) for the combo ports. + valuemap: + name: 'ZYXEL MGS3520-28x operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: f42c5604726d4d21a840418e5668287c + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.61.1.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3520_28.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-PORT-MIB + Descriptive name that identifies this port. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: cfd32eee855647b79c95d6f151f13407 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.3520_28.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 MGS3520-28x port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: abb9d47ee9624d6f9805e6eedd5532c5 + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL MGS3520-28x: 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: 26f87786719c4192949536c74c146b4d + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 4227a6eb8cce4dd8ab582ffce2788e6e + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 9a7eb0b7569d4111a33d84d03b5018e4 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: 768be526caa345b2b23996016a19e217 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.3520_28.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: e2b22f4c39974628a4476120b310a6fb + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.3520_28.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.3520_28.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.3520_28.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: 285f30d057f8438ab0d94367bcd6bdfc + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.61.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3520_28.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-PORT-MIB + Select The speed and the duplex mode of the Ethernet connection on this port. Selecting Auto + (auto-negotiation) allows one port to negotiate with a peer port automatically to obtain the + connection speed and duplex mode that both ends support. When auto-negotiation is turned on, + a port on the Switch negotiates with the peer automatically to determine the connection speed + and duplex mode. If the peer port does not support auto-negotiation or turns off this feature, + the Switch determines the connection speed by detecting the signal on the cable and using half + duplex mode. Thus requiring you to make sure that the settings of the peer port are the same in + order to connect. + valuemap: + name: 'ZYXEL MGS3520-28x operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: a7a2aec27f0045eba26e86e8cb08853a + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: b5446d1f3394422d81ca94dd617d6e95 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: 7314e57ea54c42d2ac6a341943204c04 + name: 'ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.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: c313274b317c42cab5b7dd3c88d0c14b + name: 'SFP with DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.WARN.MAX},.1.3.6.1.4.1.890.1.15.3.84.1.2.1.4,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.15.3.84.1.2.1.5,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.15.3.84.1.2.1.7]' + key: zyxel.3520_28.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: f3f9077d771544bfa666f58b6ae59e9c + name: 'ZYXEL MGS3520-28x: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.2.1.6.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-TRANSCEIVER-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: 27cd25ea30fa4f1c9b7b431218241d0c + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL MGS3520-28x: 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: 1188909e81c14c23aa9eefbb25a4c367 + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL MGS3520-28x: 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: 5d6e873606684351a68d649a8f7cd5d4 + name: 'ZYXEL MGS3520-28x: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.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: f7ab574d01c848f3a46eed870c5099a4 + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.15.3.84.1.1.1.1]' + key: zyxel.3520_28.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: da89b981488d4a71b1a4c70032669ddc + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 743a5eaf2c1049d4bf517c7e6f1f350d + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.3.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: e40f07be73ca4e15acc109f8565f491b + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.5.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-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: 42db7a2affe54f059015adeae188efea + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.4.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: b9c3894fed8140c684be7c1fe2bbca8d + expression: '(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL MGS3520-28x: 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: 8ff52d1298f74fa0a211c80373c25f9b + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.1.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module type. + valuemap: + name: 'ZYXEL MGS3520-28x SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: b11f1d31e3a04b39b6e9ec40a800a7d5 + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 2656c166a30d4ee19465c8e9b2986a10 + name: 'ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.1.1.2.{#SNMPINDEX}' + key: 'zyxel.3520_28.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-TRANSCEIVER-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 0fa2bd401cc14847a8fd366b895a6a51 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.15.3.26.1.2.1.6,{#ZYXEL.TEMPDESCRIPTION},.1.3.6.1.4.1.890.1.15.3.26.1.2.1.2]' + key: zyxel.3520_28.temp.discovery + delay: 1h + description: 'An entry in tempTable.' + item_prototypes: + - + uuid: bbdae35cdac341ce8f092b693ced4210 + name: 'ZYXEL MGS3520-28x: Temperature "{#ZYXEL.TEMPDESCRIPTION}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.2.1.3.{#SNMPINDEX}' + key: 'zyxel.3520_28.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-HW-MONITOR-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: c2d4142fb8934eb7b66f5a5e4fa04398 + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL MGS3520-28x: Temperature {#ZYXEL.TEMPDESCRIPTION} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 96fcc6df9a324347a550dd0df84ac15a + name: 'ZYXEL MGS3520-28x: Temperature "{#ZYXEL.TEMPDESCRIPTION}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.temp[{#SNMPINDEX}]' + - + uuid: b390ed15aca64c49b654734ef35a9d60 + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.15.3.26.1.3.1.7,{#ZYXEL.DESCRIPTION},.1.3.6.1.4.1.890.1.15.3.26.1.3.1.2]' + key: zyxel.3520_28.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 2b00ed37531f4dfc81aa2669cf227854 + name: 'ZYXEL MGS3520-28x: Nominal "{#ZYXEL.DESCRIPTION}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.3.1.3.{#SNMPINDEX}' + key: 'zyxel.3520_28.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-HW-MONITOR-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: 22b6f2f48eae4167b31c8fe3ccbc138a + expression: 'last(/ZYXEL MGS3520-28x SNMP/zyxel.3520_28.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL MGS3520-28x: Voltage {#ZYXEL.DESCRIPTION} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 74f0c4aba0db42869c1797c0631b7d03 + name: 'ZYXEL MGS3520-28x: Nominal "{#ZYXEL.DESCRIPTION}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: 'zyxel.3520_28.volt[{#SNMPINDEX}]' + preprocessing: + - + type: JAVASCRIPT + parameters: + - | + var inArray = JSON.parse(value); + var outArr = [] + inArray.forEach(function(item, i, arr) { + item["{#ZYXEL.VOLT.THRESH.LOW}"] /= 1000; + outArr.push(item) + }); + return JSON.stringify(outArr); + macros: + - + macro: '{$CPU.UTIL.CRIT}' + value: '90' + - + macro: '{$MEMORY.UTIL.MAX}' + 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|3|4 + description: 'Filter of discoverable link types. 0 - Down link 1 - Cooper link 2 - Fiber link 3 - XFP 4 - CX4' + - + 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: 5c5037a96f084a8182a5fb00f49ff285 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 2b38ddd0e1a34cfab7dd6af9ebf28aca + name: 'ZYXEL MGS3520-28x operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + value: '3' + newvalue: XFP + - + value: '4' + newvalue: CX4 + - + uuid: f23ebe496cfc4e659a09eff530b81a24 + name: 'ZYXEL MGS3520-28x 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' + - + value: '6' + newvalue: '10G full' + - + value: '7' + newvalue: '12G full' + - + value: '8' + newvalue: '40G full' + - + value: '9' + newvalue: '1G auto' + - + uuid: 3e0566598e394d80988fb49cd3215922 + name: 'ZYXEL MGS3520-28x port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: 2ffe41460977466cb09bc241b8d22739 + name: 'ZYXEL MGS3520-28x 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: 4443c6780c8f4d16a5f1efd5426db02e + name: 'ZYXEL MGS3520-28x SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: 13d4a0c9f81647c8ba9f712617c45402 + name: 'ZYXEL MGS3520-28x: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL MGS3520-28x SNMP' + key: zyxel.3520_28.cpuusage diff --git a/templates/net/zyxel_snmp/zyxel_xgs-4728f_snmp/README.md b/templates/net/zyxel_snmp/zyxel_xgs-4728f_snmp/README.md new file mode 100644 index 00000000000..3d249e2eaf1 --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_xgs-4728f_snmp/README.md @@ -0,0 +1,131 @@ + +# XGS-4728F SNMP + +## Overview + +For Zabbix version: 6.0 and higher +https://www.zyxel.com/products_services/xgs_4728f.shtml + +This template was tested on: + +- ZYXEL XGS-4728F, version V4.00(BBC.2)C0_20190730 | 07/30/2019 + +## 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` | +|{$MEMORY.UTIL.MAX} |<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.4728f.fan.discovery | +|Temperature discovery |<p>An entry in tempTable.</p><p>Index of temperature unit. 1:MAC, 2:CPU, 3:PHY</p> |SNMP |zyxel.4728f.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.4728f.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.4728f.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.4728f.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.4728f.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> | +|Memory pool discovery |<p>-</p> |SNMP |zyxel.4728f.memory.discovery | + +## Items collected + +|Group|Name|Description|Type|Key and additional info| +|-----|----|-----------|----|---------------------| +|CPU |ZYXEL XGS-4728F: CPU utilization |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Show device CPU load in %, it's the snapshot of CPU load when </p><p>getting the values.</p> |SNMP |zyxel.4728f.cpuusage | +|Fans |ZYXEL XGS-4728F: Fan #{#SNMPINDEX} |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Current speed in Revolutions Per Minute (RPM) on the fan.</p> |SNMP |zyxel.4728f.fan[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Inventory |ZYXEL XGS-4728F: 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.4728f.model<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL XGS-4728F: 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.4728f.contact<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL XGS-4728F: 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.4728f.name<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL XGS-4728F: Location |<p>MIB: RFC1213-MIB</p><p>The physical location of this node (e.g.,</p><p>`telephone closet, 3rd floor').</p> |SNMP |zyxel.4728f.location<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL XGS-4728F: 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.4728f.mac<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Inventory |ZYXEL XGS-4728F: ZyNOS F/W Version |<p>MIB: ZYXEL-XGS4728F-MIB</p> |SNMP |zyxel.4728f.fwversion<p>**Preprocessing**:</p><p>- JAVASCRIPT: `The text is too long. Please see the template.`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1d`</p> | +|Inventory |ZYXEL XGS-4728F: Hardware serial number |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Serial number</p> |SNMP |zyxel.4728f.serialnumber<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Memory |ZYXEL XGS-4728F: Memory "{#ZYXEL.MEMORY.NAME}" utilization |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Utilization of memory pool in %.</p> |SNMP |zyxel.4728f.memory[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: Port {#SNMPINDEX}: Speed Duplex |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Transmission mode</p> |SNMP |zyxel.4728f.net.if.speed_duplex[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: Port {#SNMPINDEX}: Interface description |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.4728f.net.if.name[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: Port {#SNMPINDEX}: Link type |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Physical connection type</p> |SNMP |zyxel.4728f.net.if.link_type[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: Port {#SNMPINDEX}: Interface name |<p>MIB: IF-MIB</p><p>A textual string containing information about the interface</p> |SNMP |zyxel.4728f.net.if.descr[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.operstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.adminstatus[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.in.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.in.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.in.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.in.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.out.traffic[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `8`</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.out.ucastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.out.multicastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.out.broadcastpkts[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- CHANGE_PER_SECOND | +|Network_interfaces |ZYXEL XGS-4728F: 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.4728f.net.if.highspeed[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `1000000`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: Port {#SNMPINDEX}: Incoming utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.4728f.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.4728f.net.if.in.traffic[{#SNMPINDEX}]) * (last(zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL XGS-4728F: Port {#SNMPINDEX}: Outgoing utilization |<p>Interface utilization percentage</p> |CALCULATED |zyxel.4728f.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.4728f.net.if.out.traffic[{#SNMPINDEX}]) * (last(zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) + (last(zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 ` | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Status |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Transceiver module status.</p> |SNMP |zyxel.4728f.sfp.status[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Vendor |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Transceiver module vendor name.</p> |SNMP |zyxel.4728f.sfp.vendor[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Part number |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Part number provided by transceiver module vendor.</p> |SNMP |zyxel.4728f.sfp.part[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Serial number |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Serial number provided by transceiver module vendor.</p> |SNMP |zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Revision |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Revision level for part number provided by transceiver module vendor.</p> |SNMP |zyxel.4728f.sfp.revision[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Date code |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Transceiver module vendor's manufacturing date code.</p> |SNMP |zyxel.4728f.sfp.datecode[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Transceiver |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Transceiver module type names.</p> |SNMP |zyxel.4728f.sfp.transceiver[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Network_interfaces |ZYXEL XGS-4728F: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION} |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).</p> |SNMP |zyxel.4728f.sfp.ddm[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `6h`</p> | +|Power_supply |ZYXEL XGS-4728F: Nominal "{#ZYXEL.VOLT.NOMINAL}" |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>The current voltage reading.</p> |SNMP |zyxel.4728f.volt[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.001`</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL XGS-4728F: SNMP agent availability |<p>-</p> |INTERNAL |zabbix[host,snmp,available]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | +|Status |ZYXEL XGS-4728F: 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.4728f.uptime<p>**Preprocessing**:</p><p>- MULTIPLIER: `0.01`</p> | +|Temperature |ZYXEL XGS-4728F: Temperature "{#ZYXEL.TEMP.ID}" |<p>MIB: ZYXEL-XGS4728F-MIB</p><p>The current temperature measured at this sensor</p> |SNMP |zyxel.4728f.temp[{#SNMPINDEX}]<p>**Preprocessing**:</p><p>- DISCARD_UNCHANGED_HEARTBEAT: `1h`</p> | + +## Triggers + +|Name|Description|Expression|Severity|Dependencies and additional info| +|----|-----------|----|----|----| +|ZYXEL XGS-4728F: 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.4728f.cpuusage.min(5m)}>{$CPU.UTIL.CRIT}` |WARNING | | +|ZYXEL XGS-4728F: FAN{#SNMPINDEX} is in critical state |<p>Please check the fan unit</p> |`{TEMPLATE_NAME:zyxel.4728f.fan[{#SNMPINDEX}].last()}<{#ZYXEL.FANRPM.THRESH.LOW}` |AVERAGE | | +|ZYXEL XGS-4728F: Template does not match hardware |<p>This template is for Zyxel XGS-4728F, but connected to {ITEM.VALUE}</p> |`{TEMPLATE_NAME:zyxel.4728f.model.last()}<>"XGS-4728F"` |INFO | | +|ZYXEL XGS-4728F: Firmware has changed |<p>Firmware version has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.4728f.fwversion.diff()}=1 and {TEMPLATE_NAME:zyxel.4728f.fwversion.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL XGS-4728F: Device has been replaced (new serial number received) |<p>Device serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.4728f.serialnumber.diff()}=1 and {TEMPLATE_NAME:zyxel.4728f.serialnumber.strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL XGS-4728F: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m) |<p>The system is running out of free memory.</p> |`{TEMPLATE_NAME:zyxel.4728f.memory[{#SNMPINDEX}].min(5m)}>{$MEMORY.UTIL.MAX}` |AVERAGE | | +|ZYXEL XGS-4728F: 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.4728f.net.if.operstatus[{#SNMPINDEX}].last()}=2 and {TEMPLATE_NAME:zyxel.4728f.net.if.operstatus[{#SNMPINDEX}].diff()}=1`<p>Recovery expression:</p>`{TEMPLATE_NAME:zyxel.4728f.net.if.operstatus[{#SNMPINDEX}].last()}<>2` |AVERAGE |<p>Manual close: YES</p> | +|ZYXEL XGS-4728F: SFP {#SNMPINDEX} has been replaced (new serial number received) |<p>SFP {#SNMPINDEX} serial number has changed. Ack to close</p> |`{TEMPLATE_NAME:zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}].diff()}=1 and {TEMPLATE_NAME:zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}].strlen()}>0` |INFO |<p>Manual close: YES</p> | +|ZYXEL XGS-4728F: 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.4728f.sfp.ddm[{#SNMPINDEX}].last()} > {#ZYXEL.SFP.WARN.MAX}` |WARNING | | +|ZYXEL XGS-4728F: 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.4728f.sfp.ddm[{#SNMPINDEX}].last()} < {#ZYXEL.SFP.WARN.MIN}` |WARNING | | +|ZYXEL XGS-4728F: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state |<p>Please check the power supply</p> |`{TEMPLATE_NAME:zyxel.4728f.volt[{#SNMPINDEX}].last()}<{#ZYXEL.VOLT.THRESH.LOW}` |AVERAGE | | +|ZYXEL XGS-4728F: 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 XGS-4728F: has been restarted (uptime < 10m) |<p>Uptime is less than 10 minutes</p> |`{TEMPLATE_NAME:zyxel.4728f.uptime.last()}<10m` |INFO |<p>Manual close: YES</p> | +|ZYXEL XGS-4728F: Temperature {#ZYXEL.TEMP.ID} is in critical state |<p>Please check the temperature</p> |`{TEMPLATE_NAME:zyxel.4728f.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 XGS-4728F + diff --git a/templates/net/zyxel_snmp/zyxel_xgs-4728f_snmp/template_net_zyxel_xgs-4728f_snmp.yaml b/templates/net/zyxel_snmp/zyxel_xgs-4728f_snmp/template_net_zyxel_xgs-4728f_snmp.yaml new file mode 100644 index 00000000000..d73d230408f --- /dev/null +++ b/templates/net/zyxel_snmp/zyxel_xgs-4728f_snmp/template_net_zyxel_xgs-4728f_snmp.yaml @@ -0,0 +1,1514 @@ +zabbix_export: + version: '5.4' + date: '2021-05-11T15:22:44Z' + groups: + - + uuid: 36bff6c29af64692839d077febfc7079 + name: 'Templates/Network devices' + templates: + - + uuid: ab18a5665b7d4bed876881b5c4e8ce51 + template: 'ZYXEL XGS-4728F SNMP' + name: 'ZYXEL XGS-4728F SNMP' + description: | + ZYXEL XGS-4728F + + MIBs used: + RFC1213-MIB + ZYXEL-XGS4728F-MIB + IF-MIB + ZYXEL-XGS4728F-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 XGS-4728F + + 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: 8b2b855bc92447dda391d251db268dc9 + name: 'ZYXEL XGS-4728F: 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: fd9a321842544253896e5a4c1a58ced3 + expression: 'max(/ZYXEL XGS-4728F SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0' + name: 'ZYXEL XGS-4728F: 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: 23ae05ce4d5c4022a716ed9e8e701ae9 + name: 'ZYXEL XGS-4728F: Contact' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.4.0 + key: zyxel.4728f.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: 1cccb7e7616944aa8747508e96f54968 + name: 'ZYXEL XGS-4728F: CPU utilization' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.46.12.7.0 + key: zyxel.4728f.cpuusage + history: 7d + value_type: FLOAT + units: '%' + description: | + MIB: ZYXEL-XGS4728F-MIB + Show device CPU load in %, it's the snapshot of CPU load when + getting the values. + tags: + - + tag: Application + value: CPU + triggers: + - + uuid: 20f368f955f74fc9b8380b1bbff7e057 + expression: 'min(/ZYXEL XGS-4728F SNMP/zyxel.4728f.cpuusage,5m)>{$CPU.UTIL.CRIT}' + name: 'ZYXEL XGS-4728F: 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: 222a051f0b84433faa6f29237b6d1552 + name: 'ZYXEL XGS-4728F: ZyNOS F/W Version' + type: SNMP_AGENT + snmp_oid: 'discovery[{#SNMP.ARRAY},.1.3.6.1.4.1.890.1.5.8.46.1]' + key: zyxel.4728f.fwversion + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: 'MIB: ZYXEL-XGS4728F-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: 5da304609e8c45d980c46579f6848f0a + expression: '(last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.fwversion,#1)<>last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.fwversion,#2))=1 and length(last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.fwversion))>0' + name: 'ZYXEL XGS-4728F: Firmware has changed' + opdata: 'Current value: {ITEM.LASTVALUE1}' + priority: INFO + description: 'Firmware version has changed. Ack to close' + manual_close: 'YES' + - + uuid: cc5065f635bc486cb90898f842fa8a61 + name: 'ZYXEL XGS-4728F: Location' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.6.0 + key: zyxel.4728f.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: 9a646e8e82c844c08754c7e72e161712 + name: 'ZYXEL XGS-4728F: MAC address' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.2.2.1.6.1 + key: zyxel.4728f.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: a152c262c465441da0f1924bc7614a23 + name: 'ZYXEL XGS-4728F: Hardware model name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.1.0 + key: zyxel.4728f.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: 0329f3f5aa6a4315a4f3611ad662103e + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.model)<>"XGS-4728F"' + name: 'ZYXEL XGS-4728F: Template does not match hardware' + priority: INFO + description: 'This template is for Zyxel XGS-4728F, but connected to {ITEM.VALUE}' + - + uuid: 49e365a43809409f8d4636f88e4d64a9 + name: 'ZYXEL XGS-4728F: Host name' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.5.0 + key: zyxel.4728f.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: 79c80ac11d854edea93a598c4b28ffc0 + name: 'ZYXEL XGS-4728F: Hardware serial number' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.4.1.890.1.5.8.46.1.10.0 + key: zyxel.4728f.serialnumber + delay: 1h + history: 2w + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + Serial number + inventory_link: SERIALNO_A + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: Inventory + triggers: + - + uuid: 4df7c31c3079411baabd4ae66e580652 + expression: '(last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.serialnumber,#1)<>last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.serialnumber,#2))=1 and length(last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.serialnumber))>0' + name: 'ZYXEL XGS-4728F: Device has been replaced (new serial number received)' + priority: INFO + description: 'Device serial number has changed. Ack to close' + manual_close: 'YES' + - + uuid: b3302cbfbae64d55a638240ffb368b9c + name: 'ZYXEL XGS-4728F: Uptime' + type: SNMP_AGENT + snmp_oid: .1.3.6.1.2.1.1.3.0 + key: zyxel.4728f.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: 36b9a7d3d3fb45f782a5ea05de6816f9 + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.uptime)<10m' + name: 'ZYXEL XGS-4728F: has been restarted (uptime < 10m)' + priority: INFO + description: 'Uptime is less than 10 minutes' + manual_close: 'YES' + discovery_rules: + - + uuid: bc0d797343b240bdbd5765dc2e7821fd + name: 'Fan discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.FANRPM.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.46.9.1.1.5]' + key: zyxel.4728f.fan.discovery + delay: 1h + description: 'An entry in fanRpmTable.' + item_prototypes: + - + uuid: 6ac1481e18bd419d884a556306e57f18 + name: 'ZYXEL XGS-4728F: Fan #{#SNMPINDEX}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.9.1.1.2.{#SNMPINDEX}' + key: 'zyxel.4728f.fan[{#SNMPINDEX}]' + history: 7d + units: '!rpm' + description: | + MIB: ZYXEL-XGS4728F-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: 012219b8b16941b59d1f9a3f685e9f38 + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}' + name: 'ZYXEL XGS-4728F: FAN{#SNMPINDEX} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the fan unit' + graph_prototypes: + - + uuid: 96aed516a0254866b0d0b43095b8a5b7 + name: 'ZYXEL XGS-4728F: Fan #{#SNMPINDEX}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.fan[{#SNMPINDEX}]' + - + uuid: 06f0e151e2a146028f80e60031d49b48 + name: 'Memory pool discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.MEMORY.NAME},.1.3.6.1.4.1.890.1.5.8.46.124.1.1.2]' + key: zyxel.4728f.memory.discovery + delay: 1h + item_prototypes: + - + uuid: ead18ee81f074ab68e4104345e5b4b2b + name: 'ZYXEL XGS-4728F: Memory "{#ZYXEL.MEMORY.NAME}" utilization' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.124.1.1.5.{#SNMPINDEX}' + key: 'zyxel.4728f.memory[{#SNMPINDEX}]' + history: 7d + units: '%' + description: | + MIB: ZYXEL-XGS4728F-MIB + Utilization of memory pool in %. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Memory + trigger_prototypes: + - + uuid: 90b328c3b56c417eb938091338bd07fc + expression: 'min(/ZYXEL XGS-4728F SNMP/zyxel.4728f.memory[{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}' + name: 'ZYXEL XGS-4728F: High memory utilization in "{#ZYXEL.MEMORY.NAME}" pool (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + - + uuid: 75a0f2676e134b6e8ab9e8c11ac17d57 + name: 'Interface discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.IF.NAME},.1.3.6.1.4.1.890.1.5.8.46.23.1.1.3,{#ZYXEL.IF.LINKUPTYPE},.1.3.6.1.4.1.890.1.5.8.46.23.1.1.5]' + key: zyxel.4728f.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: 36f7fdbfa4164677ad91351be394f050 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Administrative status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.7.{#SNMPINDEX}' + key: 'zyxel.4728f.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 XGS-4728F port admin status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: dbc94a6eabd64eefbe97f57f8831e834 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Interface name' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.2.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 840096d5a418425c851ea7d236b7e34e + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Link speed' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 0105dea3226d46f8868aa07aa3f416a2 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Incoming broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.9.{#SNMPINDEX}' + key: 'zyxel.4728f.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: de7b202e7240422dbdbc40e78689e6fe + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Incoming multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.8.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 075b04bdaff54a2cafc1b177e59df3be + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Incoming traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}' + key: 'zyxel.4728f.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: c2a8e3985ed1414789b1bfe226de6d37 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Incoming unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.7.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 72f7ee1e5099452aa4804d988adfb7a5 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Incoming utilization' + type: CALCULATED + key: 'zyxel.4728f.net.if.in.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.4728f.net.if.in.traffic[{#SNMPINDEX}]) * (last(//zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.4728f.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: db488317d10e43eea21ecaa74d7a58dc + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Link type' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.23.1.1.5.{#SNMPINDEX}' + key: 'zyxel.4728f.net.if.link_type[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-XGS4728F-MIB + Physical connection type + valuemap: + name: 'ZYXEL XGS-4728F operational mode port link up type' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 8877747043f94216b92ef7f097925d8e + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Interface description' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.23.1.1.3.{#SNMPINDEX}' + key: 'zyxel.4728f.net.if.name[{#SNMPINDEX}]' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + A textual string containing information about the interface + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: b091be1b0a8f415b82d73b3537cf6187 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Operational status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}' + key: 'zyxel.4728f.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 XGS-4728F port operational status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 3f3ce5111d47490382cb0c18e2d36f77 + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.net.if.operstatus[{#SNMPINDEX}])=2 and (last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.net.if.operstatus[{#SNMPINDEX}],#2))=1' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.net.if.operstatus[{#SNMPINDEX}])<>2' + name: 'ZYXEL XGS-4728F: 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: ad7378144b254962aad0a73fb151e097 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Outgoing broadcast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.13.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 67b776b7f51e4b24bad3b616979d7f98 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Outgoing multicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.12.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 4afef8d3601646f1bfc81090b090c11c + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Outgoing traffic' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}' + key: 'zyxel.4728f.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: ba1b314aacd0449fa0c9730fdb8ee3f9 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Outgoing unicast packages' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.2.1.31.1.1.1.11.{#SNMPINDEX}' + key: 'zyxel.4728f.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: 7941df5f5b884b33bcda9951e4b0158d + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Outgoing utilization' + type: CALCULATED + key: 'zyxel.4728f.net.if.out.util[{#SNMPINDEX}]' + history: 7d + units: '%' + params: 'last(//zyxel.4728f.net.if.out.traffic[{#SNMPINDEX}]) * (last(//zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//zyxel.4728f.net.if.highspeed[{#SNMPINDEX}]) + (last(//zyxel.4728f.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: f56f1c0cf5d34435895ea489eb71b84a + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Speed Duplex' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.23.1.1.1.{#SNMPINDEX}' + key: 'zyxel.4728f.net.if.speed_duplex[{#SNMPINDEX}]' + history: 7d + description: | + MIB: ZYXEL-XGS4728F-MIB + Transmission mode + valuemap: + name: 'ZYXEL XGS-4728F operational mode port speed duplex' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 6h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + graph_prototypes: + - + uuid: 18c2bd830caa49308459d64ef85cfc71 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Packets traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.in.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.out.ucastpkts[{#SNMPINDEX}]' + - + sortorder: '2' + color: F63100 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.in.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '3' + color: A54F10 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.out.multicastpkts[{#SNMPINDEX}]' + - + sortorder: '4' + color: FC6EA3 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.in.broadcastpkts[{#SNMPINDEX}]' + - + sortorder: '5' + color: 6C59DC + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.out.broadcastpkts[{#SNMPINDEX}]' + - + uuid: a8c07b7801d64c24bfedf10ea193f697 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Traffic' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.in.traffic[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.out.traffic[{#SNMPINDEX}]' + - + uuid: 37e8454c3fa04f88be36d875638110c6 + name: 'ZYXEL XGS-4728F: Port {#SNMPINDEX}: Utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.net.if.out.util[{#SNMPINDEX}]' + - + sortorder: '1' + color: 2774A4 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.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: 6e0b5b991865448780e042d98168d72c + 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.46.117.2.1.5,{#ZYXEL.SFP.WARN.MIN},.1.3.6.1.4.1.890.1.5.8.46.117.2.1.6,{#ZYXEL.SFP.DESCRIPTION},.1.3.6.1.4.1.890.1.5.8.46.117.2.1.8]' + key: zyxel.4728f.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: 0071554e36064f7ea40d680a0c310b27 + name: 'ZYXEL XGS-4728F: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.2.1.7.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.ddm[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + value_type: FLOAT + units: '!{#ZYXEL.SFP.UNIT}' + description: | + MIB: ZYXEL-XGS4728F-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: 409c52cfed074352810bacfd52aa89f0 + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}' + name: 'ZYXEL XGS-4728F: 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: a2c40df40a334f6da00a438eb70f8374 + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}' + name: 'ZYXEL XGS-4728F: 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: 109ff7d258524b82bdbf4662e612795b + name: 'ZYXEL XGS-4728F: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.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: f8112c4b07ed4bb1b918f58dbb9ec294 + name: 'SFP without DDM discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.SFP.STATUS},.1.3.6.1.4.1.890.1.5.8.46.117.1.1.2]' + key: zyxel.4728f.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: 59c000d4324d4e8ca07203843bbea7b5 + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Date code' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.7.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.datecode[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + Transceiver module vendor's manufacturing date code. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: c585762763604f83a9d14b7df21188ee + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Part number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.4.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.part[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + Part number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 33395170c38043828cedbfbedea959cc + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Revision' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.6.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.revision[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-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: 175f4200563549a0ae1ebaed18eeb636 + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Serial number' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.5.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + Serial number provided by transceiver module vendor. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + trigger_prototypes: + - + uuid: 632be557ffed439e98425eaa59361e50 + expression: '(last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}],#2))=1 and length(last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.sfp.serialnumber[{#SNMPINDEX}]))>0' + name: 'ZYXEL XGS-4728F: 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: 5d3d0c6135924b2088b2f97d30a743cb + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Status' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.2.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.status[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + description: | + MIB: ZYXEL-XGS4728F-MIB + Transceiver module status. + valuemap: + name: 'ZYXEL XGS-4728F SFP status' + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: b16f7fe769a74ea99aafaa60a97d286c + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Transceiver' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.8.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.transceiver[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + Transceiver module type names. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: 5abb9b467e934873808b4b49bdd74f5f + name: 'ZYXEL XGS-4728F: SFP {#SNMPINDEX}: Vendor' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.117.1.1.3.{#SNMPINDEX}' + key: 'zyxel.4728f.sfp.vendor[{#SNMPINDEX}]' + delay: '{$ZYXEL.LLD.SFP.UPDATE}' + history: 7d + trends: '0' + value_type: CHAR + description: | + MIB: ZYXEL-XGS4728F-MIB + Transceiver module vendor name. + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: 'Port {#SNMPINDEX}' + - + uuid: fa0881c21d834db1b421ae727254bff9 + name: 'Temperature discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.TEMP.THRESH.HIGH},.1.3.6.1.4.1.890.1.5.8.46.9.2.1.5]' + key: zyxel.4728f.temp.discovery + delay: 1h + description: | + An entry in tempTable. + Index of temperature unit. 1:MAC, 2:CPU, 3:PHY + item_prototypes: + - + uuid: db030cd64cdc471cb5298ceb9973155a + name: 'ZYXEL XGS-4728F: Temperature "{#ZYXEL.TEMP.ID}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.9.2.1.2.{#SNMPINDEX}' + key: 'zyxel.4728f.temp[{#SNMPINDEX}]' + history: 7d + units: °C + description: | + MIB: ZYXEL-XGS4728F-MIB + The current temperature measured at this sensor + preprocessing: + - + type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - + tag: Application + value: Temperature + trigger_prototypes: + - + uuid: 6181f094ae4c4cf4ae4b2e198e2f9b6e + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}' + name: 'ZYXEL XGS-4728F: Temperature {#ZYXEL.TEMP.ID} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the temperature' + graph_prototypes: + - + uuid: 1068300241bb430b8c51048303922e55 + name: 'ZYXEL XGS-4728F: Temperature "{#ZYXEL.TEMP.ID}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.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: 1fa3870c99d6408dbf78c7f2ad87341d + name: 'Voltage discovery' + type: SNMP_AGENT + snmp_oid: 'discovery[{#ZYXEL.VOLT.THRESH.LOW},.1.3.6.1.4.1.890.1.5.8.46.9.3.1.6,{#ZYXEL.VOLT.NOMINAL},.1.3.6.1.4.1.890.1.5.8.46.9.3.1.5]' + key: zyxel.4728f.volt.discovery + delay: 1h + description: 'An entry in voltageTable.' + item_prototypes: + - + uuid: 2999674cc176471887c1878b881b8422 + name: 'ZYXEL XGS-4728F: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + type: SNMP_AGENT + snmp_oid: '.1.3.6.1.4.1.890.1.5.8.46.9.3.1.2.{#SNMPINDEX}' + key: 'zyxel.4728f.volt[{#SNMPINDEX}]' + history: 7d + value_type: FLOAT + units: V + description: | + MIB: ZYXEL-XGS4728F-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: 631202a132dc44afa90b0537f9957ee1 + expression: 'last(/ZYXEL XGS-4728F SNMP/zyxel.4728f.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}' + name: 'ZYXEL XGS-4728F: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: 'Please check the power supply' + graph_prototypes: + - + uuid: 560c37d174e741a6a2590d17574123ed + name: 'ZYXEL XGS-4728F: Nominal "{#ZYXEL.VOLT.NOMINAL}"' + graph_items: + - + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: 'zyxel.4728f.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: '{$MEMORY.UTIL.MAX}' + 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: a7acf3b0ac684d4e80c560bcd3dd2dc6 + name: 'SNMP available' + mappings: + - + value: '0' + newvalue: 'not available' + - + value: '1' + newvalue: available + - + value: '2' + newvalue: unknown + - + uuid: 042ccfb45b0a4ef7bc8842f731dd8c4f + name: 'ZYXEL XGS-4728F operational mode port link up type' + mappings: + - + value: '0' + newvalue: Down + - + value: '1' + newvalue: Cooper + - + value: '2' + newvalue: Fiber + - + value: '3' + newvalue: XFP + - + value: '4' + newvalue: CX4 + - + uuid: d466ff32531d4eaea989c07aa5989d6b + name: 'ZYXEL XGS-4728F 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: 250f228ead4b433f987d42014255a617 + name: 'ZYXEL XGS-4728F port admin status' + mappings: + - + value: '1' + newvalue: Up + - + value: '2' + newvalue: Down + - + value: '3' + newvalue: Testing + - + uuid: ed13145eeefd44dda083716080725e60 + name: 'ZYXEL XGS-4728F 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: 49b0a85b7da947ab91e47ed2f2123907 + name: 'ZYXEL XGS-4728F SFP status' + mappings: + - + value: '1' + newvalue: 'OK with DDM' + - + value: '2' + newvalue: 'OK without DDM' + - + value: '3' + newvalue: nonoperational + graphs: + - + uuid: dfd68fb23bf349068005997de6b0515a + name: 'ZYXEL XGS-4728F: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - + drawtype: GRADIENT_LINE + color: 1A7C11 + item: + host: 'ZYXEL XGS-4728F SNMP' + key: zyxel.4728f.cpuusage |