This template is designed for the effortless deployment of Windows monitoring by Zabbix via SNMP and doesn't require any external scripts.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Refer to the vendor documentation.
Name | Description | Default |
---|---|---|
{$SNMP.TIMEOUT} | 5m |
|
{$ICMPLOSSWARN} | 20 |
|
{$ICMPRESPONSETIME_WARN} | 0.15 |
|
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^(/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSNAME.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.+ |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
CHANGE_IF_NEEDED |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$ |
{$VFS.FS.PUSED.MAX.CRIT} | 90 |
|
{$VFS.FS.PUSED.MAX.WARN} | 80 |
|
{$MEMORY.UTIL.MAX} | The warning threshold of the "Physical memory: Memory utilization" item. |
90 |
{$MEMORY.TYPE.NOT_MATCHES} | This macro is used in memory discovery. Can be overridden on the host or linked template level if you need to filter out results. |
CHANGE_IF_NEEDED |
{$MEMORY.TYPE.MATCHES} | This macro is used in memory discovery. Can be overridden on the host or linked template level. |
.*(\.2|hrStorageRam)$ |
{$MEMORY.NAME.MATCHES} | This macro is used in memory discovery. Can be overridden on the host or linked template level. |
.* |
{$MEMORY.NAME.NOT_MATCHES} | This macro is used in memory discovery. Can be overridden on the host or linked template level if you need to filter out results. |
CHANGE_IF_NEEDED |
{$CPU.UTIL.CRIT} | 90 |
|
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | ^.*$ |
|
{$NET.IF.IFNAME.NOT_MATCHES} | Filter out loopbacks, nulls, docker veth links and docker0 bridge by default |
Macro too long. Please see the template. |
{$NET.IF.IFOPERSTATUS.MATCHES} | ^.*$ |
|
{$NET.IF.IFOPERSTATUS.NOT_MATCHES} | Ignore notPresent(6) |
^6$ |
{$NET.IF.IFADMINSTATUS.MATCHES} | ^.*$ |
|
{$NET.IF.IFADMINSTATUS.NOT_MATCHES} | Ignore down(2) administrative status |
^2$ |
{$NET.IF.IFDESCR.MATCHES} | .* |
|
{$NET.IF.IFDESCR.NOT_MATCHES} | Macro too long. Please see the template. |
|
{$NET.IF.IFALIAS.MATCHES} | .* |
|
{$NET.IF.IFALIAS.NOT_MATCHES} | CHANGE_IF_NEEDED |
|
{$NET.IF.IFTYPE.MATCHES} | .* |
|
{$NET.IF.IFTYPE.NOT_MATCHES} | CHANGE_IF_NEEDED |
|
{$IF.UTIL.MAX} | 90 |
|
{$IF.ERRORS.WARN} | 2 |
Name | Description | Type | Key and additional info |
---|---|---|---|
Windows: Uptime (network) | MIB: SNMPv2-MIB The time (in hundredths of a second) since the network management portion of the system was last re-initialized. |
SNMP agent | system.net.uptime[sysUpTime.0] Preprocessing
|
Windows: 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 | system.hw.uptime[hrSystemUptime.0] Preprocessing
|
Windows: SNMP traps (fallback) | The item is used to collect all SNMP traps unmatched by other snmptrap items |
SNMP trap | snmptrap.fallback |
Windows: System location | MIB: SNMPv2-MIB The physical location of this node (e.g., `telephone closet, 3rd floor'). If the location is unknown, the value is the zero-length string. |
SNMP agent | system.location[sysLocation.0] Preprocessing
|
Windows: System contact details | MIB: SNMPv2-MIB The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string. |
SNMP agent | system.contact[sysContact.0] Preprocessing
|
Windows: System object ID | MIB: SNMPv2-MIB The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining |
SNMP agent | system.objectid[sysObjectID.0] Preprocessing
|
Windows: System name | MIB: SNMPv2-MIB An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string. |
SNMP agent | system.name Preprocessing
|
Windows: System description | MIB: SNMPv2-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. |
SNMP agent | system.descr[sysDescr.0] Preprocessing
|
Windows: SNMP agent availability | Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list. Possible value: 0 - not available 1 - available 2 - unknown |
Zabbix internal | zabbix[host,snmp,available] |
Windows: ICMP ping | Simple check | icmpping | |
Windows: ICMP loss | Simple check | icmppingloss | |
Windows: ICMP response time | Simple check | icmppingsec | |
Windows: CPU utilization | MIB: HOST-RESOURCES-MIB The average, over the last minute, of the percentage of time that processors was not idle. Implementations may approximate this one minute smoothing period if necessary. |
SNMP agent | system.cpu.util Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Windows: Host has been restarted | Uptime is less than 10 minutes. |
(last(/Windows by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Windows by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Windows by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Windows by SNMP/system.net.uptime[sysUpTime.0])<10m) |Warning |
Manual close: Yes Depends on:
|
|
Windows: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
last(/Windows by SNMP/system.name,#1)<>last(/Windows by SNMP/system.name,#2) and length(last(/Windows by SNMP/system.name))>0 |Info |
Manual close: Yes | |
Windows: No SNMP data collection | SNMP is not available for polling. Please check device connectivity and SNMP settings. |
max(/Windows by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0 |Warning |
Depends on:
|
|
Windows: Unavailable by ICMP ping | Last three attempts returned timeout. Please check device connectivity. |
max(/Windows by SNMP/icmpping,#3)=0 |High |
||
Windows: High ICMP ping loss | min(/Windows by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Windows by SNMP/icmppingloss,5m)<100 |Warning |
Depends on:
|
||
Windows: High ICMP ping response time | avg(/Windows by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN} |Warning |
Depends on:
|
||
Windows: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Windows by SNMP/system.cpu.util,5m)>{$CPU.UTIL.CRIT} |Warning |
Name | Description | Type | Key and additional info |
---|---|---|---|
Storage discovery | HOST-RESOURCES-MIB::hrStorage discovery with storage filter. |
SNMP agent | vfs.fs.discovery[snmp] |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Used space | MIB: HOST-RESOURCES-MIB The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits. |
SNMP agent | vfs.fs.used[hrStorageUsed.{#SNMPINDEX}] Preprocessing
|
{#FSNAME}: Total space | MIB: HOST-RESOURCES-MIB The size of the storage represented by this entry, in units of hrStorageAllocationUnits. This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system. For example, the amount of main storage allocated to a buffer pool might be modified or the amount of disk space allocated to virtual storage might be modified. |
SNMP agent | vfs.fs.total[hrStorageSize.{#SNMPINDEX}] Preprocessing
|
{#FSNAME}: Space utilization | The space utilization expressed in % for {#FSNAME}. |
Calculated | vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Disk space is critically low | The storage space usage exceeds the |
last(/Windows by SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | |
{#FSNAME}: Disk space is low | The storage space usage exceeds the |
last(/Windows by SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Memory discovery | HOST-RESOURCES-MIB::hrStorage discovery with memory filter |
SNMP agent | vm.memory.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#MEMNAME}: Used memory | MIB: HOST-RESOURCES-MIB The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits. |
SNMP agent | vm.memory.used[hrStorageUsed.{#SNMPINDEX}] Preprocessing
|
{#MEMNAME}: Total memory | MIB: HOST-RESOURCES-MIB The size of the storage represented by this entry, in units of hrStorageAllocationUnits. This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system. For example, the amount of main memory allocated to a buffer pool might be modified or the amount of disk space allocated to virtual memory might be modified. |
SNMP agent | vm.memory.total[hrStorageSize.{#SNMPINDEX}] Preprocessing
|
{#MEMNAME}: Memory utilization | Memory utilization in %. |
Calculated | vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#MEMNAME}: High memory utilization | The system is running out of free memory. |
min(/Windows by SNMP/vm.memory.util[memoryUsedPercentage.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX} |Average |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interfaces discovery | Discovering interfaces from IF-MIB. |
SNMP agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Operational status | MIB: IF-MIB The current operational state of the interface. - The testing(3) state indicates that no operational packet scan be passed - If ifAdminStatus is down(2) then ifOperStatus should be down(2) - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection) - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components. |
SNMP agent | net.if.status[ifOperStatus.{#SNMPINDEX}] |
Interface {#IFNAME}({#IFALIAS}): Bits received | MIB: IF-MIB The total number of octets received on the interface,including framing characters. Discontinuities in the value of this counter can occur at re-initialization of the management system, and another times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.in[ifInOctets.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Bits sent | MIB: IF-MIB The total number of octets transmitted out of the interface, including framing characters. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.out[ifOutOctets.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors | MIB: IF-MIB For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.in.errors[ifInErrors.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors | MIB: IF-MIB For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.out.errors[ifOutErrors.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded | MIB: IF-MIB The number of outbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.out.discards[ifOutDiscards.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded | MIB: IF-MIB The number of inbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.in.discards[ifInDiscards.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Interface type | MIB: IF-MIB The type of interface. Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA), through updating the syntax of the IANAifType textual convention. |
SNMP agent | net.if.type[ifType.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Speed | MIB: IF-MIB An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of |
SNMP agent | net.if.speed[ifHighSpeed.{#SNMPINDEX}] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Windows by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Windows by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2)) |Average |
Manual close: Yes | |
Interface {#IFNAME}({#IFALIAS}): High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Windows by SNMP/net.if.in[ifInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or avg(/Windows by SNMP/net.if.out[ifOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and last(/Windows by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): High error rate | It recovers when it is below 80% of the |
min(/Windows by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Windows by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Windows by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and ( last(/Windows by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or last(/Windows by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or last(/Windows by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or last(/Windows by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or last(/Windows by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or last(/Windows by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117 ) and (last(/Windows by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2) |Info |
Manual close: Yes Depends on:
|
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
New official Windows template. Requires agent of Zabbix 6.0 and newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on Windows OS according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.NODATA_TIMEOUT} | No data timeout for active agents. Consider to keep it relatively high. |
30m |
{$CPU.INTERRUPT.CRIT.MAX} | The critical threshold of the % Interrupt Time counter. |
50 |
{$CPU.PRIV.CRIT.MAX} | The threshold of the % Privileged Time counter. |
30 |
{$CPU.QUEUE.CRIT.MAX} | The threshold of the Processor Queue Length counter. |
3 |
{$CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$MEM.PAGETABLECRIT.MIN} | The warning threshold of the Free System Page Table Entries counter. |
5000 |
{$MEM.PAGE_SEC.CRIT.MAX} | The warning threshold of the Memory Pages/sec counter. |
1000 |
{$MEMORY.UTIL.MAX} | The warning threshold of the Memory util item. |
90 |
{$SWAP.PFREE.MIN.WARN} | The warning threshold of the minimum free swap. |
20 |
{$VFS.FS.FSNAME.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.* |
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^(?:/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.* |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$VFS.FS.FSDRIVETYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
fixed |
{$VFS.FS.FSDRIVETYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$VFS.FS.PUSED.MAX.CRIT} | The critical threshold of the filesystem utilization in percent. |
90 |
{$VFS.FS.PUSED.MAX.WARN} | The warning threshold of the filesystem utilization in percent. |
80 |
{$VFS.DEV.DEVNAME.MATCHES} | This macro is used in physical disks discovery. Can be overridden on the host or linked template level. |
.* |
{$VFS.DEV.DEVNAME.NOT_MATCHES} | This macro is used in physical disks discovery. Can be overridden on the host or linked template level. |
_Total |
{$VFS.DEV.UTIL.MAX.WARN} | The warning threshold of disk time utilization in percent. |
95 |
{$VFS.DEV.READ.AWAIT.WARN} | Disk read average response time (in s) before the trigger would fire. |
0.02 |
{$VFS.DEV.WRITE.AWAIT.WARN} | Disk write average response time (in s) before the trigger would fire. |
0.02 |
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
.* |
{$NET.IF.IFNAME.NOT_MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$NET.IF.IFALIAS.MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
.* |
{$NET.IF.IFALIAS.NOT_MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
CHANGE_THIS |
{$NET.IF.IFDESCR.MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
.* |
{$NET.IF.IFDESCR.NOT_MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
CHANGE_THIS |
{$IF.UTIL.MAX} | 90 |
|
{$IF.ERRORS.WARN} | 2 |
|
{$SERVICE.NAME.MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
^.*$ |
{$SERVICE.NAME.NOT_MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$SERVICE.STARTUPNAME.MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
^(?:automatic|automatic delayed)$ |
{$SERVICE.STARTUPNAME.NOT_MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
^(?:manual|disabled)$ |
Name | Description | Type | Key and additional info |
---|---|---|---|
Windows: Version of Zabbix agent running | Zabbix agent (active) | agent.version Preprocessing
|
|
Windows: Host name of Zabbix agent running | Zabbix agent (active) | agent.hostname Preprocessing
|
|
Windows: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for availability check. |
Zabbix agent (active) | agent.ping |
Windows: CPU utilization | The CPU utilization expressed in %. |
Zabbix agent (active) | system.cpu.util |
Windows: CPU interrupt time | The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing hardware interrupts during sample intervals. This value is an indirect indicator of the activity of devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication lines, network interface cards and other peripheral devices. This is an easy way to identify a potential hardware failure. This should never be higher than 20%. |
Zabbix agent (active) | perfcounteren["\Processor Information(_total)\% Interrupt Time"] |
Windows: Context switches per second | Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another. Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service. It is the sum of Thread\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches. There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. |
Zabbix agent (active) | perfcounteren["\System\Context Switches/sec"] |
Windows: CPU privileged time | The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode functions of the Windows® Operating System. |
Zabbix agent (active) | perfcounteren["\Processor Information(_total)\% Privileged Time"] |
Windows: CPU DPC time | Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is sustained, there may be a processor bottleneck or an application or hardware related issue that can significantly diminish overall system performance. |
Zabbix agent (active) | perfcounteren["\Processor Information(_total)\% DPC Time"] |
Windows: CPU user time | The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing in User mode. |
Zabbix agent (active) | perfcounteren["\Processor Information(_total)\% User Time"] |
Windows: Number of cores | The number of logical processors available on the computer. |
Zabbix agent (active) | wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] |
Windows: CPU queue length | The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue and are waiting to be executed. |
Zabbix agent (active) | perfcounteren["\System\Processor Queue Length"] |
Windows: Used memory | Used memory in bytes. |
Zabbix agent (active) | vm.memory.size[used] |
Windows: Total memory | The total memory expressed in bytes. |
Zabbix agent (active) | vm.memory.size[total] |
Windows: Memory utilization | Memory utilization in %. |
Calculated | vm.memory.util |
Windows: Cache bytes | Cache Bytes is the sum of the Memory\System Cache Resident Bytes, Memory\System Driver Resident Bytes, Memory\System Code Resident Bytes, and Memory\Pool Paged Resident Bytes counters. This counter displays the last observed value only; it is not an average. |
Zabbix agent (active) | perfcounteren["\Memory\Cache Bytes"] |
Windows: Free swap space | The free space of the swap volume/file expressed in bytes. |
Calculated | system.swap.free |
Windows: Free swap space in % | The free space of the swap volume/file expressed in %. |
Dependent item | system.swap.pfree Preprocessing
|
Windows: Used swap space in % | The used space of swap volume/file in percent. |
Zabbix agent (active) | perfcounteren["\Paging file(_Total)\% Usage"] |
Windows: Total swap space | The total space of the swap volume/file expressed in bytes. |
Zabbix agent (active) | system.swap.size[,total] |
Windows: Free system page table entries | This indicates the number of page table entries not currently in use by the system. If the number is less than 5,000, there may well be a memory leak or you running out of memory. |
Zabbix agent (active) | perfcounteren["\Memory\Free System Page Table Entries"] |
Windows: Memory page faults per second | Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages faulted per second because only one page is faulted in each fault operation, hence this is also equal to the number of page fault operations. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause significant delays. |
Zabbix agent (active) | perfcounteren["\Memory\Page Faults/sec"] |
Windows: Memory pages per second | This measures the rate at which pages are read from or written to disk to resolve hard page faults. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. |
Zabbix agent (active) | perfcounteren["\Memory\Pages/sec"] |
Windows: Memory pool non-paged | This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects that cannot be written to disk but instead must remain in physical memory as long as they are allocated. There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch). A typical Event ID 2019 is recorded in the system event log. |
Zabbix agent (active) | perfcounteren["\Memory\Pool Nonpaged Bytes"] |
Windows: Uptime | The system uptime expressed in the following format: "N days, hh:mm:ss". |
Zabbix agent (active) | system.uptime |
Windows: System local time | The local system time of the host. |
Zabbix agent (active) | system.localtime |
Windows: System name | The host name of the system. |
Zabbix agent (active) | system.hostname Preprocessing
|
Windows: System description | System description of the host. |
Zabbix agent (active) | system.uname Preprocessing
|
Windows: Number of processes | The number of processes. |
Zabbix agent (active) | proc.num[] |
Windows: Number of threads | The number of threads used by all running processes. |
Zabbix agent (active) | perfcounteren["\System\Threads"] |
Windows: Operating system architecture | The architecture of the operating system. |
Zabbix agent (active) | system.sw.arch Preprocessing
|
Windows: Network interfaces WMI get | Raw data of win32_networkadapter. |
Zabbix agent (active) | wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Windows: Zabbix agent is not available | For active agents, nodata() with agent.ping is used with {$AGENT.NODATA_TIMEOUT} as time threshold. |
nodata(/Windows by Zabbix agent active/agent.ping,{$AGENT.NODATA_TIMEOUT})=1 |Average |
Manual close: Yes | |
Windows: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Windows by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT} |Warning |
||
Windows: CPU interrupt time is too high | "The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%." |
min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: CPU privileged time is too high | The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%. |
min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: CPU queue length is too high | The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }. |
min(/Windows by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: High memory utilization | The system is running out of free memory. |
min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX} |Average |
||
Windows: High swap space usage | This trigger is ignored, if there is no swap configured |
max(/Windows by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows by Zabbix agent active/system.swap.size[,total])>0 |Warning |
Depends on:
|
|
Windows: Number of free system page table entries is too low | The Memory Free System Page Table Entries is less than {$MEM.PAGETABLECRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak. |
max(/Windows by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN} |Warning |
Depends on:
|
|
Windows: The Memory Pages/sec is too high | The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. |
min(/Windows by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: Host has been restarted | The device uptime is less than 10 minutes. |
last(/Windows by Zabbix agent active/system.uptime)<10m |Warning |
Manual close: Yes | |
Windows: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
change(/Windows by Zabbix agent active/system.hostname) and length(last(/Windows by Zabbix agent active/system.hostname))>0 |Info |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | Discovery of file systems of different types. |
Zabbix agent (active) | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSLABEL}({#FSNAME}): Used space | Used storage in bytes |
Zabbix agent (active) | vfs.fs.size[{#FSNAME},used] |
{#FSLABEL}({#FSNAME}): Total space | Total space in bytes |
Zabbix agent (active) | vfs.fs.size[{#FSNAME},total] |
{#FSLABEL}({#FSNAME}): Space utilization | Space utilization in % for {#FSNAME} |
Zabbix agent (active) | vfs.fs.size[{#FSNAME},pused] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSLABEL}({#FSNAME}): Disk space is critically low | The volume's space usage exceeds the |
last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | |
{#FSLABEL}({#FSNAME}): Disk space is low | The volume's space usage exceeds the |
last(/Windows by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Physical disks discovery | Discovery of installed physical disks. |
Zabbix agent (active) | perfinstanceen.discovery[PhysicalDisk] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
{#DEVNAME}: Disk read rate | Rate of read operations on the disk. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] |
{#DEVNAME}: Disk write rate | Rate of write operations on the disk. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] |
{#DEVNAME}: Disk average queue size (avgqu-sz) | The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] |
{#DEVNAME}: Disk utilization by idle time | This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\% Idle Time",60] Preprocessing
|
{#DEVNAME}: Disk read request avg waiting time | The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] |
{#DEVNAME}: Disk write request avg waiting time | The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] |
{#DEVNAME}: Average disk read queue length | Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] |
{#DEVNAME}: Average disk write queue length | Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected. |
Zabbix agent (active) | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#DEVNAME}: Disk is overloaded | The disk appears to be under heavy load. |
min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN} |Warning |
Manual close: Yes Depends on:
|
|
{#DEVNAME}: Disk read request responses are too high | This trigger might indicate the disk {#DEVNAME} saturation. |
min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes | |
{#DEVNAME}: Disk write request responses are too high | This trigger might indicate the disk {#DEVNAME} saturation. |
min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interfaces discovery | Discovery of installed network interfaces. |
Dependent item | net.if.discovery Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Bits received | Incoming traffic on the network interface. |
Zabbix agent (active) | net.if.in["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Bits sent | Outgoing traffic on the network interface. |
Zabbix agent (active) | net.if.out["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded | The number of incoming packets dropped on the network interface. |
Zabbix agent (active) | net.if.in["{#IFGUID}",dropped] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded | The number of outgoing packets dropped on the network interface. |
Zabbix agent (active) | net.if.out["{#IFGUID}",dropped] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors | The number of incoming packets with errors on the network interface. |
Zabbix agent (active) | net.if.in["{#IFGUID}",errors] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors | The number of outgoing packets with errors on the network interface. |
Zabbix agent (active) | net.if.out["{#IFGUID}",errors] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Speed | Estimated bandwidth of the network interface if any. |
Dependent item | net.if.speed["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Interface type | The type of the network interface. |
Dependent item | net.if.type["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Operational status | The operational status of the network interface. |
Dependent item | net.if.status["{#IFGUID}"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Windows by Zabbix agent active/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"]) or avg(/Windows by Zabbix agent active/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])) and last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): High error rate | It recovers when it is below 80% of the |
min(/Windows by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])<0 and last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])=2 |Info |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#2)) |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Windows services discovery | Discovery of Windows services of different types as defined in template's macros. |
Zabbix agent (active) | service.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) | Zabbix agent (active) | service.info["{#SERVICE.NAME}",state] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running | The service has a state other than "Running" for the last three times. |
min(/Windows by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0 |Average |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
New official Windows template. Requires agent of Zabbix 6.0 and newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on Windows OS according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | Timeout after which agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (passive mode). |
3m |
{$CPU.INTERRUPT.CRIT.MAX} | The critical threshold of the % Interrupt Time counter. |
50 |
{$CPU.PRIV.CRIT.MAX} | The threshold of the % Privileged Time counter. |
30 |
{$CPU.QUEUE.CRIT.MAX} | The threshold of the Processor Queue Length counter. |
3 |
{$CPU.UTIL.CRIT} | The critical threshold of the CPU utilization expressed in %. |
90 |
{$MEM.PAGETABLECRIT.MIN} | The warning threshold of the Free System Page Table Entries counter. |
5000 |
{$MEM.PAGE_SEC.CRIT.MAX} | The warning threshold of the Memory Pages/sec counter. |
1000 |
{$MEMORY.UTIL.MAX} | The warning threshold of the Memory util item. |
90 |
{$SWAP.PFREE.MIN.WARN} | The warning threshold of the minimum free swap. |
20 |
{$VFS.FS.FSNAME.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.* |
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^(?:/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.* |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$VFS.FS.FSDRIVETYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
fixed |
{$VFS.FS.FSDRIVETYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$VFS.FS.PUSED.MAX.CRIT} | The critical threshold of the filesystem utilization in percent. |
90 |
{$VFS.FS.PUSED.MAX.WARN} | The warning threshold of the filesystem utilization in percent. |
80 |
{$VFS.DEV.DEVNAME.MATCHES} | This macro is used in physical disks discovery. Can be overridden on the host or linked template level. |
.* |
{$VFS.DEV.DEVNAME.NOT_MATCHES} | This macro is used in physical disks discovery. Can be overridden on the host or linked template level. |
_Total |
{$VFS.DEV.UTIL.MAX.WARN} | The warning threshold of disk time utilization in percent. |
95 |
{$VFS.DEV.READ.AWAIT.WARN} | Disk read average response time (in s) before the trigger would fire. |
0.02 |
{$VFS.DEV.WRITE.AWAIT.WARN} | Disk write average response time (in s) before the trigger would fire. |
0.02 |
{$SYSTEM.FUZZYTIME.MAX} | The upper threshold for difference of system time. |
60s |
{$SYSTEM.FUZZYTIME.MIN} | The lower threshold for difference of system time. Used in recovery expression to avoid trigger flapping. |
10s |
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
.* |
{$NET.IF.IFNAME.NOT_MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$NET.IF.IFALIAS.MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
.* |
{$NET.IF.IFALIAS.NOT_MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
CHANGE_THIS |
{$NET.IF.IFDESCR.MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
.* |
{$NET.IF.IFDESCR.NOT_MATCHES} | This macro is used in Network interface discovery. Can be overridden on the host or linked template level. |
CHANGE_THIS |
{$IF.UTIL.MAX} | 90 |
|
{$IF.ERRORS.WARN} | 2 |
|
{$SERVICE.NAME.MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
^.*$ |
{$SERVICE.NAME.NOT_MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$SERVICE.STARTUPNAME.MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
^(?:automatic|automatic delayed)$ |
{$SERVICE.STARTUPNAME.NOT_MATCHES} | This macro is used in Service discovery. Can be overridden on the host or linked template level. |
^(?:manual|disabled)$ |
Name | Description | Type | Key and additional info |
---|---|---|---|
Windows: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
Windows: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
Windows: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for availability check. |
Zabbix agent | agent.ping |
Windows: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Windows: CPU utilization | The CPU utilization expressed in %. |
Zabbix agent | system.cpu.util |
Windows: CPU interrupt time | The Processor Information\% Interrupt Time is the time the processor spends receiving and servicing hardware interrupts during sample intervals. This value is an indirect indicator of the activity of devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication lines, network interface cards and other peripheral devices. This is an easy way to identify a potential hardware failure. This should never be higher than 20%. |
Zabbix agent | perfcounteren["\Processor Information(_total)\% Interrupt Time"] |
Windows: Context switches per second | Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another. Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service. It is the sum of Thread\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches. There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. |
Zabbix agent | perfcounteren["\System\Context Switches/sec"] |
Windows: CPU privileged time | The Processor Information\% Privileged Time counter shows the percent of time that the processor is spent executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode functions of the Windows® Operating System. |
Zabbix agent | perfcounteren["\Processor Information(_total)\% Privileged Time"] |
Windows: CPU DPC time | Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. % DPC Time is a component of % Privileged Time because DPCs are executed in privileged mode. If a high % DPC Time is sustained, there may be a processor bottleneck or an application or hardware related issue that can significantly diminish overall system performance. |
Zabbix agent | perfcounteren["\Processor Information(_total)\% DPC Time"] |
Windows: CPU user time | The Processor Information\% User Time counter shows the percent of time that the processor(s) is spent executing in User mode. |
Zabbix agent | perfcounteren["\Processor Information(_total)\% User Time"] |
Windows: Number of cores | The number of logical processors available on the computer. |
Zabbix agent | wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] |
Windows: CPU queue length | The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue and are waiting to be executed. |
Zabbix agent | perfcounteren["\System\Processor Queue Length"] |
Windows: Used memory | Used memory in bytes. |
Zabbix agent | vm.memory.size[used] |
Windows: Total memory | The total memory expressed in bytes. |
Zabbix agent | vm.memory.size[total] |
Windows: Memory utilization | Memory utilization in %. |
Calculated | vm.memory.util |
Windows: Cache bytes | Cache Bytes is the sum of the Memory\System Cache Resident Bytes, Memory\System Driver Resident Bytes, Memory\System Code Resident Bytes, and Memory\Pool Paged Resident Bytes counters. This counter displays the last observed value only; it is not an average. |
Zabbix agent | perfcounteren["\Memory\Cache Bytes"] |
Windows: Free swap space | The free space of the swap volume/file expressed in bytes. |
Calculated | system.swap.free |
Windows: Free swap space in % | The free space of the swap volume/file expressed in %. |
Dependent item | system.swap.pfree Preprocessing
|
Windows: Used swap space in % | The used space of swap volume/file in percent. |
Zabbix agent | perfcounteren["\Paging file(_Total)\% Usage"] |
Windows: Total swap space | The total space of the swap volume/file expressed in bytes. |
Zabbix agent | system.swap.size[,total] |
Windows: Free system page table entries | This indicates the number of page table entries not currently in use by the system. If the number is less than 5,000, there may well be a memory leak or you running out of memory. |
Zabbix agent | perfcounteren["\Memory\Free System Page Table Entries"] |
Windows: Memory page faults per second | Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages faulted per second because only one page is faulted in each fault operation, hence this is also equal to the number of page fault operations. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause significant delays. |
Zabbix agent | perfcounteren["\Memory\Page Faults/sec"] |
Windows: Memory pages per second | This measures the rate at which pages are read from or written to disk to resolve hard page faults. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. |
Zabbix agent | perfcounteren["\Memory\Pages/sec"] |
Windows: Memory pool non-paged | This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects that cannot be written to disk but instead must remain in physical memory as long as they are allocated. There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch). A typical Event ID 2019 is recorded in the system event log. |
Zabbix agent | perfcounteren["\Memory\Pool Nonpaged Bytes"] |
Windows: Uptime | The system uptime expressed in the following format: "N days, hh:mm:ss". |
Zabbix agent | system.uptime |
Windows: System local time | The local system time of the host. |
Zabbix agent | system.localtime |
Windows: System name | The host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
Windows: System description | System description of the host. |
Zabbix agent | system.uname Preprocessing
|
Windows: Number of processes | The number of processes. |
Zabbix agent | proc.num[] |
Windows: Number of threads | The number of threads used by all running processes. |
Zabbix agent | perfcounteren["\System\Threads"] |
Windows: Operating system architecture | The architecture of the operating system. |
Zabbix agent | system.sw.arch Preprocessing
|
Windows: Network interfaces WMI get | Raw data of win32_networkadapter. |
Zabbix agent | wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Windows: Zabbix agent is not available | For passive only agents, host availability is used with {$AGENT.TIMEOUT} as time threshold. |
max(/Windows by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes | |
Windows: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Windows by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT} |Warning |
||
Windows: CPU interrupt time is too high | "The CPU Interrupt Time in the last 5 minutes exceeds {$CPU.INTERRUPT.CRIT.MAX}%." |
min(/Windows by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: CPU privileged time is too high | The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%. |
min(/Windows by Zabbix agent/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: CPU queue length is too high | The CPU Queue Length in the last 5 minutes exceeds {$CPU.QUEUE.CRIT.MAX}. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro {$CPU.QUEUE.CRIT.MAX }. |
min(/Windows by Zabbix agent/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows by Zabbix agent/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: High memory utilization | The system is running out of free memory. |
min(/Windows by Zabbix agent/vm.memory.util,5m)>{$MEMORY.UTIL.MAX} |Average |
||
Windows: High swap space usage | This trigger is ignored, if there is no swap configured |
max(/Windows by Zabbix agent/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows by Zabbix agent/system.swap.size[,total])>0 |Warning |
Depends on:
|
|
Windows: Number of free system page table entries is too low | The Memory Free System Page Table Entries is less than {$MEM.PAGETABLECRIT.MIN} for 5 minutes. If the number is less than 5,000, there may well be a memory leak. |
max(/Windows by Zabbix agent/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN} |Warning |
Depends on:
|
|
Windows: The Memory Pages/sec is too high | The Memory Pages/sec in the last 5 minutes exceeds {$MEM.PAGE_SEC.CRIT.MAX}. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. |
min(/Windows by Zabbix agent/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX} |Warning |
Depends on:
|
|
Windows: Host has been restarted | The device uptime is less than 10 minutes. |
last(/Windows by Zabbix agent/system.uptime)<10m |Warning |
Manual close: Yes | |
Windows: System time is out of sync | The host's system time is different from Zabbix server time. |
fuzzytime(/Windows by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0 |Warning |
Manual close: Yes | |
Windows: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
change(/Windows by Zabbix agent/system.hostname) and length(last(/Windows by Zabbix agent/system.hostname))>0 |Info |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | Discovery of file systems of different types. |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSLABEL}({#FSNAME}): Used space | Used storage in bytes |
Zabbix agent | vfs.fs.size[{#FSNAME},used] |
{#FSLABEL}({#FSNAME}): Total space | Total space in bytes |
Zabbix agent | vfs.fs.size[{#FSNAME},total] |
{#FSLABEL}({#FSNAME}): Space utilization | Space utilization in % for {#FSNAME} |
Zabbix agent | vfs.fs.size[{#FSNAME},pused] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSLABEL}({#FSNAME}): Disk space is critically low | The volume's space usage exceeds the |
last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | |
{#FSLABEL}({#FSNAME}): Disk space is low | The volume's space usage exceeds the |
last(/Windows by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Physical disks discovery | Discovery of installed physical disks. |
Zabbix agent | perfinstanceen.discovery[PhysicalDisk] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
{#DEVNAME}: Disk read rate | Rate of read operations on the disk. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] |
{#DEVNAME}: Disk write rate | Rate of write operations on the disk. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] |
{#DEVNAME}: Disk average queue size (avgqu-sz) | The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] |
{#DEVNAME}: Disk utilization by idle time | This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\% Idle Time",60] Preprocessing
|
{#DEVNAME}: Disk read request avg waiting time | The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] |
{#DEVNAME}: Disk write request avg waiting time | The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] |
{#DEVNAME}: Average disk read queue length | Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] |
{#DEVNAME}: Average disk write queue length | Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected. |
Zabbix agent | perfcounteren["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#DEVNAME}: Disk is overloaded | The disk appears to be under heavy load. |
min(/Windows by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN} |Warning |
Manual close: Yes Depends on:
|
|
{#DEVNAME}: Disk read request responses are too high | This trigger might indicate the disk {#DEVNAME} saturation. |
min(/Windows by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes | |
{#DEVNAME}: Disk write request responses are too high | This trigger might indicate the disk {#DEVNAME} saturation. |
min(/Windows by Zabbix agent/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interfaces discovery | Discovery of installed network interfaces. |
Dependent item | net.if.discovery Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Bits received | Incoming traffic on the network interface. |
Zabbix agent | net.if.in["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Bits sent | Outgoing traffic on the network interface. |
Zabbix agent | net.if.out["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded | The number of incoming packets dropped on the network interface. |
Zabbix agent | net.if.in["{#IFGUID}",dropped] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded | The number of outgoing packets dropped on the network interface. |
Zabbix agent | net.if.out["{#IFGUID}",dropped] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors | The number of incoming packets with errors on the network interface. |
Zabbix agent | net.if.in["{#IFGUID}",errors] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors | The number of outgoing packets with errors on the network interface. |
Zabbix agent | net.if.out["{#IFGUID}",errors] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Speed | Estimated bandwidth of the network interface if any. |
Dependent item | net.if.speed["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Interface type | The type of the network interface. |
Dependent item | net.if.type["{#IFGUID}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Operational status | The operational status of the network interface. |
Dependent item | net.if.status["{#IFGUID}"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Windows by Zabbix agent/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by Zabbix agent/net.if.speed["{#IFGUID}"]) or avg(/Windows by Zabbix agent/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by Zabbix agent/net.if.speed["{#IFGUID}"])) and last(/Windows by Zabbix agent/net.if.speed["{#IFGUID}"])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): High error rate | It recovers when it is below 80% of the |
min(/Windows by Zabbix agent/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Windows by Zabbix agent/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Windows by Zabbix agent/net.if.speed["{#IFGUID}"])<0 and last(/Windows by Zabbix agent/net.if.speed["{#IFGUID}"])>0 and last(/Windows by Zabbix agent/net.if.status["{#IFGUID}"])=2 |Info |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent/net.if.status["{#IFGUID}"],#2)) |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Windows services discovery | Discovery of Windows services of different types as defined in template's macros. |
Zabbix agent | service.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) | Zabbix agent | service.info["{#SERVICE.NAME}",state] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running | The service has a state other than "Running" for the last three times. |
min(/Windows by Zabbix agent/service.info["{#SERVICE.NAME}",state],#3)<>0 |Average |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
It is an official Solaris OS template. It requires Zabbix agent 6.0 or newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on Solaris OS according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | The timeout after which the agent is considered unavailable. It works only for the agents reachable from Zabbix server/proxy (in passive mode). |
3m |
Name | Description | Type | Key and additional info |
---|---|---|---|
Solaris: Maximum number of processes | It could be increased by using the sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxproc |
Solaris: Number of running processes | The number of processes in a running state. |
Zabbix agent | proc.num[,,run] |
Solaris: Number of processes | The total number of processes in any state. |
Zabbix agent | proc.num[] |
Solaris: Host boot time | Zabbix agent | system.boottime | |
Solaris: Interrupts per second | Zabbix agent | system.cpu.intr Preprocessing
|
|
Solaris: Processor load (1 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
Solaris: Processor load (5 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
Solaris: Processor load (15 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
Solaris: Context switches per second | Zabbix agent | system.cpu.switches Preprocessing
|
|
Solaris: CPU idle time | The time the CPU has spent doing nothing. |
Zabbix agent | system.cpu.util[,idle] |
Solaris: CPU iowait time | The amount of time the CPU has been waiting for the I/O to complete. |
Zabbix agent | system.cpu.util[,iowait] |
Solaris: CPU system time | The time the CPU has spent running the kernel and its processes. |
Zabbix agent | system.cpu.util[,system] |
Solaris: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Zabbix agent | system.cpu.util[,user] |
Solaris: Host name | A host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
Solaris: Host local time | Zabbix agent | system.localtime | |
Solaris: Free swap space | Zabbix agent | system.swap.size[,free] | |
Solaris: Free swap space in % | Zabbix agent | system.swap.size[,pfree] | |
Solaris: Total swap space | Zabbix agent | system.swap.size[,total] | |
Solaris: System information | The information as normally returned by the 'uname -a'. |
Zabbix agent | system.uname Preprocessing
|
Solaris: System uptime | Zabbix agent | system.uptime | |
Solaris: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
Solaris: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
Solaris: Available memory | The available memory is defined as free+cached+buffers memory. |
Zabbix agent | vm.memory.size[available] |
Solaris: Total memory | Zabbix agent | vm.memory.size[total] | |
Solaris: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
Solaris: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
Solaris: Zabbix agent availability | Monitoring agent availability status |
Zabbix internal | zabbix[host,agent,available] |
Solaris: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for the availability check. |
Zabbix agent | agent.ping |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Solaris: Configured max number of processes is too low | last(/Solaris by Zabbix agent/kernel.maxproc)<256 |Info |
|||
Solaris: Too many processes running | avg(/Solaris by Zabbix agent/proc.num[,,run],5m)>30 |Warning |
|||
Solaris: Too many processes | avg(/Solaris by Zabbix agent/proc.num[],5m)>300 |Warning |
|||
Solaris: Processor load is too high | avg(/Solaris by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |Warning |
|||
Solaris: Disk I/O is overloaded | The OS spends significant time waiting for the I/O (input/output) operations. It could be an indicator of performance issues with the storage system. |
avg(/Solaris by Zabbix agent/system.cpu.util[,iowait],5m)>20 |Warning |
||
Solaris: Hostname was changed | last(/Solaris by Zabbix agent/system.hostname,#1)<>last(/Solaris by Zabbix agent/system.hostname,#2) |Info |
|||
Solaris: Lack of free swap space | It probably means that the systems requires more physical memory. |
last(/Solaris by Zabbix agent/system.swap.size[,pfree])<50 |Warning |
||
Solaris: Host information was changed | last(/Solaris by Zabbix agent/system.uname,#1)<>last(/Solaris by Zabbix agent/system.uname,#2) |Info |
|||
Solaris: Server has just been restarted | change(/Solaris by Zabbix agent/system.uptime)<0 |Info |
|||
Solaris: /etc/passwd has been changed | last(/Solaris by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Solaris by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Warning |
|||
Solaris: Lack of available memory on server | last(/Solaris by Zabbix agent/vm.memory.size[available])<20M |Average |
|||
Solaris: Zabbix agent is not available | For passive checks only the availability of the agents and a host is used with {$AGENT.TIMEOUT} as the time threshold. |
max(/Solaris by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces as defined in the global regular expression "Network interfaces for discovery". |
Zabbix agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Incoming network traffic | Zabbix agent | net.if.in[{#IFNAME}] Preprocessing
|
|
Interface {#IFNAME}: Outgoing network traffic | Zabbix agent | net.if.out[{#IFNAME}] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | Discovery of different types of file systems as defined in the global regular expression "File systems for discovery". |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free inodes (percentage) | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] | |
{#FSNAME}: Free disk space | Zabbix agent | vfs.fs.size[{#FSNAME},free] | |
{#FSNAME}: Free disk space (percentage) | Zabbix agent | vfs.fs.size[{#FSNAME},pfree] | |
{#FSNAME}: Total disk space | Zabbix agent | vfs.fs.size[{#FSNAME},total] | |
{#FSNAME}: Used disk space | Zabbix agent | vfs.fs.size[{#FSNAME},used] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Free inodes is less than 20% | last(/Solaris by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree])<20 |Warning |
|||
{#FSNAME}: Free disk space is less than 20% | last(/Solaris by Zabbix agent/vfs.fs.size[{#FSNAME},pfree])<20 |Warning |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
It is an Official OpenBSD template. It requires Zabbix agent 6.0 or newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on OpenBSD according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | The timeout after which the agent is considered unavailable. It works only for the agents reachable from Zabbix server/proxy (in passive mode). |
3m |
Name | Description | Type | Key and additional info |
---|---|---|---|
OpenBSD: Maximum number of opened files | It could be increased by using the sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxfiles |
OpenBSD: Maximum number of processes | It could be increased by using the sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxproc |
OpenBSD: Number of running processes | The number of processes in a running state. |
Zabbix agent | proc.num[,,run] |
OpenBSD: Number of processes | The total number of processes in any state. |
Zabbix agent | proc.num[] |
OpenBSD: Host boot time | Zabbix agent | system.boottime | |
OpenBSD: Interrupts per second | Zabbix agent | system.cpu.intr Preprocessing
|
|
OpenBSD: Processor load (1 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
OpenBSD: Processor load (5 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
OpenBSD: Processor load (15 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
OpenBSD: Context switches per second | Zabbix agent | system.cpu.switches Preprocessing
|
|
OpenBSD: CPU idle time | The time the CPU has spent doing nothing. |
Zabbix agent | system.cpu.util[,idle] |
OpenBSD: CPU interrupt time | The amount of time the CPU has been servicing hardware interrupts. |
Zabbix agent | system.cpu.util[,interrupt] |
OpenBSD: CPU nice time | The time the CPU has spent running users' processes that have been niced. |
Zabbix agent | system.cpu.util[,nice] |
OpenBSD: CPU system time | The time the CPU has spent running the kernel and its processes. |
Zabbix agent | system.cpu.util[,system] |
OpenBSD: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Zabbix agent | system.cpu.util[,user] |
OpenBSD: Host name | A host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
OpenBSD: Host local time | Zabbix agent | system.localtime | |
OpenBSD: Free swap space | Zabbix agent | system.swap.size[,free] | |
OpenBSD: Free swap space in % | Zabbix agent | system.swap.size[,pfree] | |
OpenBSD: Total swap space | Zabbix agent | system.swap.size[,total] | |
OpenBSD: System information | The information as normally returned by the 'uname -a'. |
Zabbix agent | system.uname Preprocessing
|
OpenBSD: System uptime | Zabbix agent | system.uptime | |
OpenBSD: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
OpenBSD: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
OpenBSD: Available memory | The available memory is defined as free+cached+buffers memory. |
Zabbix agent | vm.memory.size[available] |
OpenBSD: Total memory | Zabbix agent | vm.memory.size[total] | |
OpenBSD: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
OpenBSD: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
OpenBSD: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for the availability check. |
Zabbix agent | agent.ping |
OpenBSD: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
OpenBSD: Configured max number of opened files is too low on {HOST.NAME} | last(/OpenBSD by Zabbix agent/kernel.maxfiles)<1024 |Info |
|||
OpenBSD: Configured max number of processes is too low on {HOST.NAME} | last(/OpenBSD by Zabbix agent/kernel.maxproc)<256 |Info |
|||
OpenBSD: Too many processes running on {HOST.NAME} | avg(/OpenBSD by Zabbix agent/proc.num[,,run],5m)>30 |Warning |
|||
OpenBSD: Too many processes on {HOST.NAME} | avg(/OpenBSD by Zabbix agent/proc.num[],5m)>300 |Warning |
|||
OpenBSD: Processor load is too high on {HOST.NAME} | avg(/OpenBSD by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |Warning |
|||
OpenBSD: Hostname was changed on {HOST.NAME} | last(/OpenBSD by Zabbix agent/system.hostname,#1)<>last(/OpenBSD by Zabbix agent/system.hostname,#2) |Info |
|||
OpenBSD: Lack of free swap space on {HOST.NAME} | It probably means that the systems requires more physical memory. |
last(/OpenBSD by Zabbix agent/system.swap.size[,pfree])<50 |Warning |
||
OpenBSD: Host information was changed on {HOST.NAME} | last(/OpenBSD by Zabbix agent/system.uname,#1)<>last(/OpenBSD by Zabbix agent/system.uname,#2) |Info |
|||
OpenBSD: {HOST.NAME} has just been restarted | change(/OpenBSD by Zabbix agent/system.uptime)<0 |Info |
|||
OpenBSD: /etc/passwd has been changed on {HOST.NAME} | last(/OpenBSD by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/OpenBSD by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Warning |
|||
OpenBSD: Lack of available memory on server {HOST.NAME} | last(/OpenBSD by Zabbix agent/vm.memory.size[available])<20M |Average |
|||
OpenBSD: Zabbix agent is not available | For passive checks only the availability of the agents and a host is used with {$AGENT.TIMEOUT} as the time threshold. |
max(/OpenBSD by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces as defined in the global regular expression "Network interfaces for discovery". |
Zabbix agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Incoming network traffic | Zabbix agent | net.if.in[{#IFNAME}] Preprocessing
|
|
Interface {#IFNAME}: Outgoing network traffic | Zabbix agent | net.if.out[{#IFNAME}] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | Discovery of different types of file systems as defined in the global regular expression "File systems for discovery". |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free inodes, % | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] | |
{#FSNAME}: Free disk space | Zabbix agent | vfs.fs.size[{#FSNAME},free] | |
{#FSNAME}: Free disk space, % | Zabbix agent | vfs.fs.size[{#FSNAME},pfree] | |
{#FSNAME}: Total disk space | Zabbix agent | vfs.fs.size[{#FSNAME},total] | |
{#FSNAME}: Used disk space | Zabbix agent | vfs.fs.size[{#FSNAME},used] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Free inodes is less than 20% | last(/OpenBSD by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree])<20 |Warning |
|||
{#FSNAME}: Free disk space is less than 20% | last(/OpenBSD by Zabbix agent/vfs.fs.size[{#FSNAME},pfree])<20 |Warning |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
macOS is the operating system that powers every Mac
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on macOS according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | The timeout after which the agent is considered unavailable. It works only for the agents reachable from Zabbix server/proxy (in passive mode). |
3m |
Name | Description | Type | Key and additional info |
---|---|---|---|
macOS: Maximum number of opened files | It could be increased by using sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxfiles |
macOS: Maximum number of processes | It could be increased by using sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxproc |
macOS: Incoming network traffic on en0 | Zabbix agent | net.if.in[en0] Preprocessing
|
|
macOS: Outgoing network traffic on en0 | Zabbix agent | net.if.out[en0] Preprocessing
|
|
macOS: Host boot time | Zabbix agent | system.boottime | |
macOS: Processor load (1 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
macOS: Processor load (5 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
macOS: Processor load (15 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
macOS: Host name | A host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
macOS: Host local time | Zabbix agent | system.localtime | |
macOS: System information | The information as normally returned by the 'uname -a'. |
Zabbix agent | system.uname Preprocessing
|
macOS: System uptime | Zabbix agent | system.uptime | |
macOS: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
macOS: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
macOS: Available memory | The available memory is defined as free+cached+buffers memory. |
Zabbix agent | vm.memory.size[available] |
macOS: Total memory | Zabbix agent | vm.memory.size[total] | |
macOS: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
macOS: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
macOS: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for the availability check. |
Zabbix agent | agent.ping |
macOS: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
macOS: Configured max number of opened files is too low | last(/macOS by Zabbix agent/kernel.maxfiles)<1024 |Info |
|||
macOS: Configured max number of processes is too low | last(/macOS by Zabbix agent/kernel.maxproc)<256 |Info |
|||
macOS: Processor load is too high | avg(/macOS by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |Warning |
|||
macOS: Hostname was changed | last(/macOS by Zabbix agent/system.hostname,#1)<>last(/macOS by Zabbix agent/system.hostname,#2) |Info |
|||
macOS: Host information was changed | last(/macOS by Zabbix agent/system.uname,#1)<>last(/macOS by Zabbix agent/system.uname,#2) |Info |
|||
macOS: Server has just been restarted | change(/macOS by Zabbix agent/system.uptime)<0 |Info |
|||
macOS: /etc/passwd has been changed | last(/macOS by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/macOS by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Warning |
|||
macOS: Lack of available memory on server | last(/macOS by Zabbix agent/vm.memory.size[available])<20M |Average |
|||
macOS: Zabbix agent is not available | For passive checks only the availability of the agents and a host is used with {$AGENT.TIMEOUT} as the time threshold. |
max(/macOS by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | Discovery of different types of file systems as defined in the global regular expression "File systems for discovery". |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free inodes (percentage) | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] | |
{#FSNAME}: Free disk space | Zabbix agent | vfs.fs.size[{#FSNAME},free] | |
{#FSNAME}: Free disk space (percentage) | Zabbix agent | vfs.fs.size[{#FSNAME},pfree] | |
{#FSNAME}: Total disk space | Zabbix agent | vfs.fs.size[{#FSNAME},total] | |
{#FSNAME}: Used disk space | Zabbix agent | vfs.fs.size[{#FSNAME},used] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Free inodes is less than 20% | last(/macOS by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree])<20 |Warning |
|||
{#FSNAME}: Free disk space is less than 20% | last(/macOS by Zabbix agent/vfs.fs.size[{#FSNAME},pfree])<20 |Warning |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
This template is designed for the effortless deployment of Linux monitoring by Zabbix via SNMP and doesn't require any external scripts.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install snmpd agent on Linux OS, enable SNMPv2.
Make sure access to UCD-SNMP-MIB is allowed from Zabbix server/proxy host, since,
by default, snmpd (for example, in Ubuntu) limits access to basic system information only:
rocommunity public default -V systemonly
Make sure you change that in order to read metrics of UCD-SNMP-MIB and UCD-DISKIO-MIB. Please refer to the documentation:
http://www.net-snmp.org/wiki/index.php/Vacm
You can also try to use snmpconf
:
http://www.net-snmp.org/wiki/index.php/TUT:snmpd_configuration
Change {$SNMP_COMMUNITY} on the host level in Zabbix.
Name | Description | Default |
---|---|---|
{$MEMORY.UTIL.MAX} | 90 |
|
{$MEMORY.AVAILABLE.MIN} | 20M |
|
{$SWAP.PFREE.MIN.WARN} | 50 |
|
{$VFS.DEV.DEVNAME.MATCHES} | This macro is used in block devices discovery. Can be overridden on the host or linked template level |
.+ |
{$VFS.DEV.DEVNAME.NOT_MATCHES} | This macro is used in block devices discovery. Can be overridden on the host or linked template level |
Macro too long. Please see the template. |
{$CPU.UTIL.CRIT} | 90 |
|
{$LOADAVGPER_CPU.MAX.WARN} | Load per CPU considered sustainable. Tune if needed. |
1.5 |
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level |
^(/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSNAME.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level |
.+ |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level |
^\s$ |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level |
.*(\.4|\.9|hrStorageFixedDisk|hrStorageFlashMemory)$ |
{$VFS.FS.INODE.PFREE.MIN.CRIT} | 10 |
|
{$VFS.FS.INODE.PFREE.MIN.WARN} | 20 |
|
{$VFS.FS.PUSED.MAX.CRIT} | 90 |
|
{$VFS.FS.PUSED.MAX.WARN} | 80 |
|
{$SNMP.TIMEOUT} | 5m |
|
{$ICMPLOSSWARN} | 20 |
|
{$ICMPRESPONSETIME_WARN} | 0.15 |
|
{$IF.ERRORS.WARN} | 2 |
|
{$IF.UTIL.MAX} | 90 |
|
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | ^.*$ |
|
{$NET.IF.IFNAME.NOT_MATCHES} | Filter out loopbacks, nulls, docker veth links and docker0 bridge by default |
Macro too long. Please see the template. |
{$NET.IF.IFOPERSTATUS.MATCHES} | ^.*$ |
|
{$NET.IF.IFOPERSTATUS.NOT_MATCHES} | Ignore notPresent(6) |
^6$ |
{$NET.IF.IFADMINSTATUS.MATCHES} | ^.* |
|
{$NET.IF.IFADMINSTATUS.NOT_MATCHES} | Ignore down(2) administrative status |
^2$ |
{$NET.IF.IFDESCR.MATCHES} | .* |
|
{$NET.IF.IFDESCR.NOT_MATCHES} | CHANGE_IF_NEEDED |
|
{$NET.IF.IFALIAS.MATCHES} | .* |
|
{$NET.IF.IFALIAS.NOT_MATCHES} | CHANGE_IF_NEEDED |
|
{$NET.IF.IFTYPE.MATCHES} | .* |
|
{$NET.IF.IFTYPE.NOT_MATCHES} | CHANGE_IF_NEEDED |
Name | Description | Type | Key and additional info |
---|---|---|---|
Linux: Memory utilization | Please note that memory utilization is a rough estimate, since memory available is calculated as free+buffers+cached, which is not 100% accurate, but the best we can get using SNMP. |
Calculated | vm.memory.util[snmp] |
Linux: Free memory | MIB: UCD-SNMP-MIB |
SNMP agent | vm.memory.free[memAvailReal.0] Preprocessing
|
Linux: Memory (buffers) | MIB: UCD-SNMP-MIB Memory used by kernel buffers (Buffers in /proc/meminfo). |
SNMP agent | vm.memory.buffers[memBuffer.0] Preprocessing
|
Linux: Memory (cached) | MIB: UCD-SNMP-MIB Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo). |
SNMP agent | vm.memory.cached[memCached.0] Preprocessing
|
Linux: Total memory | MIB: UCD-SNMP-MIB The total memory expressed in bytes. |
SNMP agent | vm.memory.total[memTotalReal.0] Preprocessing
|
Linux: Available memory | Please note that memory utilization is a rough estimate, since memory available is calculated as free+buffers+cached, which is not 100% accurate, but the best we can get using SNMP. |
Calculated | vm.memory.available[snmp] |
Linux: Total swap space | MIB: UCD-SNMP-MIB The total amount of swap space configured for this host. |
SNMP agent | system.swap.total[memTotalSwap.0] Preprocessing
|
Linux: Free swap space | MIB: UCD-SNMP-MIB The amount of swap space currently unused or available. |
SNMP agent | system.swap.free[memAvailSwap.0] Preprocessing
|
Linux: Free swap space in % | The free space of the swap volume/file expressed in %. |
Calculated | system.swap.pfree[snmp] |
Linux: Load average (1m avg) | MIB: UCD-SNMP-MIB |
SNMP agent | system.cpu.load.avg1[laLoad.1] |
Linux: Load average (5m avg) | MIB: UCD-SNMP-MIB |
SNMP agent | system.cpu.load.avg5[laLoad.2] |
Linux: Load average (15m avg) | MIB: UCD-SNMP-MIB |
SNMP agent | system.cpu.load.avg15[laLoad.3] |
Linux: Number of CPUs | MIB: HOST-RESOURCES-MIB Count the number of CPU cores by counting number of cores discovered in hrProcessorTable using LLD |
SNMP agent | system.cpu.num[snmp] Preprocessing
|
Linux: Interrupts per second | SNMP agent | system.cpu.intr[ssRawInterrupts.0] Preprocessing
|
|
Linux: Context switches per second | SNMP agent | system.cpu.switches[ssRawContexts.0] Preprocessing
|
|
Linux: Uptime (network) | MIB: SNMPv2-MIB The time (in hundredths of a second) since the network management portion of the system was last re-initialized. |
SNMP agent | system.net.uptime[sysUpTime.0] Preprocessing
|
Linux: 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 | system.hw.uptime[hrSystemUptime.0] Preprocessing
|
Linux: SNMP traps (fallback) | The item is used to collect all SNMP traps unmatched by other snmptrap items |
SNMP trap | snmptrap.fallback |
Linux: System location | MIB: SNMPv2-MIB The physical location of this node (e.g., `telephone closet, 3rd floor'). If the location is unknown, the value is the zero-length string. |
SNMP agent | system.location[sysLocation.0] Preprocessing
|
Linux: System contact details | MIB: SNMPv2-MIB The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string. |
SNMP agent | system.contact[sysContact.0] Preprocessing
|
Linux: System object ID | MIB: SNMPv2-MIB The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining |
SNMP agent | system.objectid[sysObjectID.0] Preprocessing
|
Linux: System name | MIB: SNMPv2-MIB An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string. |
SNMP agent | system.name Preprocessing
|
Linux: System description | MIB: SNMPv2-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. |
SNMP agent | system.descr[sysDescr.0] Preprocessing
|
Linux: SNMP agent availability | Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list. Possible value: 0 - not available 1 - available 2 - unknown |
Zabbix internal | zabbix[host,snmp,available] |
Linux: ICMP ping | Simple check | icmpping | |
Linux: ICMP loss | Simple check | icmppingloss | |
Linux: ICMP response time | Simple check | icmppingsec |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Linux: High memory utilization | The system is running out of free memory. |
min(/Linux by SNMP/vm.memory.util[snmp],5m)>{$MEMORY.UTIL.MAX} |Average |
Depends on:
|
|
Linux: Lack of available memory | max(/Linux by SNMP/vm.memory.available[snmp],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by SNMP/vm.memory.total[memTotalReal.0])>0 |Average |
|||
Linux: High swap space usage | If there is no swap configured, this trigger is ignored. |
max(/Linux by SNMP/system.swap.pfree[snmp],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux by SNMP/system.swap.total[memTotalSwap.0])>0 |Warning |
Depends on:
|
|
Linux: Load average is too high | The load average per CPU is too high. The system may be slow to respond. |
min(/Linux by SNMP/system.cpu.load.avg1[laLoad.1],5m)/last(/Linux by SNMP/system.cpu.num[snmp])>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux by SNMP/system.cpu.load.avg5[laLoad.2])>0 and last(/Linux by SNMP/system.cpu.load.avg15[laLoad.3])>0 |Average |
||
Linux: Host has been restarted | Uptime is less than 10 minutes. |
(last(/Linux by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Linux by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Linux by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Linux by SNMP/system.net.uptime[sysUpTime.0])<10m) |Warning |
Manual close: Yes Depends on:
|
|
Linux: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
last(/Linux by SNMP/system.name,#1)<>last(/Linux by SNMP/system.name,#2) and length(last(/Linux by SNMP/system.name))>0 |Info |
Manual close: Yes | |
Linux: No SNMP data collection | SNMP is not available for polling. Please check device connectivity and SNMP settings. |
max(/Linux by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0 |Warning |
Depends on:
|
|
Linux: Unavailable by ICMP ping | Last three attempts returned timeout. Please check device connectivity. |
max(/Linux by SNMP/icmpping,#3)=0 |High |
||
Linux: High ICMP ping loss | min(/Linux by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Linux by SNMP/icmppingloss,5m)<100 |Warning |
Depends on:
|
||
Linux: High ICMP ping response time | avg(/Linux by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN} |Warning |
Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Block devices discovery | Block devices are discovered from UCD-DISKIO-MIB::diskIOTable (http://net-snmp.sourceforge.net/docs/mibs/ucdDiskIOMIB.html#diskIOTable) |
SNMP agent | vfs.dev.discovery[snmp] |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#DEVNAME}: Disk read rate | MIB: UCD-DISKIO-MIB The number of read accesses from this device since boot. |
SNMP agent | vfs.dev.read.rate[diskIOReads.{#SNMPINDEX}] Preprocessing
|
{#DEVNAME}: Disk write rate | MIB: UCD-DISKIO-MIB The number of write accesses from this device since boot. |
SNMP agent | vfs.dev.write.rate[diskIOWrites.{#SNMPINDEX}] Preprocessing
|
{#DEVNAME}: Disk utilization | MIB: UCD-DISKIO-MIB The 1 minute average load of disk (%) |
SNMP agent | vfs.dev.util[diskIOLA1.{#SNMPINDEX}] |
Name | Description | Type | Key and additional info |
---|---|---|---|
CPU discovery | This discovery will create set of per core CPU metrics from UCD-SNMP-MIB, using {#CPU.COUNT} in preprocessing. That's the only reason why LLD is used. |
Dependent item | cpu.discovery[snmp] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Linux: CPU idle time | MIB: UCD-SNMP-MIB The time the CPU has spent doing nothing. |
SNMP agent | system.cpu.idle[ssCpuRawIdle.{#SNMPINDEX}] Preprocessing
|
Linux: CPU system time | MIB: UCD-SNMP-MIB The time the CPU has spent running the kernel and its processes. |
SNMP agent | system.cpu.system[ssCpuRawSystem.{#SNMPINDEX}] Preprocessing
|
Linux: CPU user time | MIB: UCD-SNMP-MIB The time the CPU has spent running users' processes that are not niced. |
SNMP agent | system.cpu.user[ssCpuRawUser.{#SNMPINDEX}] Preprocessing
|
Linux: CPU steal time | MIB: UCD-SNMP-MIB The amount of "stolen" CPU from this virtual machine by the hypervisor for other tasks, such as running another virtual machine. |
SNMP agent | system.cpu.steal[ssCpuRawSteal.{#SNMPINDEX}] Preprocessing
|
Linux: CPU softirq time | MIB: UCD-SNMP-MIB The amount of time the CPU has been servicing software interrupts. |
SNMP agent | system.cpu.softirq[ssCpuRawSoftIRQ.{#SNMPINDEX}] Preprocessing
|
Linux: CPU nice time | MIB: UCD-SNMP-MIB The time the CPU has spent running users' processes that have been niced. |
SNMP agent | system.cpu.nice[ssCpuRawNice.{#SNMPINDEX}] Preprocessing
|
Linux: CPU iowait time | MIB: UCD-SNMP-MIB The amount of time the CPU has been waiting for I/O to complete. |
SNMP agent | system.cpu.iowait[ssCpuRawWait.{#SNMPINDEX}] Preprocessing
|
Linux: CPU interrupt time | MIB: UCD-SNMP-MIB The amount of time the CPU has been servicing hardware interrupts. |
SNMP agent | system.cpu.interrupt[ssCpuRawInterrupt.{#SNMPINDEX}] Preprocessing
|
Linux: CPU guest time | MIB: UCD-SNMP-MIB Guest time - the time spent on running a virtual CPU for a guest operating system. |
SNMP agent | system.cpu.guest[ssCpuRawGuest.{#SNMPINDEX}] Preprocessing
|
Linux: CPU guest nice time | MIB: UCD-SNMP-MIB The time spent on running a niced guest (a virtual CPU for guest operating systems under the control of the Linux kernel). |
SNMP agent | system.cpu.guest_nice[ssCpuRawGuestNice.{#SNMPINDEX}] Preprocessing
|
Linux: CPU utilization | The CPU utilization expressed in %. |
Dependent item | system.cpu.util[snmp,{#SNMPINDEX}] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Linux: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Linux by SNMP/system.cpu.util[snmp,{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT} |Warning |
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | HOST-RESOURCES-MIB::hrStorage discovery with storage filter |
SNMP agent | vfs.fs.discovery[snmp] |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Used space | MIB: HOST-RESOURCES-MIB The amount of the storage represented by this entry that is allocated, in units of hrStorageAllocationUnits. |
SNMP agent | vfs.fs.used[hrStorageUsed.{#SNMPINDEX}] Preprocessing
|
{#FSNAME}: Total space | MIB: HOST-RESOURCES-MIB The size of the storage represented by this entry, in units of hrStorageAllocationUnits. This object is writable to allow remote configuration of the size of the storage area in those cases where such an operation makes sense and is possible on the underlying system. For example, the amount of main storage allocated to a buffer pool might be modified or the amount of disk space allocated to virtual storage might be modified. |
SNMP agent | vfs.fs.total[hrStorageSize.{#SNMPINDEX}] Preprocessing
|
{#FSNAME}: Space utilization | The space utilization expressed in % for {#FSNAME}. |
Calculated | vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}] |
{#FSNAME}: Free inodes in % | MIB: UCD-SNMP-MIB If having problems collecting this item make sure access to UCD-SNMP-MIB is allowed. |
SNMP agent | vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Disk space is critically low | The volume's space usage exceeds the |
last(/Linux by SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | |
{#FSNAME}: Disk space is low | The volume's space usage exceeds the |
last(/Linux by SNMP/vfs.fs.pused[storageUsedPercentage.{#SNMPINDEX}])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"} |Average |
||
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by SNMP/vfs.fs.inode.pfree[dskPercentNode.{#SNMPINDEX}],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"} |Warning |
Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interfaces discovery | Discovering interfaces from IF-MIB. |
SNMP agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Operational status | MIB: IF-MIB The current operational state of the interface. - The testing(3) state indicates that no operational packet scan be passed - If ifAdminStatus is down(2) then ifOperStatus should be down(2) - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection) - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components. |
SNMP agent | net.if.status[ifOperStatus.{#SNMPINDEX}] |
Interface {#IFNAME}({#IFALIAS}): Bits received | MIB: IF-MIB The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.in[ifHCInOctets.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Bits sent | 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.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.out[ifHCOutOctets.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors | MIB: IF-MIB For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.in.errors[ifInErrors.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors | MIB: IF-MIB For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.out.errors[ifOutErrors.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded | MIB: IF-MIB The number of outbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.out.discards[ifOutDiscards.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded | MIB: IF-MIB The number of inbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime. |
SNMP agent | net.if.in.discards[ifInDiscards.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Interface type | MIB: IF-MIB The type of interface. Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA), through updating the syntax of the IANAifType textual convention. |
SNMP agent | net.if.type[ifType.{#SNMPINDEX}] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Speed | MIB: IF-MIB An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of |
SNMP agent | net.if.speed[ifHighSpeed.{#SNMPINDEX}] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Linux by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Linux by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2)) |Average |
Manual close: Yes | |
Interface {#IFNAME}({#IFALIAS}): High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Linux by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or avg(/Linux by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and last(/Linux by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): High error rate | It recovers when it is below 80% of the |
min(/Linux by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Linux by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Linux by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and ( last(/Linux by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or last(/Linux by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or last(/Linux by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or last(/Linux by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or last(/Linux by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or last(/Linux by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117 ) and (last(/Linux by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2) |Info |
Manual close: Yes Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
EtherLike-MIB Discovery | Discovering interfaces from IF-MIB and EtherLike-MIB. Interfaces with up(1) Operational Status are discovered. |
SNMP agent | net.if.duplex.discovery Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Duplex status | MIB: EtherLike-MIB The current mode of operation of the MAC entity. 'unknown' indicates that the current duplex mode could not be determined. Management control of the duplex mode is accomplished through the MAU MIB. When an interface does not support autonegotiation, or when autonegotiation is not enabled, the duplex mode is controlled using ifMauDefaultType. When autonegotiation is supported and enabled, duplex mode is controlled using ifMauAutoNegAdvertisedBits. In either case, the currently operating duplex mode is reflected both in this object and in ifMauType. Note that this object provides redundant information with ifMauType. Normally, redundant objects are discouraged. However, in this instance, it allows a management application to determine the duplex status of an interface without having to know every possible value of ifMauType. This was felt to be sufficiently valuable to justify the redundancy. Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus. |
SNMP agent | net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): In half-duplex mode | Please check autonegotiation settings and cabling |
last(/Linux by SNMP/net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}])=2 |Warning |
Manual close: Yes |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
This template collects Linux metrics from nodeexporter 0.18 and above. Support for older nodeexporter versions is provided as 'best effort'.
Description: nodeexporter v0.16.0 renamed many metrics. CPU utilization for 'guest' and 'guestnice' metrics are not supported in this template with nodeexporter < 0.16. Disk IO metrics are not supported. Other metrics provided as 'best effort'. See https://github.com/prometheus/nodeexporter/releases/tag/v0.16.0 for details.
Description: metric nodenetworkinfo with label 'device' cannot be found, so network discovery is not possible.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Set up the nodeexporter according to the official documentation
. Use nodeexporter v0.18.0 or above.
Set the hostname or IP address of the node_exporter host in the {$NODE_EXPORTER_HOST}
macro. You can also change the Prometheus endpoint port in the {$NODE_EXPORTER_PORT}
macro if necessary.
Name | Description | Default |
---|---|---|
{$CPU.UTIL.CRIT} | 90 |
|
{$IF.ERRORS.WARN} | 2 |
|
{$IF.UTIL.MAX} | 90 |
|
{$SYSTEM.FUZZYTIME.MAX} | The upper threshold for difference of system time. |
60s |
{$SYSTEM.FUZZYTIME.MIN} | The lower threshold for difference of system time. Used in recovery expression to avoid trigger flapping. |
10s |
{$KERNEL.MAXFILES.MIN} | 256 |
|
{$LOADAVGPER_CPU.MAX.WARN} | Load per CPU considered sustainable. Tune if needed. |
1.5 |
{$NODEEXPORTERHOST} | The hostname or IP address of the node_exporter host. |
<SET NODE EXPORTER HOST> |
{$NODEEXPORTERPORT} | TCP Port node_exporter is listening on. |
9100 |
{$SWAP.PFREE.MIN.WARN} | 50 |
|
{$VFS.DEV.READ.AWAIT.WARN} | Disk read average response time (in ms) before the trigger would fire. |
20 |
{$VFS.DEV.WRITE.AWAIT.WARN} | Disk write average response time (in ms) before the trigger would fire. |
20 |
{$VFS.DEV.DEVNAME.NOT_MATCHES} | This macro is used in block devices discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$VFS.DEV.DEVNAME.MATCHES} | This macro is used in block devices discovery. Can be overridden on the host or linked template level. |
.+ |
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^(/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSNAME.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
.+ |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$VFS.FS.FSDEVICE.MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^.+$ |
{$VFS.FS.FSDEVICE.NOT_MATCHES} | This macro is used in filesystems discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$MEMORY.UTIL.MAX} | 90 |
|
{$MEMORY.AVAILABLE.MIN} | 20M |
|
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | ^.*$ |
|
{$NET.IF.IFNAME.NOT_MATCHES} | Filter out loopbacks, nulls, docker veth links and docker0 bridge by default. |
Macro too long. Please see the template. |
{$NET.IF.IFOPERSTATUS.MATCHES} | ^.*$ |
|
{$NET.IF.IFOPERSTATUS.NOT_MATCHES} | Ignore notpresent(1). |
^notpresent$ |
{$NET.IF.IFALIAS.MATCHES} | ^.*$ |
|
{$NET.IF.IFALIAS.NOT_MATCHES} | CHANGE_IF_NEEDED |
|
{$VFS.FS.INODE.PFREE.MIN.CRIT} | 10 |
|
{$VFS.FS.INODE.PFREE.MIN.WARN} | 20 |
|
{$VFS.FS.PUSED.MAX.CRIT} | 90 |
|
{$VFS.FS.PUSED.MAX.WARN} | 80 |
Name | Description | Type | Key and additional info |
---|---|---|---|
Linux: Get node_exporter metrics | HTTP agent | node_exporter.get | |
Linux: Version of node_exporter running | Dependent item | agent.version[node_exporter] Preprocessing
|
|
Linux: System boot time | Dependent item | system.boottime[node_exporter] Preprocessing
|
|
Linux: System local time | The local system time of the host. |
Dependent item | system.localtime[node_exporter] Preprocessing
|
Linux: System name | The host name of the system. |
Dependent item | system.name[node_exporter] Preprocessing
|
Linux: System description | Labeled system information as provided by the uname system call. |
Dependent item | system.descr[node_exporter] Preprocessing
|
Linux: Maximum number of open file descriptors | It could be increased by using |
Dependent item | kernel.maxfiles[node_exporter] Preprocessing
|
Linux: Number of open file descriptors | Dependent item | fd.open[node_exporter] Preprocessing
|
|
Linux: Operating system | Dependent item | system.sw.os[node_exporter] Preprocessing
|
|
Linux: Operating system architecture | The architecture of the operating system. |
Dependent item | system.sw.arch[node_exporter] Preprocessing
|
Linux: System uptime | The system uptime expressed in the following format: "N days, hh:mm:ss". |
Dependent item | system.uptime[node_exporter] Preprocessing
|
Linux: Load average (1m avg) | Dependent item | system.cpu.load.avg1[node_exporter] Preprocessing
|
|
Linux: Load average (5m avg) | Dependent item | system.cpu.load.avg5[node_exporter] Preprocessing
|
|
Linux: Load average (15m avg) | Dependent item | system.cpu.load.avg15[node_exporter] Preprocessing
|
|
Linux: Number of CPUs | Dependent item | system.cpu.num[node_exporter] Preprocessing
|
|
Linux: CPU idle time | The time the CPU has spent doing nothing. |
Dependent item | system.cpu.idle[node_exporter] Preprocessing
|
Linux: CPU utilization | The CPU utilization expressed in %. |
Dependent item | system.cpu.util[node_exporter] Preprocessing
|
Linux: CPU system time | The time the CPU has spent running the kernel and its processes. |
Dependent item | system.cpu.system[node_exporter] Preprocessing
|
Linux: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Dependent item | system.cpu.user[node_exporter] Preprocessing
|
Linux: CPU steal time | The amount of "stolen" CPU from this virtual machine by the hypervisor for other tasks, such as running another virtual machine. |
Dependent item | system.cpu.steal[node_exporter] Preprocessing
|
Linux: CPU softirq time | The amount of time the CPU has been servicing software interrupts. |
Dependent item | system.cpu.softirq[node_exporter] Preprocessing
|
Linux: CPU nice time | The time the CPU has spent running users' processes that have been niced. |
Dependent item | system.cpu.nice[node_exporter] Preprocessing
|
Linux: CPU iowait time | The amount of time the CPU has been waiting for I/O to complete. |
Dependent item | system.cpu.iowait[node_exporter] Preprocessing
|
Linux: CPU interrupt time | The amount of time the CPU has been servicing hardware interrupts. |
Dependent item | system.cpu.interrupt[node_exporter] Preprocessing
|
Linux: CPU guest time | Guest time - the time spent on running a virtual CPU for a guest operating system. |
Dependent item | system.cpu.guest[node_exporter] Preprocessing
|
Linux: CPU guest nice time | The time spent on running a niced guest (a virtual CPU for guest operating systems under the control of the Linux kernel). |
Dependent item | system.cpu.guestnice[nodeexporter] Preprocessing
|
Linux: Interrupts per second | Dependent item | system.cpu.intr[node_exporter] Preprocessing
|
|
Linux: Context switches per second | Dependent item | system.cpu.switches[node_exporter] Preprocessing
|
|
Linux: Memory utilization | Memory used percentage is calculated as (total-available)/total*100. |
Calculated | vm.memory.util[node_exporter] |
Linux: Total memory | The total memory expressed in bytes. |
Dependent item | vm.memory.total[node_exporter] Preprocessing
|
Linux: Available memory | The available memory: - in Linux - available = free + buffers + cache; - on other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the |
Dependent item | vm.memory.available[node_exporter] Preprocessing
|
Linux: Total swap space | The total space of the swap volume/file expressed in bytes. |
Dependent item | system.swap.total[node_exporter] Preprocessing
|
Linux: Free swap space | The free space of the swap volume/file expressed in bytes. |
Dependent item | system.swap.free[node_exporter] Preprocessing
|
Linux: Free swap space in % | The free space of the swap volume/file expressed in %. |
Calculated | system.swap.pfree[node_exporter] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Linux: node_exporter is not available | Failed to fetch system metrics from node_exporter in time. |
nodata(/Linux by Prom/node_exporter.get,30m)=1 |Warning |
Manual close: Yes | |
Linux: System time is out of sync | The host's system time is different from Zabbix server time. |
fuzzytime(/Linux by Prom/system.localtime[node_exporter],{$SYSTEM.FUZZYTIME.MAX})=0 |Warning |
Manual close: Yes | |
Linux: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
last(/Linux by Prom/system.name[node_exporter],#1)<>last(/Linux by Prom/system.name[node_exporter],#2) and length(last(/Linux by Prom/system.name[node_exporter]))>0 |Info |
Manual close: Yes | |
Linux: Configured max number of open filedescriptors is too low | last(/Linux by Prom/kernel.maxfiles[node_exporter])<{$KERNEL.MAXFILES.MIN} |Info |
Depends on:
|
||
Linux: Running out of file descriptors | last(/Linux by Prom/fd.open[node_exporter])/last(/Linux by Prom/kernel.maxfiles[node_exporter])*100>80 |Warning |
|||
Linux: Operating system description has changed | The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually. |
last(/Linux by Prom/system.sw.os[node_exporter],#1)<>last(/Linux by Prom/system.sw.os[node_exporter],#2) and length(last(/Linux by Prom/system.sw.os[node_exporter]))>0 |Info |
Manual close: Yes Depends on:
|
|
Linux: {HOST.NAME} has been restarted | The device uptime is less than 10 minutes. |
last(/Linux by Prom/system.uptime[node_exporter])<10m |Warning |
Manual close: Yes | |
Linux: Load average is too high | The load average per CPU is too high. The system may be slow to respond. |
min(/Linux by Prom/system.cpu.load.avg1[node_exporter],5m)/last(/Linux by Prom/system.cpu.num[node_exporter])>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux by Prom/system.cpu.load.avg5[node_exporter])>0 and last(/Linux by Prom/system.cpu.load.avg15[node_exporter])>0 |Average |
||
Linux: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Linux by Prom/system.cpu.util[node_exporter],5m)>{$CPU.UTIL.CRIT} |Warning |
Depends on:
|
|
Linux: High memory utilization | The system is running out of free memory. |
min(/Linux by Prom/vm.memory.util[node_exporter],5m)>{$MEMORY.UTIL.MAX} |Average |
Depends on:
|
|
Linux: Lack of available memory | max(/Linux by Prom/vm.memory.available[node_exporter],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Prom/vm.memory.total[node_exporter])>0 |Average |
|||
Linux: High swap space usage | If there is no swap configured, this trigger is ignored. |
max(/Linux by Prom/system.swap.pfree[node_exporter],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux by Prom/system.swap.total[node_exporter])>0 |Warning |
Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | Discovery of network interfaces. Requires node_exporter v0.18 and up. |
Dependent item | net.if.discovery[node_exporter] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): Bits received | Dependent item | net.if.in[node_exporter,"{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}({#IFALIAS}): Bits sent | Dependent item | net.if.out[node_exporter,"{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors | Dependent item | net.if.out.errors[node_exporter"{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors | Dependent item | net.if.in.errors[node_exporter,"{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded | Dependent item | net.if.in.discards[node_exporter,"{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded | Dependent item | net.if.out.discards[node_exporter,"{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}({#IFALIAS}): Speed | Sets value to 0 if metric is missing in node_exporter output. |
Dependent item | net.if.speed[node_exporter,"{#IFNAME}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Interface type | nodenetworkprotocoltype protocoltype value of /sys/class/net/ |
Dependent item | net.if.type[node_exporter,"{#IFNAME}"] Preprocessing
|
Interface {#IFNAME}({#IFALIAS}): Operational status | Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt |
Dependent item | net.if.status[node_exporter,"{#IFNAME}"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}({#IFALIAS}): High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Linux by Prom/net.if.in[node_exporter,"{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by Prom/net.if.speed[node_exporter,"{#IFNAME}"]) or avg(/Linux by Prom/net.if.out[node_exporter,"{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by Prom/net.if.speed[node_exporter,"{#IFNAME}"])) and last(/Linux by Prom/net.if.speed[node_exporter,"{#IFNAME}"])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): High error rate | It recovers when it is below 80% of the |
min(/Linux by Prom/net.if.in.errors[node_exporter,"{#IFNAME}"],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux by Prom/net.if.out.errors[node_exporter"{#IFNAME}"],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Linux by Prom/net.if.speed[node_exporter,"{#IFNAME}"])<0 and last(/Linux by Prom/net.if.speed[node_exporter,"{#IFNAME}"])>0 and ( last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=6 or last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=7 or last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=11 or last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=62 or last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=69 or last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=117 ) and (last(/Linux by Prom/net.if.status[node_exporter,"{#IFNAME}"])<>2) |Info |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])<0 and last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])>0 and (last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=6 or last(/Linux by Prom/net.if.type[node_exporter,"{#IFNAME}"])=1) and (last(/Linux by Prom/net.if.status[node_exporter,"{#IFNAME}"])<>2) |Info |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}({#IFALIAS}): Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux by Prom/net.if.status[node_exporter,"{#IFNAME}"])=2 and (last(/Linux by Prom/net.if.status[node_exporter,"{#IFNAME}"],#1)<>last(/Linux by Prom/net.if.status[node_exporter,"{#IFNAME}"],#2)) |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | Discovery of file systems of different types. |
Dependent item | vfs.fs.discovery[node_exporter] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free space | Dependent item | vfs.fs.free[node_exporter,"{#FSNAME}"] Preprocessing
|
|
{#FSNAME}: Total space | Total space in bytes |
Dependent item | vfs.fs.total[node_exporter,"{#FSNAME}"] Preprocessing
|
{#FSNAME}: Used space | Used storage in bytes |
Calculated | vfs.fs.used[node_exporter,"{#FSNAME}"] |
{#FSNAME}: Space utilization | The space utilization expressed in % for {#FSNAME}. |
Calculated | vfs.fs.pused[node_exporter,"{#FSNAME}"] |
{#FSNAME}: Free inodes in % | Dependent item | vfs.fs.inode.pfree[node_exporter,"{#FSNAME}"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Disk space is critically low | last(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | ||
{#FSNAME}: Disk space is low | last(/Linux by Prom/vfs.fs.pused[node_exporter,"{#FSNAME}"])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
||
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by Prom/vfs.fs.inode.pfree[node_exporter,"{#FSNAME}"],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"} |Average |
||
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by Prom/vfs.fs.inode.pfree[node_exporter,"{#FSNAME}"],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"} |Warning |
Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Block devices discovery | Dependent item | vfs.dev.discovery[node_exporter] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
{#DEVNAME}: Disk read rate | r/s. The number (after merges) of read requests completed per second for the device. |
Dependent item | vfs.dev.read.rate[node_exporter,"{#DEVNAME}"] Preprocessing
|
{#DEVNAME}: Disk write rate | w/s. The number (after merges) of write requests completed per second for the device. |
Dependent item | vfs.dev.write.rate[node_exporter,"{#DEVNAME}"] Preprocessing
|
{#DEVNAME}: Disk read time (rate) | Rate of total read time counter. Used in |
Dependent item | vfs.dev.read.time.rate[node_exporter,"{#DEVNAME}"] Preprocessing
|
{#DEVNAME}: Disk write time (rate) | Rate of total write time counter. Used in |
Dependent item | vfs.dev.write.time.rate[node_exporter,"{#DEVNAME}"] Preprocessing
|
{#DEVNAME}: Disk read request avg waiting time (r_await) | This formula contains two Boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception. |
Calculated | vfs.dev.read.await[node_exporter,"{#DEVNAME}"] |
{#DEVNAME}: Disk write request avg waiting time (w_await) | This formula contains two Boolean expressions that evaluates to 1 or 0 in order to set calculated metric to zero and to avoid division by zero exception. |
Calculated | vfs.dev.write.await[node_exporter,"{#DEVNAME}"] |
{#DEVNAME}: Disk average queue size (avgqu-sz) | The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected. |
Dependent item | vfs.dev.queuesize[nodeexporter,"{#DEVNAME}"] Preprocessing
|
{#DEVNAME}: Disk utilization | This item is the percentage of elapsed time during which the selected disk drive was busy while servicing read or write requests. |
Dependent item | vfs.dev.util[node_exporter,"{#DEVNAME}"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#DEVNAME}: Disk read/write request responses are too high | This trigger might indicate the disk {#DEVNAME} saturation. |
min(/Linux by Prom/vfs.dev.read.await[node_exporter,"{#DEVNAME}"],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux by Prom/vfs.dev.write.await[node_exporter,"{#DEVNAME}"],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
New official Linux template. Requires agent of Zabbix 6.0 or newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on Linux OS following Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.NODATA_TIMEOUT} | No data timeout for active agents. Consider to keep it relatively high. |
30m |
{$CPU.UTIL.CRIT} | 90 |
|
{$LOADAVGPER_CPU.MAX.WARN} | The CPU load per core is considered sustainable. If necessary, it can be tuned. |
1.5 |
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
^(/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSNAME.MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
.+ |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
Macro too long. Please see the template. |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
^\s$ |
{$VFS.FS.INODE.PFREE.MIN.CRIT} | The critical threshold of the filesystem metadata utilization. |
10 |
{$VFS.FS.INODE.PFREE.MIN.WARN} | The warning threshold of the filesystem metadata utilization. |
20 |
{$VFS.FS.PUSED.MAX.CRIT} | The critical threshold of the filesystem utilization. |
90 |
{$VFS.FS.PUSED.MAX.WARN} | The warning threshold of the filesystem utilization. |
80 |
{$MEMORY.UTIL.MAX} | This macro is used as a threshold in the memory utilization trigger. |
90 |
{$MEMORY.AVAILABLE.MIN} | This macro is used as a threshold in the memory available trigger. |
20M |
{$SWAP.PFREE.MIN.WARN} | 50 |
|
{$VFS.DEV.READ.AWAIT.WARN} | The average response time (in ms) of disk read before the trigger would fire. |
20 |
{$VFS.DEV.WRITE.AWAIT.WARN} | The average response time (in ms) of disk write before the trigger would fire. |
20 |
{$VFS.DEV.DEVNAME.NOT_MATCHES} | This macro is used for a discovery of block devices. It can be overridden on host level or its linked template level. |
Macro too long. Please see the template. |
{$VFS.DEV.DEVNAME.MATCHES} | This macro is used for a discovery of block devices. It can be overridden on host level or its linked template level. |
.+ |
{$IF.ERRORS.WARN} | 2 |
|
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | ^.*$ |
|
{$NET.IF.IFNAME.NOT_MATCHES} | It filters out |
Macro too long. Please see the template. |
{$IF.UTIL.MAX} | This macro is used as a threshold in the interface utilization trigger. |
90 |
{$KERNEL.MAXPROC.MIN} | 1024 |
|
{$KERNEL.MAXFILES.MIN} | 256 |
Name | Description | Type | Key and additional info |
---|---|---|---|
Linux: Version of Zabbix agent running | Zabbix agent (active) | agent.version Preprocessing
|
|
Linux: Host name of Zabbix agent running | Zabbix agent (active) | agent.hostname Preprocessing
|
|
Linux: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for availability check. |
Zabbix agent (active) | agent.ping |
Linux: Number of CPUs | Zabbix agent (active) | system.cpu.num Preprocessing
|
|
Linux: Load average (1m avg) | Zabbix agent (active) | system.cpu.load[all,avg1] | |
Linux: Load average (5m avg) | Zabbix agent (active) | system.cpu.load[all,avg5] | |
Linux: Load average (15m avg) | Zabbix agent (active) | system.cpu.load[all,avg15] | |
Linux: CPU utilization | The CPU utilization expressed in %. |
Dependent item | system.cpu.util Preprocessing
|
Linux: CPU idle time | The time the CPU has spent doing nothing. |
Zabbix agent (active) | system.cpu.util[,idle] |
Linux: CPU system time | The time the CPU has spent running the kernel and its processes. |
Zabbix agent (active) | system.cpu.util[,system] |
Linux: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Zabbix agent (active) | system.cpu.util[,user] |
Linux: CPU nice time | The time the CPU has spent running users' processes that have been niced. |
Zabbix agent (active) | system.cpu.util[,nice] |
Linux: CPU iowait time | The amount of time the CPU has been waiting for I/O to complete. |
Zabbix agent (active) | system.cpu.util[,iowait] |
Linux: CPU steal time | The amount of "stolen" CPU from this virtual machine by the hypervisor for other tasks, such as running another virtual machine. |
Zabbix agent (active) | system.cpu.util[,steal] |
Linux: CPU interrupt time | The amount of time the CPU has been servicing hardware interrupts. |
Zabbix agent (active) | system.cpu.util[,interrupt] |
Linux: CPU softirq time | The amount of time the CPU has been servicing software interrupts. |
Zabbix agent (active) | system.cpu.util[,softirq] |
Linux: CPU guest time | Guest time - the time spent on running a virtual CPU for a guest operating system. |
Zabbix agent (active) | system.cpu.util[,guest] |
Linux: CPU guest nice time | The time spent on running a niced guest (a virtual CPU for guest operating systems under the control of the Linux kernel). |
Zabbix agent (active) | system.cpu.util[,guest_nice] |
Linux: Context switches per second | Zabbix agent (active) | system.cpu.switches Preprocessing
|
|
Linux: Interrupts per second | Zabbix agent (active) | system.cpu.intr Preprocessing
|
|
Linux: Memory utilization | The percentage of used memory is calculated as |
Dependent item | vm.memory.utilization Preprocessing
|
Linux: Available memory in % | The available memory as percentage of the total. See also Appendixes in Zabbix Documentation about parameters of the |
Zabbix agent (active) | vm.memory.size[pavailable] |
Linux: Total memory | The total memory expressed in bytes. |
Zabbix agent (active) | vm.memory.size[total] |
Linux: Available memory | The available memory: - in Linux - available = free + buffers + cache; - on other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the |
Zabbix agent (active) | vm.memory.size[available] |
Linux: Total swap space | The total space of the swap volume/file expressed in bytes. |
Zabbix agent (active) | system.swap.size[,total] |
Linux: Free swap space | The free space of the swap volume/file expressed in bytes. |
Zabbix agent (active) | system.swap.size[,free] |
Linux: Free swap space in % | The free space of the swap volume/file expressed in %. |
Zabbix agent (active) | system.swap.size[,pfree] |
Linux: System uptime | The system uptime expressed in the following format: "N days, hh:mm:ss". |
Zabbix agent (active) | system.uptime |
Linux: System boot time | Zabbix agent (active) | system.boottime Preprocessing
|
|
Linux: System local time | The local system time of the host. |
Zabbix agent (active) | system.localtime |
Linux: System name | The host name of the system. |
Zabbix agent (active) | system.hostname Preprocessing
|
Linux: System description | The information as normally returned by |
Zabbix agent (active) | system.uname Preprocessing
|
Linux: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent (active) | system.users.num |
Linux: Maximum number of open file descriptors | It could be increased by using |
Zabbix agent (active) | kernel.maxfiles Preprocessing
|
Linux: Maximum number of processes | It could be increased by using |
Zabbix agent (active) | kernel.maxproc Preprocessing
|
Linux: Number of processes | Zabbix agent (active) | proc.num | |
Linux: Number of running processes | Zabbix agent (active) | proc.num[,,run] | |
Linux: Checksum of /etc/passwd | Zabbix agent (active) | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
Linux: Operating system | Zabbix agent (active) | system.sw.os Preprocessing
|
|
Linux: Operating system architecture | The architecture of the operating system. |
Zabbix agent (active) | system.sw.arch Preprocessing
|
Linux: Software installed | Zabbix agent (active) | system.sw.packages Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Linux: Zabbix agent is not available | For active agents, nodata() with agent.ping is used with {$AGENT.NODATA_TIMEOUT} as time threshold. |
nodata(/Linux by Zabbix agent active/agent.ping,{$AGENT.NODATA_TIMEOUT})=1 |Average |
Manual close: Yes | |
Linux: Load average is too high | The load average per CPU is too high. The system may be slow to respond. |
min(/Linux by Zabbix agent active/system.cpu.load[all,avg1],5m)/last(/Linux by Zabbix agent active/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux by Zabbix agent active/system.cpu.load[all,avg5])>0 and last(/Linux by Zabbix agent active/system.cpu.load[all,avg15])>0 |Average |
||
Linux: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Linux by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT} |Warning |
Depends on:
|
|
Linux: High memory utilization | The system is running out of free memory. |
min(/Linux by Zabbix agent active/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX} |Average |
Depends on:
|
|
Linux: Lack of available memory | max(/Linux by Zabbix agent active/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent active/vm.memory.size[total])>0 |Average |
|||
Linux: High swap space usage | If there is no swap configured, this trigger is ignored. |
max(/Linux by Zabbix agent active/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux by Zabbix agent active/system.swap.size[,total])>0 |Warning |
Depends on:
|
|
Linux: {HOST.NAME} has been restarted | The host uptime is less than 10 minutes. |
last(/Linux by Zabbix agent active/system.uptime)<10m |Warning |
Manual close: Yes | |
Linux: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
change(/Linux by Zabbix agent active/system.hostname) and length(last(/Linux by Zabbix agent active/system.hostname))>0 |Info |
Manual close: Yes | |
Linux: Configured max number of open filedescriptors is too low | last(/Linux by Zabbix agent active/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN} |Info |
|||
Linux: Configured max number of processes is too low | last(/Linux by Zabbix agent active/kernel.maxproc)<{$KERNEL.MAXPROC.MIN} |Info |
Depends on:
|
||
Linux: Getting closer to process limit | last(/Linux by Zabbix agent active/proc.num)/last(/Linux by Zabbix agent active/kernel.maxproc)*100>80 |Warning |
|||
Linux: /etc/passwd has been changed | last(/Linux by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux by Zabbix agent active/vfs.file.cksum[/etc/passwd,sha256],#2) |Info |
Manual close: Yes Depends on:
|
||
Linux: Operating system description has changed | The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually. |
change(/Linux by Zabbix agent active/system.sw.os) and length(last(/Linux by Zabbix agent active/system.sw.os))>0 |Info |
Manual close: Yes Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | The discovery of mounted filesystems with different types. |
Zabbix agent (active) | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Used space | Used storage in bytes |
Zabbix agent (active) | vfs.fs.size[{#FSNAME},used] |
{#FSNAME}: Total space | Total space in bytes |
Zabbix agent (active) | vfs.fs.size[{#FSNAME},total] |
{#FSNAME}: Space utilization | The space utilization expressed in % for {#FSNAME}. |
Zabbix agent (active) | vfs.fs.size[{#FSNAME},pused] |
{#FSNAME}: Free inodes in % | Zabbix agent (active) | vfs.fs.inode[{#FSNAME},pfree] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Disk space is critically low | The volume's space usage exceeds the |
last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | |
{#FSNAME}: Disk space is low | The volume's space usage exceeds the |
last(/Linux by Zabbix agent active/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"} |Average |
||
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by Zabbix agent active/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"} |Warning |
Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Block devices discovery | Zabbix agent (active) | vfs.dev.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#DEVNAME}: Get stats | The contents of get |
Zabbix agent (active) | vfs.file.contents[/sys/block/{#DEVNAME}/stat] Preprocessing
|
{#DEVNAME}: Disk read rate | r/s (read operations per second) - the number (after merges) of read requests completed per second for the device. |
Dependent item | vfs.dev.read.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk write rate | w/s (write operations per second) - the number (after merges) of write requests completed per second for the device. |
Dependent item | vfs.dev.write.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk read time (rate) | The rate of total read time counter; used in |
Dependent item | vfs.dev.read.time.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk write time (rate) | The rate of total write time counter; used in |
Dependent item | vfs.dev.write.time.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk read request avg waiting time (r_await) | This formula contains two Boolean expressions that evaluate to 1 or 0 in order to set the calculated metric to zero and to avoid the exception - division by zero. |
Calculated | vfs.dev.read.await[{#DEVNAME}] |
{#DEVNAME}: Disk write request avg waiting time (w_await) | This formula contains two Boolean expressions that evaluate to 1 or 0 in order to set the calculated metric to zero and to avoid the exception - division by zero. |
Calculated | vfs.dev.write.await[{#DEVNAME}] |
{#DEVNAME}: Disk average queue size (avgqu-sz) | The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected. |
Dependent item | vfs.dev.queue_size[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk utilization | This item is the percentage of elapsed time during which the selected disk drive was busy while servicing read or write requests. |
Dependent item | vfs.dev.util[{#DEVNAME}] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#DEVNAME}: Disk read/write request responses are too high | This trigger might indicate the disk {#DEVNAME} saturation. |
min(/Linux by Zabbix agent active/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux by Zabbix agent active/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces. |
Zabbix agent (active) | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Bits received | Zabbix agent (active) | net.if.in["{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}: Bits sent | Zabbix agent (active) | net.if.out["{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}: Outbound packets with errors | Zabbix agent (active) | net.if.out["{#IFNAME}",errors] Preprocessing
|
|
Interface {#IFNAME}: Inbound packets with errors | Zabbix agent (active) | net.if.in["{#IFNAME}",errors] Preprocessing
|
|
Interface {#IFNAME}: Outbound packets discarded | Zabbix agent (active) | net.if.out["{#IFNAME}",dropped] Preprocessing
|
|
Interface {#IFNAME}: Inbound packets discarded | Zabbix agent (active) | net.if.in["{#IFNAME}",dropped] Preprocessing
|
|
Interface {#IFNAME}: Operational status | Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt |
Zabbix agent (active) | vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"] Preprocessing
|
Interface {#IFNAME}: Interface type | It indicates the interface protocol type as a decimal value. See Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net |
Zabbix agent (active) | vfs.file.contents["/sys/class/net/{#IFNAME}/type"] Preprocessing
|
Interface {#IFNAME}: Speed | It indicates the latest or current speed value of the interface. The value is an integer representing the link speed expressed in bits/sec. This attribute is only valid for the interfaces that implement the ethtool Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net |
Zabbix agent (active) | vfs.file.contents["/sys/class/net/{#IFNAME}/speed"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}: High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Linux by Zabbix agent active/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or avg(/Linux by Zabbix agent active/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}: High error rate | It recovers when it is below 80% of the |
min(/Linux by Zabbix agent active/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux by Zabbix agent active/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}: Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2)) |Average |
Manual close: Yes | |
Interface {#IFNAME}: Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and (last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1) and (last(/Linux by Zabbix agent active/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2) |Info |
Manual close: Yes Depends on:
|
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
New official Linux template. Requires agent of Zabbix 6.0 or newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on Linux OS following Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | Timeout after which agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (passive mode). |
3m |
{$CPU.UTIL.CRIT} | 90 |
|
{$LOADAVGPER_CPU.MAX.WARN} | The CPU load per core is considered sustainable. If necessary, it can be tuned. |
1.5 |
{$VFS.FS.FSNAME.NOT_MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
^(/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSNAME.MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
.+ |
{$VFS.FS.FSTYPE.MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
Macro too long. Please see the template. |
{$VFS.FS.FSTYPE.NOT_MATCHES} | This macro is used for discovery of the filesystems. It can be overridden on host level or its linked template level. |
^\s$ |
{$VFS.FS.INODE.PFREE.MIN.CRIT} | The critical threshold of the filesystem metadata utilization. |
10 |
{$VFS.FS.INODE.PFREE.MIN.WARN} | The warning threshold of the filesystem metadata utilization. |
20 |
{$VFS.FS.PUSED.MAX.CRIT} | The critical threshold of the filesystem utilization. |
90 |
{$VFS.FS.PUSED.MAX.WARN} | The warning threshold of the filesystem utilization. |
80 |
{$MEMORY.UTIL.MAX} | This macro is used as a threshold in the memory utilization trigger. |
90 |
{$MEMORY.AVAILABLE.MIN} | This macro is used as a threshold in the memory available trigger. |
20M |
{$SWAP.PFREE.MIN.WARN} | 50 |
|
{$VFS.DEV.READ.AWAIT.WARN} | The average response time (in ms) of disk read before the trigger would fire. |
20 |
{$VFS.DEV.WRITE.AWAIT.WARN} | The average response time (in ms) of disk write before the trigger would fire. |
20 |
{$VFS.DEV.DEVNAME.NOT_MATCHES} | This macro is used for a discovery of block devices. It can be overridden on host level or its linked template level. |
Macro too long. Please see the template. |
{$VFS.DEV.DEVNAME.MATCHES} | This macro is used for a discovery of block devices. It can be overridden on host level or its linked template level. |
.+ |
{$IF.ERRORS.WARN} | 2 |
|
{$IFCONTROL} | 1 |
|
{$NET.IF.IFNAME.MATCHES} | ^.*$ |
|
{$NET.IF.IFNAME.NOT_MATCHES} | It filters out |
Macro too long. Please see the template. |
{$IF.UTIL.MAX} | This macro is used as a threshold in the interface utilization trigger. |
90 |
{$SYSTEM.FUZZYTIME.MAX} | The upper threshold for difference of system time. |
60s |
{$SYSTEM.FUZZYTIME.MIN} | The lower threshold for difference of system time. Used in recovery expression to avoid trigger flapping. |
10s |
{$KERNEL.MAXPROC.MIN} | 1024 |
|
{$KERNEL.MAXFILES.MIN} | 256 |
Name | Description | Type | Key and additional info |
---|---|---|---|
Linux: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
Linux: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
Linux: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for availability check. |
Zabbix agent | agent.ping |
Linux: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Linux: Number of CPUs | Zabbix agent | system.cpu.num Preprocessing
|
|
Linux: Load average (1m avg) | Zabbix agent | system.cpu.load[all,avg1] | |
Linux: Load average (5m avg) | Zabbix agent | system.cpu.load[all,avg5] | |
Linux: Load average (15m avg) | Zabbix agent | system.cpu.load[all,avg15] | |
Linux: CPU utilization | The CPU utilization expressed in %. |
Dependent item | system.cpu.util Preprocessing
|
Linux: CPU idle time | The time the CPU has spent doing nothing. |
Zabbix agent | system.cpu.util[,idle] |
Linux: CPU system time | The time the CPU has spent running the kernel and its processes. |
Zabbix agent | system.cpu.util[,system] |
Linux: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Zabbix agent | system.cpu.util[,user] |
Linux: CPU nice time | The time the CPU has spent running users' processes that have been niced. |
Zabbix agent | system.cpu.util[,nice] |
Linux: CPU iowait time | The amount of time the CPU has been waiting for I/O to complete. |
Zabbix agent | system.cpu.util[,iowait] |
Linux: CPU steal time | The amount of "stolen" CPU from this virtual machine by the hypervisor for other tasks, such as running another virtual machine. |
Zabbix agent | system.cpu.util[,steal] |
Linux: CPU interrupt time | The amount of time the CPU has been servicing hardware interrupts. |
Zabbix agent | system.cpu.util[,interrupt] |
Linux: CPU softirq time | The amount of time the CPU has been servicing software interrupts. |
Zabbix agent | system.cpu.util[,softirq] |
Linux: CPU guest time | Guest time - the time spent on running a virtual CPU for a guest operating system. |
Zabbix agent | system.cpu.util[,guest] |
Linux: CPU guest nice time | The time spent on running a niced guest (a virtual CPU for guest operating systems under the control of the Linux kernel). |
Zabbix agent | system.cpu.util[,guest_nice] |
Linux: Context switches per second | Zabbix agent | system.cpu.switches Preprocessing
|
|
Linux: Interrupts per second | Zabbix agent | system.cpu.intr Preprocessing
|
|
Linux: Memory utilization | The percentage of used memory is calculated as |
Dependent item | vm.memory.utilization Preprocessing
|
Linux: Available memory in % | The available memory as percentage of the total. See also Appendixes in Zabbix Documentation about parameters of the |
Zabbix agent | vm.memory.size[pavailable] |
Linux: Total memory | The total memory expressed in bytes. |
Zabbix agent | vm.memory.size[total] |
Linux: Available memory | The available memory: - in Linux - available = free + buffers + cache; - on other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the |
Zabbix agent | vm.memory.size[available] |
Linux: Total swap space | The total space of the swap volume/file expressed in bytes. |
Zabbix agent | system.swap.size[,total] |
Linux: Free swap space | The free space of the swap volume/file expressed in bytes. |
Zabbix agent | system.swap.size[,free] |
Linux: Free swap space in % | The free space of the swap volume/file expressed in %. |
Zabbix agent | system.swap.size[,pfree] |
Linux: System uptime | The system uptime expressed in the following format: "N days, hh:mm:ss". |
Zabbix agent | system.uptime |
Linux: System boot time | Zabbix agent | system.boottime Preprocessing
|
|
Linux: System local time | The local system time of the host. |
Zabbix agent | system.localtime |
Linux: System name | The host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
Linux: System description | The information as normally returned by |
Zabbix agent | system.uname Preprocessing
|
Linux: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
Linux: Maximum number of open file descriptors | It could be increased by using |
Zabbix agent | kernel.maxfiles Preprocessing
|
Linux: Maximum number of processes | It could be increased by using |
Zabbix agent | kernel.maxproc Preprocessing
|
Linux: Number of processes | Zabbix agent | proc.num | |
Linux: Number of running processes | Zabbix agent | proc.num[,,run] | |
Linux: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
Linux: Operating system | Zabbix agent | system.sw.os Preprocessing
|
|
Linux: Operating system architecture | The architecture of the operating system. |
Zabbix agent | system.sw.arch Preprocessing
|
Linux: Software installed | Zabbix agent | system.sw.packages Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Linux: Zabbix agent is not available | For passive only agents, host availability is used with {$AGENT.TIMEOUT} as time threshold. |
max(/Linux by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes | |
Linux: Load average is too high | The load average per CPU is too high. The system may be slow to respond. |
min(/Linux by Zabbix agent/system.cpu.load[all,avg1],5m)/last(/Linux by Zabbix agent/system.cpu.num)>{$LOAD_AVG_PER_CPU.MAX.WARN} and last(/Linux by Zabbix agent/system.cpu.load[all,avg5])>0 and last(/Linux by Zabbix agent/system.cpu.load[all,avg15])>0 |Average |
||
Linux: High CPU utilization | The CPU utilization is too high. The system might be slow to respond. |
min(/Linux by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT} |Warning |
Depends on:
|
|
Linux: High memory utilization | The system is running out of free memory. |
min(/Linux by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX} |Average |
Depends on:
|
|
Linux: Lack of available memory | max(/Linux by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent/vm.memory.size[total])>0 |Average |
|||
Linux: High swap space usage | If there is no swap configured, this trigger is ignored. |
max(/Linux by Zabbix agent/system.swap.size[,pfree],5m)<{$SWAP.PFREE.MIN.WARN} and last(/Linux by Zabbix agent/system.swap.size[,total])>0 |Warning |
Depends on:
|
|
Linux: {HOST.NAME} has been restarted | The host uptime is less than 10 minutes. |
last(/Linux by Zabbix agent/system.uptime)<10m |Warning |
Manual close: Yes | |
Linux: System time is out of sync | The host's system time is different from Zabbix server time. |
fuzzytime(/Linux by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0 |Warning |
Manual close: Yes | |
Linux: System name has changed | The name of the system has changed. Acknowledge to close the problem manually. |
change(/Linux by Zabbix agent/system.hostname) and length(last(/Linux by Zabbix agent/system.hostname))>0 |Info |
Manual close: Yes | |
Linux: Configured max number of open filedescriptors is too low | last(/Linux by Zabbix agent/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN} |Info |
|||
Linux: Configured max number of processes is too low | last(/Linux by Zabbix agent/kernel.maxproc)<{$KERNEL.MAXPROC.MIN} |Info |
Depends on:
|
||
Linux: Getting closer to process limit | last(/Linux by Zabbix agent/proc.num)/last(/Linux by Zabbix agent/kernel.maxproc)*100>80 |Warning |
|||
Linux: /etc/passwd has been changed | last(/Linux by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Info |
Manual close: Yes Depends on:
|
||
Linux: Operating system description has changed | The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually. |
change(/Linux by Zabbix agent/system.sw.os) and length(last(/Linux by Zabbix agent/system.sw.os))>0 |Info |
Manual close: Yes Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | The discovery of mounted filesystems with different types. |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Used space | Used storage in bytes |
Zabbix agent | vfs.fs.size[{#FSNAME},used] |
{#FSNAME}: Total space | Total space in bytes |
Zabbix agent | vfs.fs.size[{#FSNAME},total] |
{#FSNAME}: Space utilization | The space utilization expressed in % for {#FSNAME}. |
Zabbix agent | vfs.fs.size[{#FSNAME},pused] |
{#FSNAME}: Free inodes in % | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Disk space is critically low | The volume's space usage exceeds the |
last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |Average |
Manual close: Yes | |
{#FSNAME}: Disk space is low | The volume's space usage exceeds the |
last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"} |Average |
||
{#FSNAME}: Running out of free inodes | It may become impossible to write to a disk if there are no index nodes left. |
min(/Linux by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"} |Warning |
Depends on:
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Block devices discovery | Zabbix agent | vfs.dev.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#DEVNAME}: Get stats | The contents of get |
Zabbix agent | vfs.file.contents[/sys/block/{#DEVNAME}/stat] Preprocessing
|
{#DEVNAME}: Disk read rate | r/s (read operations per second) - the number (after merges) of read requests completed per second for the device. |
Dependent item | vfs.dev.read.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk write rate | w/s (write operations per second) - the number (after merges) of write requests completed per second for the device. |
Dependent item | vfs.dev.write.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk read time (rate) | The rate of total read time counter; used in |
Dependent item | vfs.dev.read.time.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk write time (rate) | The rate of total write time counter; used in |
Dependent item | vfs.dev.write.time.rate[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk read request avg waiting time (r_await) | This formula contains two Boolean expressions that evaluate to 1 or 0 in order to set the calculated metric to zero and to avoid the exception - division by zero. |
Calculated | vfs.dev.read.await[{#DEVNAME}] |
{#DEVNAME}: Disk write request avg waiting time (w_await) | This formula contains two Boolean expressions that evaluate to 1 or 0 in order to set the calculated metric to zero and to avoid the exception - division by zero. |
Calculated | vfs.dev.write.await[{#DEVNAME}] |
{#DEVNAME}: Disk average queue size (avgqu-sz) | The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected. |
Dependent item | vfs.dev.queue_size[{#DEVNAME}] Preprocessing
|
{#DEVNAME}: Disk utilization | This item is the percentage of elapsed time during which the selected disk drive was busy while servicing read or write requests. |
Dependent item | vfs.dev.util[{#DEVNAME}] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#DEVNAME}: Disk read/write request responses are too high | This trigger might indicate the disk |
min(/Linux by Zabbix agent/vfs.dev.read.await[{#DEVNAME}],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} or min(/Linux by Zabbix agent/vfs.dev.write.await[{#DEVNAME}],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} |Warning |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces. |
Zabbix agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Bits received | Zabbix agent | net.if.in["{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}: Bits sent | Zabbix agent | net.if.out["{#IFNAME}"] Preprocessing
|
|
Interface {#IFNAME}: Outbound packets with errors | Zabbix agent | net.if.out["{#IFNAME}",errors] Preprocessing
|
|
Interface {#IFNAME}: Inbound packets with errors | Zabbix agent | net.if.in["{#IFNAME}",errors] Preprocessing
|
|
Interface {#IFNAME}: Outbound packets discarded | Zabbix agent | net.if.out["{#IFNAME}",dropped] Preprocessing
|
|
Interface {#IFNAME}: Inbound packets discarded | Zabbix agent | net.if.in["{#IFNAME}",dropped] Preprocessing
|
|
Interface {#IFNAME}: Operational status | Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt |
Zabbix agent | vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"] Preprocessing
|
Interface {#IFNAME}: Interface type | It indicates the interface protocol type as a decimal value. See Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net |
Zabbix agent | vfs.file.contents["/sys/class/net/{#IFNAME}/type"] Preprocessing
|
Interface {#IFNAME}: Speed | It indicates the latest or current speed value of the interface. The value is an integer representing the link speed expressed in bits/sec. This attribute is only valid for the interfaces that implement the ethtool Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net |
Zabbix agent | vfs.file.contents["/sys/class/net/{#IFNAME}/speed"] Preprocessing
|
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Interface {#IFNAME}: High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Linux by Zabbix agent/net.if.in["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) or avg(/Linux by Zabbix agent/net.if.out["{#IFNAME}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])) and last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}: High error rate | It recovers when it is below 80% of the |
min(/Linux by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Linux by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |Warning |
Manual close: Yes Depends on:
|
|
Interface {#IFNAME}: Link down | This trigger expression works as follows: |
{$IFCONTROL:"{#IFNAME}"}=1 and last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2 and (last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#1)<>last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"],#2)) |Average |
Manual close: Yes | |
Interface {#IFNAME}: Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])<0 and last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"])>0 and (last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=6 or last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/type"])=1) and (last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2) |Info |
Manual close: Yes Depends on:
|
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
It is an official HP-UX template. It requires Zabbix agent 6.0 or newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on the HP-UX OS according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | The timeout after which the agent is considered unavailable. It works only for the agents reachable from Zabbix server/proxy (in passive mode). |
3m |
Name | Description | Type | Key and additional info |
---|---|---|---|
HP-UX: Processor load (1 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
HP-UX: Processor load (5 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
HP-UX: Processor load (15 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
HP-UX: CPU idle time | The time the CPU has spent doing nothing. |
Zabbix agent | system.cpu.util[,idle] |
HP-UX: CPU nice time | The time the CPU has spent running users' processes that have been niced. |
Zabbix agent | system.cpu.util[,nice] |
HP-UX: CPU system time | The time the CPU has spent running the kernel and its processes. |
Zabbix agent | system.cpu.util[,system] |
HP-UX: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Zabbix agent | system.cpu.util[,user] |
HP-UX: Host name | A host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
HP-UX: Host local time | Zabbix agent | system.localtime | |
HP-UX: System information | The information as normally returned by the 'uname -a'. |
Zabbix agent | system.uname Preprocessing
|
HP-UX: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
HP-UX: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
HP-UX: Available memory | The available memory is defined as free+cached+buffers memory. |
Zabbix agent | vm.memory.size[available] |
HP-UX: Total memory | Zabbix agent | vm.memory.size[total] | |
HP-UX: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
HP-UX: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
HP-UX: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for the availability check. |
Zabbix agent | agent.ping |
HP-UX: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
HP-UX: Processor load is too high | avg(/HP-UX by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |Warning |
|||
HP-UX: Hostname was changed | last(/HP-UX by Zabbix agent/system.hostname,#1)<>last(/HP-UX by Zabbix agent/system.hostname,#2) |Info |
|||
HP-UX: Host information was changed | last(/HP-UX by Zabbix agent/system.uname,#1)<>last(/HP-UX by Zabbix agent/system.uname,#2) |Info |
|||
HP-UX: /etc/passwd has been changed | last(/HP-UX by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/HP-UX by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Warning |
|||
HP-UX: Lack of available memory on server | last(/HP-UX by Zabbix agent/vm.memory.size[available])<20M |Average |
|||
HP-UX: Zabbix agent is not available | For passive checks only the availability of the agents and a host is used with {$AGENT.TIMEOUT} as the time threshold. |
max(/HP-UX by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces as defined in the global regular expression "Network interfaces for discovery". |
Zabbix agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Incoming network traffic | Zabbix agent | net.if.in[{#IFNAME}] Preprocessing
|
|
Interface {#IFNAME}: Outgoing network traffic | Zabbix agent | net.if.out[{#IFNAME}] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | The discovery of different types of file systems as defined in the global regular expression "File systems for discovery". |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free inodes, % | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] | |
{#FSNAME}: Free disk space | Zabbix agent | vfs.fs.size[{#FSNAME},free] | |
{#FSNAME}: Free disk space, % | Zabbix agent | vfs.fs.size[{#FSNAME},pfree] | |
{#FSNAME}: Total disk space | Zabbix agent | vfs.fs.size[{#FSNAME},total] | |
{#FSNAME}: Used disk space | Zabbix agent | vfs.fs.size[{#FSNAME},used] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Free inodes is less than 20% | last(/HP-UX by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree])<20 |Warning |
|||
{#FSNAME}: Free disk space is less than 20% | last(/HP-UX by Zabbix agent/vfs.fs.size[{#FSNAME},pfree])<20 |Warning |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
Official FreeBSD template. Requires agent of Zabbix 6.0 and newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on FreeBSD according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | The timeout after which the agent is considered unavailable. It works only for the agents reachable from Zabbix server/proxy (in passive mode). |
3m |
Name | Description | Type | Key and additional info |
---|---|---|---|
FreeBSD: Maximum number of opened files | It could be increased by using the sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxfiles |
FreeBSD: Maximum number of processes | It could be increased by using the sysctl utility or modifying the file /etc/sysctl.conf. |
Zabbix agent | kernel.maxproc |
FreeBSD: Number of running processes | The number of processes in a running state. |
Zabbix agent | proc.num[,,run] |
FreeBSD: Number of processes | The total number of processes in any state. |
Zabbix agent | proc.num[] |
FreeBSD: Host boot time | Zabbix agent | system.boottime | |
FreeBSD: Interrupts per second | Zabbix agent | system.cpu.intr Preprocessing
|
|
FreeBSD: Processor load (1 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
FreeBSD: Processor load (5 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
FreeBSD: Processor load (15 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
FreeBSD: Context switches per second | Zabbix agent | system.cpu.switches Preprocessing
|
|
FreeBSD: CPU idle time | The time the CPU has spent doing nothing. |
Zabbix agent | system.cpu.util[,idle] |
FreeBSD: CPU interrupt time | The amount of time the CPU has been servicing hardware interrupts. |
Zabbix agent | system.cpu.util[,interrupt] |
FreeBSD: CPU nice time | The time the CPU has spent running users' processes that have been niced. |
Zabbix agent | system.cpu.util[,nice] |
FreeBSD: CPU system time | The time the CPU has spent running the kernel and its processes. |
Zabbix agent | system.cpu.util[,system] |
FreeBSD: CPU user time | The time the CPU has spent running users' processes that are not niced. |
Zabbix agent | system.cpu.util[,user] |
FreeBSD: Host name | A host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
FreeBSD: Host local time | Zabbix agent | system.localtime | |
FreeBSD: Free swap space | Zabbix agent | system.swap.size[,free] | |
FreeBSD: Free swap space in % | Zabbix agent | system.swap.size[,pfree] | |
FreeBSD: Total swap space | Zabbix agent | system.swap.size[,total] | |
FreeBSD: System information | The information as normally returned by the 'uname -a'. |
Zabbix agent | system.uname Preprocessing
|
FreeBSD: System uptime | Zabbix agent | system.uptime | |
FreeBSD: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
FreeBSD: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
FreeBSD: Available memory | The available memory is defined as free+cached+buffers memory. |
Zabbix agent | vm.memory.size[available] |
FreeBSD: Total memory | Zabbix agent | vm.memory.size[total] | |
FreeBSD: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
FreeBSD: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
FreeBSD: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for the availability check. |
Zabbix agent | agent.ping |
FreeBSD: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
FreeBSD: Configured max number of opened files is too low on {HOST.NAME} | last(/FreeBSD by Zabbix agent/kernel.maxfiles)<1024 |Info |
|||
FreeBSD: Configured max number of processes is too low on {HOST.NAME} | last(/FreeBSD by Zabbix agent/kernel.maxproc)<256 |Info |
|||
FreeBSD: Too many processes running on {HOST.NAME} | avg(/FreeBSD by Zabbix agent/proc.num[,,run],5m)>30 |Warning |
|||
FreeBSD: Too many processes on {HOST.NAME} | avg(/FreeBSD by Zabbix agent/proc.num[],5m)>300 |Warning |
|||
FreeBSD: Processor load is too high on {HOST.NAME} | avg(/FreeBSD by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |Warning |
|||
FreeBSD: Hostname was changed on {HOST.NAME} | last(/FreeBSD by Zabbix agent/system.hostname,#1)<>last(/FreeBSD by Zabbix agent/system.hostname,#2) |Info |
|||
FreeBSD: Lack of free swap space on {HOST.NAME} | It probably means that the systems requires more physical memory. |
last(/FreeBSD by Zabbix agent/system.swap.size[,pfree])<50 |Warning |
||
FreeBSD: Host information was changed on {HOST.NAME} | last(/FreeBSD by Zabbix agent/system.uname,#1)<>last(/FreeBSD by Zabbix agent/system.uname,#2) |Info |
|||
FreeBSD: {HOST.NAME} has just been restarted | change(/FreeBSD by Zabbix agent/system.uptime)<0 |Info |
|||
FreeBSD: /etc/passwd has been changed on {HOST.NAME} | last(/FreeBSD by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/FreeBSD by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Warning |
|||
FreeBSD: Lack of available memory on server {HOST.NAME} | last(/FreeBSD by Zabbix agent/vm.memory.size[available])<20M |Average |
|||
FreeBSD: Zabbix agent is not available | For passive checks only the availability of the agents and a host is used with {$AGENT.TIMEOUT} as the time threshold. |
max(/FreeBSD by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces as defined in the global regular expression "Network interfaces for discovery". |
Zabbix agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Incoming network traffic | Zabbix agent | net.if.in[{#IFNAME}] Preprocessing
|
|
Interface {#IFNAME}: Outgoing network traffic | Zabbix agent | net.if.out[{#IFNAME}] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | The discovery of different types of file systems as defined in the global regular expression "File systems for discovery". |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free inodes, % | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] | |
{#FSNAME}: Free disk space | Zabbix agent | vfs.fs.size[{#FSNAME},free] | |
{#FSNAME}: Free disk space, % | Zabbix agent | vfs.fs.size[{#FSNAME},pfree] | |
{#FSNAME}: Total disk space | Zabbix agent | vfs.fs.size[{#FSNAME},total] | |
{#FSNAME}: Used disk space | Zabbix agent | vfs.fs.size[{#FSNAME},used] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Free inodes is less than 20% | last(/FreeBSD by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree])<20 |Warning |
|||
{#FSNAME}: Free disk space is less than 20% | last(/FreeBSD by Zabbix agent/vfs.fs.size[{#FSNAME},pfree])<20 |Warning |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums
It is an official AIX template. It requires Zabbix agent 6.0 or newer.
Zabbix version: 6.0 and higher.
This template has been tested on:
Zabbix should be configured according to the instructions in the Templates out of the box section.
Install Zabbix agent on the AIX OS according to Zabbix documentation.
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | The timeout after which agent is considered unavailable. It works only for the agents reachable from Zabbix server/proxy (in passive mode). |
3m |
Name | Description | Type | Key and additional info |
---|---|---|---|
AIX: Number of running processes | The number of processes in a running state. |
Zabbix agent | proc.num[,,run] |
AIX: Number of processes | The total number of processes in any state. |
Zabbix agent | proc.num[] |
AIX: Interrupts per second | Zabbix agent | system.cpu.intr Preprocessing
|
|
AIX: Processor load (1 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
AIX: Processor load (5 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
AIX: Processor load (15 min average per core) | The processor load is calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
AIX: Context switches per second | Zabbix agent | system.cpu.switches Preprocessing
|
|
AIX: Host name | A host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
AIX: Host local time | Zabbix agent | system.localtime | |
AIX: CPU available physical processors in the shared pool | Zabbix agent | system.stat[cpu,app] | |
AIX: CPU entitled capacity consumed | Zabbix agent | system.stat[cpu,ec] | |
AIX: CPU idle time | Zabbix agent | system.stat[cpu,id] | |
AIX: CPU logical processor utilization | Zabbix agent | system.stat[cpu,lbusy] | |
AIX: CPU number of physical processors consumed | Zabbix agent | system.stat[cpu,pc] | |
AIX: CPU system time | Zabbix agent | system.stat[cpu,sy] | |
AIX: CPU user time | Zabbix agent | system.stat[cpu,us] | |
AIX: CPU iowait time | Zabbix agent | system.stat[cpu,wa] | |
AIX: Amount of data transferred | Zabbix agent | system.stat[disk,bps] | |
AIX: Number of transfers | Zabbix agent | system.stat[disk,tps] | |
AIX: Processor units is entitled to receive | Zabbix agent | system.stat[ent] | |
AIX: Kernel thread context switches | Zabbix agent | system.stat[faults,cs] | |
AIX: Device interrupts | Zabbix agent | system.stat[faults,in] | |
AIX: System calls | Zabbix agent | system.stat[faults,sy] | |
AIX: Length of the swap queue | Zabbix agent | system.stat[kthr,b] | |
AIX: Length of the run queue | Zabbix agent | system.stat[kthr,r] | |
AIX: Active virtual pages | Zabbix agent | system.stat[memory,avm] | |
AIX: Free real memory | Zabbix agent | system.stat[memory,fre] | |
AIX: File page-ins per second | Zabbix agent | system.stat[page,fi] | |
AIX: File page-outs per second | Zabbix agent | system.stat[page,fo] | |
AIX: Pages freed (page replacement) | Zabbix agent | system.stat[page,fr] | |
AIX: Pages paged in from paging space | Zabbix agent | system.stat[page,pi] | |
AIX: Pages paged out to paging space | Zabbix agent | system.stat[page,po] | |
AIX: Pages scanned by page-replacement algorithm | Zabbix agent | system.stat[page,sr] | |
AIX: System information | The information as normally returned by the 'uname -a'. |
Zabbix agent | system.uname Preprocessing
|
AIX: System uptime | Zabbix agent | system.uptime | |
AIX: Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
AIX: Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
AIX: Available memory | The available memory is defined as free+cached+buffers memory. |
Zabbix agent | vm.memory.size[available] |
AIX: Total memory | Zabbix agent | vm.memory.size[total] | |
AIX: Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
AIX: Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
AIX: Zabbix agent ping | The agent always returns 1 for this item. It could be used in combination with nodata() for the availability check. |
Zabbix agent | agent.ping |
AIX: Zabbix agent availability | Monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
AIX: Too many processes running | avg(/AIX by Zabbix agent/proc.num[,,run],5m)>30 |Warning |
|||
AIX: Too many processes | avg(/AIX by Zabbix agent/proc.num[],5m)>300 |Warning |
|||
AIX: Processor load is too high | avg(/AIX by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |Warning |
|||
AIX: Hostname was changed | last(/AIX by Zabbix agent/system.hostname,#1)<>last(/AIX by Zabbix agent/system.hostname,#2) |Info |
|||
AIX: Disk I/O is overloaded | The OS spends significant time waiting for the I/O (input/output) operations. It could be an indicator of performance issues with the storage system. |
avg(/AIX by Zabbix agent/system.stat[cpu,wa],5m)>20 |Warning |
||
AIX: Host information was changed | last(/AIX by Zabbix agent/system.uname,#1)<>last(/AIX by Zabbix agent/system.uname,#2) |Info |
|||
AIX: Server has just been restarted | change(/AIX by Zabbix agent/system.uptime)<0 |Info |
|||
AIX: /etc/passwd has been changed | last(/AIX by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/AIX by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |Warning |
|||
AIX: Lack of available memory on server | last(/AIX by Zabbix agent/vm.memory.size[available])<20M |Average |
|||
AIX: Zabbix agent is not available | For passive checks only the availability of the agent(s) and a host is used with {$AGENT.TIMEOUT} as the time threshold. |
max(/AIX by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |Average |
Manual close: Yes |
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | The discovery of network interfaces as defined in the global regular expression "Network interfaces for discovery". |
Zabbix agent | net.if.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Incoming network traffic | Zabbix agent | net.if.in[{#IFNAME}] Preprocessing
|
|
Interface {#IFNAME}: Outgoing network traffic | Zabbix agent | net.if.out[{#IFNAME}] Preprocessing
|
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | The discovery of different types of file systems as defined in the global regular expression "File systems for discovery". |
Zabbix agent | vfs.fs.discovery |
Name | Description | Type | Key and additional info |
---|---|---|---|
{#FSNAME}: Free inodes, % | Zabbix agent | vfs.fs.inode[{#FSNAME},pfree] | |
{#FSNAME}: Free disk space | Zabbix agent | vfs.fs.size[{#FSNAME},free] | |
{#FSNAME}: Free disk space, % | Zabbix agent | vfs.fs.size[{#FSNAME},pfree] | |
{#FSNAME}: Total disk space | Zabbix agent | vfs.fs.size[{#FSNAME},total] | |
{#FSNAME}: Used disk space | Zabbix agent | vfs.fs.size[{#FSNAME},used] |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
{#FSNAME}: Free inodes is less than 20% | last(/AIX by Zabbix agent/vfs.fs.inode[{#FSNAME},pfree])<20 |Warning |
|||
{#FSNAME}: Free disk space is less than 20% | last(/AIX by Zabbix agent/vfs.fs.size[{#FSNAME},pfree])<20 |Warning |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums