# ZYXEL MGS3520-28x by SNMP ## Overview https://service-provider.zyxel.com/emea/en/products/carrier-and-access-switches/access-switches/mgs3520-series ### 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 ## Requirements Zabbix version: 7.0 and higher. ## Tested versions This template has been tested on: - ZYXEL MGS3520-28 V4.10(AATN.1)C0_20190522 | 05/22/2019 - ZYXEL MGS3520-28F V4.10(AATM.1)C0_20190626 | 06/27/2019 ## Configuration > Zabbix should be configured according to the instructions in the [Templates out of the box](https://www.zabbix.com/documentation/7.0/manual/config/templates_out_of_the_box) section. ## Setup Refer to the vendor documentation. ### Macros used |Name|Description|Default| |----|-----------|-------| |{$ZYXEL.LLD.FILTER.IF.CONTROL.MATCHES}|

Triggers will be created only for interfaces whose description contains the value of this macro

|`CHANGE_IF_NEEDED`| |{$SNMP.TIMEOUT}|

The time interval for SNMP agent availability trigger expression.

|`5m`| |{$CPU.UTIL.CRIT}||`90`| |{$MEMORY.UTIL.MAX}||`90`| |{$ZYXEL.LLD.FILTER.IF.NAME.MATCHES}|

Filter by discoverable interface names.

|`.*`| |{$ZYXEL.LLD.FILTER.IF.NAME.NOT_MATCHES}|

Filter to exclude discovered interfaces by name.

|`CHANGE_IF_NEEDED`| |{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.MATCHES}|

Filter of discoverable link types.

0 - Down link

1 - Cooper link

2 - Fiber link

3 - XFP

4 - CX4

|`1\|2\|3\|4`| |{$ZYXEL.LLD.FILTER.IF.LINKUPTYPE.NOT_MATCHES}|

Filter to exclude discovered by link types.

|`CHANGE_IF_NEEDED`| |{$ZYXEL.LLD.FILTER.SFP.STATUS.MATCHES}|

Filter of discoverable status.

0 - OK with DDM

1 - OK without DDM

2 - nonoperational

|`1\|2`| |{$ZYXEL.LLD.FILTER.SFP.STATUS.NOT_MATCHES}|

Filter to exclude discovered by status.

|`CHANGE_IF_NEEDED`| |{$ZYXEL.LLD.FILTER.SFPDDM.DESC.MATCHES}|

Filter by discoverable SFP modules name.

|`.*`| |{$ZYXEL.LLD.FILTER.SFPDDM.DESC.NOT_MATCHES}|

Filter to exclude discovered SFP modules by name.

|`N/A`| |{$ZYXEL.LLD.SFP.UPDATE}|

Receiving data from the SFP module is slow, we do not recommend setting the interval less than 10 minutes.

|`10m`| ### Items |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: SNMP agent availability||Zabbix internal|zabbix[host,snmp,available]

**Preprocessing**

| |ZYXEL MGS3520-28x: Hardware model name|

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.

|SNMP agent|zyxel.3520_28.model

**Preprocessing**

| |ZYXEL MGS3520-28x: Contact|

MIB: RFC1213-MIB

The textual identification of the contact person

for this managed node, together with information

on how to contact this person.

|SNMP agent|zyxel.3520_28.contact

**Preprocessing**

| |ZYXEL MGS3520-28x: Host name|

MIB: RFC1213-MIB

An administratively-assigned name for this

managed node. By convention, this is the node's

fully-qualified domain name.

|SNMP agent|zyxel.3520_28.name

**Preprocessing**

| |ZYXEL MGS3520-28x: Location|

MIB: RFC1213-MIB

The physical location of this node (e.g.,

`telephone closet, 3rd floor').

|SNMP agent|zyxel.3520_28.location

**Preprocessing**

| |ZYXEL MGS3520-28x: MAC address|

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.

|SNMP agent|zyxel.3520_28.mac

**Preprocessing**

| |ZYXEL MGS3520-28x: Uptime (network)|

MIB: RFC1213-MIB

The time (in hundredths of a second) since the

network management portion of the system was last

re-initialized.

|SNMP agent|zyxel.3520_28.net.uptime

**Preprocessing**

| |ZYXEL MGS3520-28x: Uptime (hardware)|

MIB: HOST-RESOURCES-MIB

The amount of time since this host was last initialized.

Note that this is different from sysUpTime in the SNMPv2-MIB

[RFC1907] because sysUpTime is the uptime of the

network management portion of the system.

|SNMP agent|zyxel.3520_28.hw.uptime

**Preprocessing**

| |ZYXEL MGS3520-28x: ZyNOS F/W Version|

MIB: ZYXEL-ES-COMMON

|SNMP agent|zyxel.3520_28.fwversion

**Preprocessing**

| |ZYXEL MGS3520-28x: Hardware serial number|

MIB: ZYXEL-ES-COMMON

Serial number

|SNMP agent|zyxel.3520_28.serialnumber

**Preprocessing**

| |ZYXEL MGS3520-28x: CPU utilization|

MIB: ZYXEL-ES-COMMON

Show device CPU load in %, it's the snapshot of CPU load when

getting the values.

|SNMP agent|zyxel.3520_28.cpuusage| |ZYXEL MGS3520-28x: Memory utilization|

MIB: ZYXEL-ES-COMMON

Show device memory usage in %.

|SNMP agent|zyxel.3520_28.memusage| ### Triggers |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: No SNMP data collection|

SNMP is not available for polling. Please check device connectivity and SNMP settings.

|`max(/ZYXEL MGS3520-28x by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0`|Warning|| |ZYXEL MGS3520-28x: Template does not match hardware|

This template is for Zyxel MGS3520-28x series, but connected to {ITEM.VALUE}

|`not(last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.model)="MGS3520-28" or last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.model)="MGS3520-28F")`|Info|**Manual close**: Yes| |ZYXEL MGS3520-28x: Host has been restarted|

Uptime is less than 10 minutes.

|`(last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.hw.uptime)>0 and last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.hw.uptime)<10m) or (last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.hw.uptime)=0 and last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.net.uptime)<10m)`|Info|**Manual close**: Yes| |ZYXEL MGS3520-28x: Firmware has changed|

Firmware version has changed. Acknowledge to close the problem manually.

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.fwversion,#1)<>last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.fwversion,#2) and length(last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.fwversion))>0`|Info|**Manual close**: Yes| |ZYXEL MGS3520-28x: Device has been replaced|

Device serial number has changed. Acknowledge to close the problem manually.

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.serialnumber,#1)<>last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.serialnumber,#2) and length(last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.serialnumber))>0`|Info|**Manual close**: Yes| |ZYXEL MGS3520-28x: High CPU utilization|

The CPU utilization is too high. The system might be slow to respond.

|`min(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.cpuusage,5m)>{$CPU.UTIL.CRIT}`|Warning|| |ZYXEL MGS3520-28x: High memory utilization|

The system is running out of free memory.

|`min(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.memusage,5m)>{$MEMORY.UTIL.MAX}`|Average|| ### LLD rule Fan discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Fan discovery|

An entry in fanRpmTable.

|SNMP agent|zyxel.3520_28.fan.discovery| ### Item prototypes for Fan discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: {#ZYXEL.FAN.DESCRIPTION}|

MIB: ZYXEL-HW-MONITOR-MIB

Current speed in Revolutions Per Minute (RPM) on the fan.

|SNMP agent|zyxel.3520_28.fan[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Fan discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: {#ZYXEL.FAN.DESCRIPTION} is in critical state|

Please check the fan unit

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}`|Average|| ### LLD rule Temperature discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Temperature discovery|

An entry in tempTable.

|SNMP agent|zyxel.3520_28.temp.discovery| ### Item prototypes for Temperature discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: Temperature "{#ZYXEL.TEMPDESCRIPTION}"|

MIB: ZYXEL-HW-MONITOR-MIB

The current temperature measured at this sensor

|SNMP agent|zyxel.3520_28.temp[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Temperature discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: Temperature {#ZYXEL.TEMPDESCRIPTION} is in critical state|

Please check the temperature

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}`|Average|| ### LLD rule Voltage discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Voltage discovery|

An entry in voltageTable.

|SNMP agent|zyxel.3520_28.volt.discovery

**Preprocessing**

| ### Item prototypes for Voltage discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: Nominal "{#ZYXEL.DESCRIPTION}"|

MIB: ZYXEL-HW-MONITOR-MIB

The current voltage reading.

|SNMP agent|zyxel.3520_28.volt[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Voltage discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: Voltage {#ZYXEL.DESCRIPTION} is in critical state|

Please check the power supply

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}`|Average|| ### LLD rule Interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Interface discovery||SNMP agent|zyxel.3520_28.net.if.discovery| ### Item prototypes for Interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Speed Duplex|

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.

|SNMP agent|zyxel.3520_28.net.if.speed_duplex[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Interface description|

MIB: ZYXEL-PORT-MIB

Descriptive name that identifies this port.

|SNMP agent|zyxel.3520_28.net.if.name[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Link type|

MIB: ZYXEL-PORT-MIB

The entry shows the linkUp cable type (copper, fiber, xfp or cx4) for the combo ports.

|SNMP agent|zyxel.3520_28.net.if.link_type[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Interface name|

MIB: IF-MIB

A textual string containing information about the interface

|SNMP agent|zyxel.3520_28.net.if.descr[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Operational status|

MIB: IF-MIB

The current operational state of the interface.

The testing(3) state indicates that no operational

packets can be passed.

|SNMP agent|zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Administrative status|

MIB: IF-MIB

The desired state of the interface. The

testing(3) state indicates that no operational

packets can be passed.

|SNMP agent|zyxel.3520_28.net.if.adminstatus[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming traffic|

MIB: IF-MIB

The total number of octets received on the interface,

including framing characters.

|SNMP agent|zyxel.3520_28.net.if.in.traffic[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming unicast packages|

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

|SNMP agent|zyxel.3520_28.net.if.in.ucastpkts[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming multicast packages|

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.

|SNMP agent|zyxel.3520_28.net.if.in.multicastpkts[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming broadcast packages|

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.

|SNMP agent|zyxel.3520_28.net.if.in.broadcastpkts[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing traffic|

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.

|SNMP agent|zyxel.3520_28.net.if.out.traffic[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing unicast packages|

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.

|SNMP agent|zyxel.3520_28.net.if.out.ucastpkts[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing multicast packages|

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.

|SNMP agent|zyxel.3520_28.net.if.out.multicastpkts[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing broadcast packages|

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.

|SNMP agent|zyxel.3520_28.net.if.out.broadcastpkts[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Link speed|

MIB: IF-MIB

An estimate of the interface's current bandwidth in bits per second

|SNMP agent|zyxel.3520_28.net.if.highspeed[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Incoming utilization|

Interface utilization percentage

|Calculated|zyxel.3520_28.net.if.in.util[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Outgoing utilization|

Interface utilization percentage

|Calculated|zyxel.3520_28.net.if.out.util[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Interface discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: Port {#SNMPINDEX}: Link down|

This trigger expression works as follows:
1. It can be triggered if the operations status is down.
2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, do not fire for the 'eternal off' interfaces.)

WARNING: if closed manually - it will not fire again on the next poll, because of .diff.

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}])=2 and last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.net.if.operstatus[{#SNMPINDEX}],#2)`|Average|**Manual close**: Yes| ### LLD rule SFP without DDM discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |SFP without DDM discovery|

SFP module discovery.

|SNMP agent|zyxel.3520_28.sfp.discovery| ### Item prototypes for SFP without DDM discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Status|

MIB: ZYXEL-TRANSCEIVER-MIB

Transceiver module type.

|SNMP agent|zyxel.3520_28.sfp.status[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Vendor|

MIB: ZYXEL-TRANSCEIVER-MIB

Transceiver module vendor name.

|SNMP agent|zyxel.3520_28.sfp.vendor[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Part number|

MIB: ZYXEL-TRANSCEIVER-MIB

Part number provided by transceiver module vendor.

|SNMP agent|zyxel.3520_28.sfp.part[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Serial number|

MIB: ZYXEL-TRANSCEIVER-MIB

Serial number provided by transceiver module vendor.

|SNMP agent|zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Revision|

MIB: ZYXEL-TRANSCEIVER-MIB

Revision level for part number provided by transceiver module vendor.

|SNMP agent|zyxel.3520_28.sfp.revision[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Date code|

MIB: ZYXEL-TRANSCEIVER-MIB

Transceiver module vendor's manufacturing date code.

|SNMP agent|zyxel.3520_28.sfp.datecode[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX}: Transceiver|

MIB: ZYXEL-TRANSCEIVER-MIB

Transceiver module type names.

|SNMP agent|zyxel.3520_28.sfp.transceiver[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for SFP without DDM discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: SFP {#SNMPINDEX} has been replaced|

SFP {#SNMPINDEX} serial number has changed. Acknowledge to close the problem manually.

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}],#1)<>last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}],#2) and length(last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.sfp.serialnumber[{#SNMPINDEX}]))>0`|Info|**Manual close**: Yes| ### LLD rule SFP with DDM discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |SFP with DDM discovery|

SFP DDM module discovery.

|SNMP agent|zyxel.3520_28.sfp.ddm.discovery

**Preprocessing**

| ### Item prototypes for SFP with DDM discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL MGS3520-28x: SFP {#ZYXEL.SFP.PORT}: {#ZYXEL.SFP.DESCRIPTION}|

MIB: ZYXEL-TRANSCEIVER-MIB

Transceiver module DDM data ({#ZYXEL.SFP.DESCRIPTION}).

|SNMP agent|zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for SFP with DDM discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL MGS3520-28x: SFP {#ZYXEL.SFP.PORT}: High {#ZYXEL.SFP.DESCRIPTION}|

The upper threshold value of the parameter is exceeded

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]) > {#ZYXEL.SFP.WARN.MAX}`|Warning|**Manual close**: Yes| |ZYXEL MGS3520-28x: SFP {#ZYXEL.SFP.PORT}: Low {#ZYXEL.SFP.DESCRIPTION}|

The parameter values are less than the lower threshold

|`last(/ZYXEL MGS3520-28x by SNMP/zyxel.3520_28.sfp.ddm[{#SNMPINDEX}]) < {#ZYXEL.SFP.WARN.MIN}`|Warning|**Manual close**: Yes| ## Feedback Please report any issues with the template at [`https://support.zabbix.com`](https://support.zabbix.com) You can also provide feedback, discuss the template, or ask for help at [`ZABBIX forums`](https://www.zabbix.com/forum/zabbix-suggestions-and-feedback)