zabbix_export: version: '7.2' template_groups: - uuid: 846977d1dfed4968bc5f8bdb363285bc name: 'Templates/Operating systems' templates: - uuid: f8f7908280354f2abeed07dc788c3747 template: 'Linux by Zabbix agent' name: 'Linux by Zabbix agent' description: | This is an official Linux template. It requires Zabbix agent 7.2 or newer. Notes on filesystem (FS) discovery: - The ext4/3/2 filesystem reserves space for privileged usage, typically set at 5% by default. - BTRFS allocates a default of 10% of the volume for its own needs. - To mitigate potential disasters, FS usage triggers are based on the maximum available space. - Utilization formula: 'pused = 100 - 100 * (available / total - free + available)' - The FS utilization chart, derived from graph prototypes, reflects FS reserved space as the difference between used and available space from the total volume. You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387225-discussion-thread-for-official-zabbix-template-for-linux Generated by official Zabbix template tool "Templator" vendor: name: Zabbix version: 7.2-0 groups: - name: 'Templates/Operating systems' items: - uuid: df561a0cece94760a78704edf7da7326 name: 'Host name of Zabbix agent running' key: agent.hostname delay: 1h value_type: CHAR preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: system - uuid: f94f9f4699e94c369e6c98b2a2f485ce name: 'Zabbix agent ping' key: agent.ping description: 'The agent always returns "1" for this item. May be used in combination with `nodata()` for the availability check.' valuemap: name: 'Zabbix agent ping status' tags: - tag: component value: system - uuid: 27c42cf180b44632b5d9b8b5788165b3 name: 'Version of Zabbix agent running' key: agent.version delay: 1h value_type: CHAR preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: application - uuid: ef386d03ff2c42ffa236acd5215ad547 name: 'Maximum number of open file descriptors' key: kernel.maxfiles delay: 1h description: 'May be increased by using the `sysctl` utility or modifying the file `/etc/sysctl.conf`.' preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: system triggers: - uuid: b9bdcf42f54a409a9a9a616dbd0eaed2 expression: 'last(/Linux by Zabbix agent/kernel.maxfiles)<{$KERNEL.MAXFILES.MIN}' name: 'Configured max number of open filedescriptors is too low' event_name: 'Configured max number of open filedescriptors is too low (< {$KERNEL.MAXFILES.MIN})' priority: INFO tags: - tag: scope value: performance - uuid: 678d70c041954ac8982fb5118b49f6e7 name: 'Maximum number of processes' key: kernel.maxproc delay: 1h description: 'May be increased by using the `sysctl` utility or modifying the file `/etc/sysctl.conf`.' preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: system triggers: - uuid: 8cf253ca3eea4109a90443f9cb76fc5c expression: 'last(/Linux by Zabbix agent/kernel.maxproc)<{$KERNEL.MAXPROC.MIN}' name: 'Configured max number of processes is too low' event_name: 'Configured max number of processes is too low (< {$KERNEL.MAXPROC.MIN})' priority: INFO dependencies: - name: 'Getting closer to process limit' expression: 'last(/Linux by Zabbix agent/proc.num)/last(/Linux by Zabbix agent/kernel.maxproc)*100>80' tags: - tag: scope value: performance - uuid: ab7d0471092544a6a950184d1bac906d name: 'Number of processes' key: proc.num tags: - tag: component value: system - uuid: b2637293884d40108f41b11767dd5be0 name: 'Number of running processes' key: 'proc.num[,,run]' tags: - tag: component value: system - uuid: 27cb0f66bb624146acfdd81b58f108a3 name: 'System boot time' key: system.boottime delay: 15m units: unixtime preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1h tags: - tag: component value: system - uuid: 5d186a46867b4eaaafd6396d3239dd3b name: 'Interrupts per second' key: system.cpu.intr value_type: FLOAT description: 'Number of interrupts processed.' preprocessing: - type: CHANGE_PER_SECOND tags: - tag: component value: cpu - uuid: 48528aa936a04c8189375a6eae4033da name: 'Load average (1m avg)' key: 'system.cpu.load[all,avg1]' value_type: FLOAT description: 'Calculated as the system CPU load divided by the number of CPU cores.' tags: - tag: component value: cpu - uuid: 953beb580df8418cb88b667b9dd37259 name: 'Load average (5m avg)' key: 'system.cpu.load[all,avg5]' value_type: FLOAT description: 'Calculated as the system CPU load divided by the number of CPU cores.' tags: - tag: component value: cpu - uuid: 5716000e38e24dae8ead4ed98ede024b name: 'Load average (15m avg)' key: 'system.cpu.load[all,avg15]' value_type: FLOAT description: 'Calculated as the system CPU load divided by the number of CPU cores.' tags: - tag: component value: cpu - uuid: f72e115544eb4079b09fec8c3539241c name: 'Number of CPUs' key: system.cpu.num preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: cpu - uuid: 73e85aa10a704fc7950d2d077f0c54ee name: 'Context switches per second' key: system.cpu.switches value_type: FLOAT description: 'The combined rate at which all processors on the computer are switched from one thread to another.' preprocessing: - type: CHANGE_PER_SECOND tags: - tag: component value: cpu - uuid: ca4235ec7607469cb0124a6253d3c489 name: 'CPU utilization' type: DEPENDENT key: system.cpu.util value_type: FLOAT units: '%' description: 'CPU utilization expressed in %.' preprocessing: - type: JAVASCRIPT parameters: - 'return (100 - value)' master_item: key: 'system.cpu.util[,idle]' tags: - tag: component value: cpu triggers: - uuid: b4e904559b694df0ad45bcce7930c3a6 expression: 'min(/Linux by Zabbix agent/system.cpu.util,5m)>{$CPU.UTIL.CRIT}' name: 'High CPU utilization' event_name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)' opdata: 'Current utilization: {ITEM.LASTVALUE1}' priority: WARNING description: 'CPU utilization is too high. The system might be slow to respond.' dependencies: - name: 'Load average is too high' expression: | 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 tags: - tag: scope value: performance - uuid: 69b187838fb74f319e47c2ff4f99ef54 name: 'CPU guest time' key: 'system.cpu.util[,guest]' value_type: FLOAT units: '%' description: 'Time spent on running a virtual CPU for a guest operating system.' tags: - tag: component value: cpu - uuid: a2b07497f2f343a99d26ad77e65bb54f name: 'CPU guest nice time' key: 'system.cpu.util[,guest_nice]' value_type: FLOAT units: '%' description: 'Time spent on running a niced guest (a virtual CPU for guest operating systems under the control of the Linux kernel).' tags: - tag: component value: cpu - uuid: 7aad6d159baa4a24901847144f0d231b name: 'CPU idle time' key: 'system.cpu.util[,idle]' value_type: FLOAT units: '%' description: 'Time the CPU has spent doing nothing.' tags: - tag: component value: cpu - uuid: cc4bc7693ae84f9bb18cee38d0814195 name: 'CPU interrupt time' key: 'system.cpu.util[,interrupt]' value_type: FLOAT units: '%' description: 'Time the CPU has spent servicing hardware interrupts.' tags: - tag: component value: cpu - uuid: 5df67d9162cc437585990cc8708be894 name: 'CPU iowait time' key: 'system.cpu.util[,iowait]' value_type: FLOAT units: '%' description: 'Time the CPU has been waiting for I/O to complete.' tags: - tag: component value: cpu - uuid: 8ee6e54c86ba44ab88bb9e83c632c1ed name: 'CPU nice time' key: 'system.cpu.util[,nice]' value_type: FLOAT units: '%' description: 'Time the CPU has spent running users'' processes that have been niced.' tags: - tag: component value: cpu - uuid: a949a36004a449c58bef0cdc9d3fafd6 name: 'CPU softirq time' key: 'system.cpu.util[,softirq]' value_type: FLOAT units: '%' description: 'Time the CPU has been servicing software interrupts.' tags: - tag: component value: cpu - uuid: 3161dbd18e874e69b729c8e903cf7390 name: 'CPU steal time' key: 'system.cpu.util[,steal]' value_type: FLOAT units: '%' description: 'The amount of "stolen" CPU from this virtual machine by the hypervisor for other tasks, such as running another virtual machine.' tags: - tag: component value: cpu - uuid: d93097ed5ce74d35b6041ef2b5ba18e8 name: 'CPU system time' key: 'system.cpu.util[,system]' value_type: FLOAT units: '%' description: 'Time the CPU has spent running the kernel and its processes.' tags: - tag: component value: cpu - uuid: 57f9e2e34fab41e18e2bc93e786c92c6 name: 'CPU user time' key: 'system.cpu.util[,user]' value_type: FLOAT units: '%' description: 'Time the CPU has spent running users'' processes that are not niced.' tags: - tag: component value: cpu - uuid: 207341f390134e37ad431e2823666eb9 name: 'System name' key: system.hostname delay: 1h value_type: CHAR description: 'The host name of the system.' inventory_link: NAME preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 12h tags: - tag: component value: system triggers: - uuid: 371a12f95a26438d8da659c84364631b expression: 'change(/Linux by Zabbix agent/system.hostname) and length(last(/Linux by Zabbix agent/system.hostname))>0' name: 'System name has changed' event_name: 'System name has changed (new name: {ITEM.VALUE})' priority: INFO description: 'The name of the system has changed. Acknowledge to close the problem manually.' manual_close: 'YES' tags: - tag: scope value: notice - tag: scope value: security - uuid: 6072902361404672a444841c786875e6 name: 'System local time' key: system.localtime units: unixtime description: 'The local system time of the host.' tags: - tag: component value: system triggers: - uuid: fb77b6ac381c4b5289584bd91e7da7d5 expression: 'fuzzytime(/Linux by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MAX})=0' recovery_mode: RECOVERY_EXPRESSION recovery_expression: 'fuzzytime(/Linux by Zabbix agent/system.localtime,{$SYSTEM.FUZZYTIME.MIN})=1' name: 'System time is out of sync' event_name: 'System time is out of sync (diff with Zabbix server > {$SYSTEM.FUZZYTIME.MAX})' priority: WARNING description: 'The host''s system time is different from Zabbix server time.' manual_close: 'YES' tags: - tag: scope value: availability - tag: scope value: performance - uuid: fd21580a151246b0a340bf924c326aa8 name: 'Operating system architecture' key: system.sw.arch delay: 1h value_type: CHAR description: 'The architecture of the operating system.' preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: os - uuid: 5e4c3d14634843e9b7b182e8fc08efbe name: 'Operating system' key: system.sw.os delay: 1h value_type: CHAR inventory_link: OS preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: os triggers: - uuid: b1998f98c06b49dd8d71e1c6df409371 expression: 'change(/Linux by Zabbix agent/system.sw.os) and length(last(/Linux by Zabbix agent/system.sw.os))>0' name: 'Operating system description has changed' priority: INFO description: '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.' manual_close: 'YES' dependencies: - name: 'System name has changed' expression: 'change(/Linux by Zabbix agent/system.hostname) and length(last(/Linux by Zabbix agent/system.hostname))>0' tags: - tag: scope value: notice - uuid: 58818005e76d46dda14d6592f601ab00 name: 'Number of installed packages' key: system.sw.packages.get delay: 1h preprocessing: - type: JSONPATH parameters: - $.length() - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 12h tags: - tag: component value: os triggers: - uuid: b950c306394f4b3c902060a8273cbcde expression: 'change(/Linux by Zabbix agent/system.sw.packages.get)<>0' name: 'Number of installed packages has been changed' priority: WARNING manual_close: 'YES' tags: - tag: scope value: notice - uuid: 160b82c121b147cbbf18c34dbb01d3ce name: 'Free swap space' key: 'system.swap.size[,free]' units: B description: 'The free space of the swap volume/file expressed in bytes.' tags: - tag: component value: memory - tag: component value: storage - uuid: ca423242172f4b20ba47c26f4a61aee7 name: 'Free swap space in %' key: 'system.swap.size[,pfree]' value_type: FLOAT units: '%' description: 'The free space of the swap volume/file expressed in %.' tags: - tag: component value: memory - tag: component value: storage - uuid: 102c81b5523c4be0b4beae3cb88ebde1 name: 'Total swap space' key: 'system.swap.size[,total]' units: B description: 'The total space of the swap volume/file expressed in bytes.' tags: - tag: component value: memory - tag: component value: storage - uuid: fc6898682f904c57ba28bcb3748b237f name: 'System description' key: system.uname delay: 15m value_type: CHAR description: 'The information as normally returned by `uname -a`.' preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 12h tags: - tag: component value: system - uuid: 8537f6c6ac6b438c80caf227946df891 name: 'System uptime' key: system.uptime delay: 30s trends: '0' units: uptime description: 'The system uptime expressed in the following format: "N days, hh:mm:ss".' tags: - tag: component value: system triggers: - uuid: 1dbab80d7b6847e5b5a676cffba0fd1d expression: 'last(/Linux by Zabbix agent/system.uptime)<10m' name: '{HOST.NAME} has been restarted' event_name: '{HOST.NAME} has been restarted (uptime < 10m)' priority: WARNING description: 'The host uptime is less than 10 minutes.' manual_close: 'YES' tags: - tag: scope value: notice - uuid: 88056b3d2e424d5aba7cabcd4b043c9e name: 'Number of logged in users' key: system.users.num description: 'The number of users who are currently logged in.' tags: - tag: component value: environment - uuid: 3b93d3590df24a46b29f6eb06f5e2446 name: 'Checksum of /etc/passwd' key: 'vfs.file.cksum[/etc/passwd,sha256]' delay: 15m value_type: CHAR preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1h tags: - tag: component value: security triggers: - uuid: 3a764881727b4e7eb01e137ccfc968a2 expression: 'last(/Linux by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/Linux by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2)' name: '/etc/passwd has been changed' priority: INFO manual_close: 'YES' dependencies: - name: 'Operating system description has changed' expression: 'change(/Linux by Zabbix agent/system.sw.os) and length(last(/Linux by Zabbix agent/system.sw.os))>0' - name: 'System name has changed' expression: 'change(/Linux by Zabbix agent/system.hostname) and length(last(/Linux by Zabbix agent/system.hostname))>0' tags: - tag: scope value: security - uuid: 868440292732425c8f9df52882822c82 name: 'Get filesystems' key: vfs.fs.get history: '0' value_type: TEXT description: 'The `vfs.fs.get` key acquires raw information set about the filesystems. Later to be extracted by preprocessing in dependent items.' tags: - tag: component value: raw - uuid: e811e6e2ae84461294e121f12e767b40 name: 'Available memory' key: 'vm.memory.size[available]' units: B description: | The available memory: - in Linux = free + buffers + cache; - on other platforms calculation may vary. See also Appendixes in Zabbix Documentation about parameters of the `vm.memory.size` item. tags: - tag: component value: memory - uuid: 20779a4c43374e5f9bea2584e93b85ef name: 'Available memory in %' key: 'vm.memory.size[pavailable]' value_type: FLOAT units: '%' description: 'The available memory as percentage of the total. See also Appendixes in Zabbix Documentation about parameters of the `vm.memory.size` item.' tags: - tag: component value: memory - uuid: d5c3541a7c0949ce812df1beb0732941 name: 'Total memory' key: 'vm.memory.size[total]' units: B description: 'Total memory expressed in bytes.' tags: - tag: component value: memory - uuid: 403cebed115441369e94d35d070ca7b8 name: 'Memory utilization' type: DEPENDENT key: vm.memory.utilization value_type: FLOAT units: '%' description: 'The percentage of used memory is calculated as `100-pavailable`.' preprocessing: - type: JAVASCRIPT parameters: - 'return (100-value);' master_item: key: 'vm.memory.size[pavailable]' tags: - tag: component value: memory triggers: - uuid: cfd395b1cde74ef18a5e5f840bd5142a expression: 'min(/Linux by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}' name: 'High memory utilization' event_name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)' priority: AVERAGE description: 'The system is running out of free memory.' dependencies: - name: 'Lack of available memory' expression: 'max(/Linux by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent/vm.memory.size[total])>0' tags: - tag: scope value: capacity - tag: scope value: performance - uuid: ca48c53be1bf46ae9dd2707158a55139 name: 'Zabbix agent availability' type: INTERNAL key: 'zabbix[host,agent,available]' description: 'Used for monitoring the availability status of the agent.' valuemap: name: zabbix.host.available tags: - tag: component value: system triggers: - uuid: 93594214371b4dc88b41663cad8537f0 expression: 'max(/Linux by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0' name: 'Zabbix agent is not available' event_name: 'Zabbix agent is not available (for {$AGENT.TIMEOUT})' priority: AVERAGE description: 'For passive agents only, host availability is used with `{$AGENT.TIMEOUT}` as a time threshold.' manual_close: 'YES' tags: - tag: scope value: availability discovery_rules: - uuid: acfdea9c46ef48c68e6636f43b8f96a2 name: 'Network interface discovery' key: net.if.discovery delay: 1h filter: evaltype: AND conditions: - macro: '{#IFNAME}' value: '{$NET.IF.IFNAME.MATCHES}' - macro: '{#IFNAME}' value: '{$NET.IF.IFNAME.NOT_MATCHES}' operator: NOT_MATCHES_REGEX description: 'The discovery of network interfaces.' item_prototypes: - uuid: 4d66608e190e4be7a438ea5d0d26e353 name: 'Interface {#IFNAME}: Inbound packets discarded' key: 'net.if.in["{#IFNAME}",dropped]' delay: 3m preprocessing: - type: CHANGE_PER_SECOND tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: ed79960ca91f4e2ca45fed014a02c50b name: 'Interface {#IFNAME}: Inbound packets with errors' key: 'net.if.in["{#IFNAME}",errors]' delay: 3m preprocessing: - type: CHANGE_PER_SECOND tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: c9941a1f8d904309b581cae5ccc1660c name: 'Interface {#IFNAME}: Bits received' key: 'net.if.in["{#IFNAME}"]' delay: 3m units: bps preprocessing: - type: CHANGE_PER_SECOND - type: MULTIPLIER parameters: - '8' tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: 0795a375a41d46a2b5c89547061cec8e name: 'Interface {#IFNAME}: Outbound packets discarded' key: 'net.if.out["{#IFNAME}",dropped]' delay: 3m preprocessing: - type: CHANGE_PER_SECOND tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: f8e8bbc069414e928a5da9817f4599a5 name: 'Interface {#IFNAME}: Outbound packets with errors' key: 'net.if.out["{#IFNAME}",errors]' delay: 3m preprocessing: - type: CHANGE_PER_SECOND tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: 82897d99b0114c67b0f5b449c768c8e7 name: 'Interface {#IFNAME}: Bits sent' key: 'net.if.out["{#IFNAME}"]' delay: 3m units: bps preprocessing: - type: CHANGE_PER_SECOND - type: MULTIPLIER parameters: - '8' tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: 3efd24ad36b04eb995cfeab82721c2fe name: 'Interface {#IFNAME}: Operational status' key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]' trends: '0' description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt' valuemap: name: ifOperStatus preprocessing: - type: JAVASCRIPT parameters: - | var newvalue; switch(value) { case "unknown": newvalue = 0; break; case "notpresent": newvalue = 1; break; case "down": newvalue = 2; break; case "lowerlayerdown": newvalue = 3; break; case "testing": newvalue = 4; break; case "dormant": newvalue = 5; break; case "up": newvalue = 6; break; default: newvalue = "Problem parsing interface operstate in JS"; } return newvalue; tags: - tag: component value: network - tag: interface value: '{#IFNAME}' trigger_prototypes: - uuid: 4d7f18ca132340b885c0692464dc429f expression: '{$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))' recovery_mode: RECOVERY_EXPRESSION recovery_expression: 'last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0' name: 'Interface {#IFNAME}: Link down' opdata: 'Current state: {ITEM.LASTVALUE1}' priority: AVERAGE description: | This trigger expression works as follows: 1. It can be triggered if the operations status is down. 2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down. 3. `last(/TEMPLATE_NAME/METRIC,#1)<>last(/TEMPLATE_NAME/METRIC,#2)` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.) WARNING: if closed manually - it will not fire again on the next poll, because of .diff. manual_close: 'YES' tags: - tag: scope value: availability - uuid: f4c456e1f9ef4adbbd11f1ee17fa4d76 name: 'Interface {#IFNAME}: Speed' key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]' delay: 5m trends: '0' units: bps description: | 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 `get_link_ksettings` method (mostly Ethernet). Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net preprocessing: - type: MULTIPLIER parameters: - '1000000' - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1h tags: - tag: component value: network - tag: interface value: '{#IFNAME}' - uuid: d537e74070c74e4385ad241e8514dd3a name: 'Interface {#IFNAME}: Interface type' key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]' delay: 1h trends: '0' description: | It indicates the interface protocol type as a decimal value. See `include/uapi/linux/if_arp.h` for all possible values. Reference: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net valuemap: name: 'Linux::Interface protocol types' preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1d tags: - tag: component value: network - tag: interface value: '{#IFNAME}' trigger_prototypes: - uuid: 2ffdc1d5a318492bb497facd263843bd expression: | 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) recovery_mode: RECOVERY_EXPRESSION recovery_expression: | (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"],#2)>0) or (last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])=2) name: 'Interface {#IFNAME}: Ethernet has changed to lower speed than it was before' opdata: 'Current reported speed: {ITEM.LASTVALUE1}' priority: INFO description: '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.' manual_close: 'YES' dependencies: - name: 'Interface {#IFNAME}: Link down' expression: '{$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))' recovery_expression: 'last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0' tags: - tag: scope value: performance - uuid: f64186d30b4e4c4281fce84349cbd646 expression: | (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 recovery_mode: RECOVERY_EXPRESSION recovery_expression: | avg(/Linux by Zabbix agent/net.if.in["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) and avg(/Linux by Zabbix agent/net.if.out["{#IFNAME}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]) name: 'Interface {#IFNAME}: High bandwidth usage' event_name: 'Interface {#IFNAME}: High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)' opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}' priority: WARNING description: 'The utilization of the network interface is close to its estimated maximum bandwidth.' manual_close: 'YES' dependencies: - name: 'Interface {#IFNAME}: Link down' expression: '{$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))' recovery_expression: 'last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0' tags: - tag: scope value: performance - uuid: ad50aecf8e7746b2a85f24507f1d511d expression: | 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}"} recovery_mode: RECOVERY_EXPRESSION recovery_expression: | max(/Linux by Zabbix agent/net.if.in["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 and max(/Linux by Zabbix agent/net.if.out["{#IFNAME}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 name: 'Interface {#IFNAME}: High error rate' event_name: 'Interface {#IFNAME}: High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)' opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}' priority: WARNING description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.' manual_close: 'YES' dependencies: - name: 'Interface {#IFNAME}: Link down' expression: '{$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))' recovery_expression: 'last(/Linux by Zabbix agent/vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"])<>2 or {$IFCONTROL:"{#IFNAME}"}=0' tags: - tag: scope value: availability - tag: scope value: performance graph_prototypes: - uuid: 50ced0f22d9d478eb4b639ef64e242ab name: 'Interface {#IFNAME}: Network traffic' graph_items: - drawtype: GRADIENT_LINE color: 199C0D item: host: 'Linux by Zabbix agent' key: 'net.if.in["{#IFNAME}"]' - sortorder: '1' drawtype: BOLD_LINE color: F63100 item: host: 'Linux by Zabbix agent' key: 'net.if.out["{#IFNAME}"]' - sortorder: '2' color: 00611C yaxisside: RIGHT item: host: 'Linux by Zabbix agent' key: 'net.if.out["{#IFNAME}",errors]' - sortorder: '3' color: F7941D yaxisside: RIGHT item: host: 'Linux by Zabbix agent' key: 'net.if.in["{#IFNAME}",errors]' - sortorder: '4' color: FC6EA3 yaxisside: RIGHT item: host: 'Linux by Zabbix agent' key: 'net.if.out["{#IFNAME}",dropped]' - sortorder: '5' color: 6C59DC yaxisside: RIGHT item: host: 'Linux by Zabbix agent' key: 'net.if.in["{#IFNAME}",dropped]' - uuid: 2bbdc79f082d4c618e01bec625e9c90a name: 'Block devices discovery' key: vfs.dev.discovery delay: 1h filter: evaltype: AND conditions: - macro: '{#DEVNAME}' value: '{$VFS.DEV.DEVNAME.MATCHES}' - macro: '{#DEVNAME}' value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}' operator: NOT_MATCHES_REGEX - macro: '{#DEVTYPE}' value: disk item_prototypes: - uuid: 5e29abb8d56044f69426ed3594f8ac9f name: '{#DEVNAME}: Disk average queue size (avgqu-sz)' type: DEPENDENT key: 'vfs.dev.queue_size[{#DEVNAME}]' value_type: FLOAT description: 'The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected.' preprocessing: - type: JSONPATH parameters: - '$[10]' - type: CHANGE_PER_SECOND - type: MULTIPLIER parameters: - '0.001' master_item: key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: 9600208af80e4a6abe55bb5a2240ea8e name: '{#DEVNAME}: Disk read request avg waiting time (r_await)' type: CALCULATED key: 'vfs.dev.read.await[{#DEVNAME}]' value_type: FLOAT units: '!ms' params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)' description: '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.' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: f4b982d8e7ee47adb34d74d817db43a6 name: '{#DEVNAME}: Disk read rate' type: DEPENDENT key: 'vfs.dev.read.rate[{#DEVNAME}]' value_type: FLOAT units: '!r/s' description: 'r/s (read operations per second) - the number (after merges) of read requests completed per second for the device.' preprocessing: - type: JSONPATH parameters: - '$[0]' - type: CHANGE_PER_SECOND master_item: key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: 877a3e892d9e489f98f2f16ea05bfdc2 name: '{#DEVNAME}: Disk read time (rate)' type: DEPENDENT key: 'vfs.dev.read.time.rate[{#DEVNAME}]' value_type: FLOAT description: 'The rate of total read time counter; used in `r_await` calculation.' preprocessing: - type: JSONPATH parameters: - '$[3]' - type: CHANGE_PER_SECOND - type: MULTIPLIER parameters: - '0.001' master_item: key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: 4a3ee3166ee748e1855a2b02d44e9d62 name: '{#DEVNAME}: Disk utilization' type: DEPENDENT key: 'vfs.dev.util[{#DEVNAME}]' value_type: FLOAT units: '%' description: 'The percentage of elapsed time during which the selected disk drive was busy while servicing read or write requests.' preprocessing: - type: JSONPATH parameters: - '$[9]' - type: CHANGE_PER_SECOND - type: MULTIPLIER parameters: - '0.1' master_item: key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: 5907708cf4854d48ae3ebf8f0bc41eef name: '{#DEVNAME}: Disk write request avg waiting time (w_await)' type: CALCULATED key: 'vfs.dev.write.await[{#DEVNAME}]' value_type: FLOAT units: '!ms' params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)' description: '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.' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: c4eb904dfddd4b0f8cdee4b2c477e213 name: '{#DEVNAME}: Disk write rate' type: DEPENDENT key: 'vfs.dev.write.rate[{#DEVNAME}]' value_type: FLOAT units: '!w/s' description: 'w/s (write operations per second) - the number (after merges) of write requests completed per second for the device.' preprocessing: - type: JSONPATH parameters: - '$[4]' - type: CHANGE_PER_SECOND master_item: key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: e828495863304b219e24965f7b91e963 name: '{#DEVNAME}: Disk write time (rate)' type: DEPENDENT key: 'vfs.dev.write.time.rate[{#DEVNAME}]' value_type: FLOAT description: 'The rate of total write time counter; used in `w_await` calculation.' preprocessing: - type: JSONPATH parameters: - '$[7]' - type: CHANGE_PER_SECOND - type: MULTIPLIER parameters: - '0.001' master_item: key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' tags: - tag: component value: storage - tag: disk value: '{#DEVNAME}' - uuid: 8309fd01a5864ad68866717d0fe67080 name: '{#DEVNAME}: Get stats' key: 'vfs.file.contents[/sys/block/{#DEVNAME}/stat]' history: '0' value_type: TEXT description: 'The contents of get `/sys/block/{#DEVNAME}/stat` to get the disk statistics.' preprocessing: - type: JAVASCRIPT parameters: - 'return JSON.stringify(value.trim().split(/ +/));' tags: - tag: component value: raw trigger_prototypes: - uuid: eb6230f786d04b658ce62c30a9309a34 expression: '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}"}' name: '{#DEVNAME}: Disk read/write request responses are too high' event_name: '{#DEVNAME}: Disk read/write request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} ms for 15m or write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} ms for 15m)' priority: WARNING description: 'This trigger might indicate the disk `{#DEVNAME}` saturation.' manual_close: 'YES' tags: - tag: scope value: performance graph_prototypes: - uuid: 5e9b35b27b90489390d397758fbfdf64 name: '{#DEVNAME}: Disk average waiting time' graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: 'vfs.dev.read.await[{#DEVNAME}]' - sortorder: '1' drawtype: GRADIENT_LINE color: F63100 item: host: 'Linux by Zabbix agent' key: 'vfs.dev.write.await[{#DEVNAME}]' - uuid: d436d6d5456c44f0a534bf1f681d5039 name: '{#DEVNAME}: Disk read/write rates' graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: 'vfs.dev.read.rate[{#DEVNAME}]' - sortorder: '1' drawtype: GRADIENT_LINE color: F63100 item: host: 'Linux by Zabbix agent' key: 'vfs.dev.write.rate[{#DEVNAME}]' - uuid: c42e4045e0974e89a306c57fb188c4fa name: '{#DEVNAME}: Disk utilization and queue' graph_items: - color: 199C0D yaxisside: RIGHT item: host: 'Linux by Zabbix agent' key: 'vfs.dev.queue_size[{#DEVNAME}]' - sortorder: '1' drawtype: GRADIENT_LINE color: F63100 item: host: 'Linux by Zabbix agent' key: 'vfs.dev.util[{#DEVNAME}]' preprocessing: - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1h - uuid: 7d090603037e4defb34ef74021d3adcd name: 'Mounted filesystem discovery' type: DEPENDENT key: vfs.fs.dependent.discovery filter: evaltype: AND conditions: - macro: '{#FSNAME}' value: '{$VFS.FS.FSNAME.MATCHES}' - macro: '{#FSNAME}' value: '{$VFS.FS.FSNAME.NOT_MATCHES}' operator: NOT_MATCHES_REGEX - macro: '{#FSTYPE}' value: '{$VFS.FS.FSTYPE.MATCHES}' - macro: '{#FSTYPE}' value: '{$VFS.FS.FSTYPE.NOT_MATCHES}' operator: NOT_MATCHES_REGEX description: 'The discovery of mounted filesystems with different types.' item_prototypes: - uuid: 4da7f08a979a46df8b8aeebb42a46207 name: 'FS [{#FSNAME}]: Inodes: Free, in %' type: DEPENDENT key: 'vfs.fs.dependent.inode[{#FSNAME},pfree]' value_type: FLOAT units: '%' description: 'Free metadata space expressed in %.' preprocessing: - type: JSONPATH parameters: - $.inodes.pfree master_item: key: 'vfs.fs.dependent[{#FSNAME},data]' tags: - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' trigger_prototypes: - uuid: 115b2d37807f476faf6d02ef406acabd expression: 'min(/Linux by Zabbix agent/vfs.fs.dependent.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}' name: 'FS [{#FSNAME}]: Running out of free inodes' event_name: '{#FSNAME}: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}%)' opdata: 'Free inodes: {ITEM.LASTVALUE1}' priority: AVERAGE description: 'Disk writing may fail if index nodes are exhausted, leading to error messages like "No space left on device" or "Disk is full", despite available free space.' tags: - tag: scope value: capacity - tag: scope value: performance - uuid: ea012c7295344ffe8c66f7ea54d81042 expression: 'min(/Linux by Zabbix agent/vfs.fs.dependent.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}' name: 'FS [{#FSNAME}]: Running out of free inodes' event_name: 'FS [{#FSNAME}]: Running out of free inodes (free < {$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"}%)' opdata: 'Free inodes: {ITEM.LASTVALUE1}' priority: WARNING description: 'Disk writing may fail if index nodes are exhausted, leading to error messages like "No space left on device" or "Disk is full", despite available free space.' dependencies: - name: 'FS [{#FSNAME}]: Running out of free inodes' expression: 'min(/Linux by Zabbix agent/vfs.fs.dependent.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"}' tags: - tag: scope value: capacity - tag: scope value: performance - uuid: d53e00855fb349e29bd74146e55265ae name: 'FS [{#FSNAME}]: Space: Available' type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},free]' units: B description: 'Available storage space expressed in bytes.' preprocessing: - type: JSONPATH parameters: - $.bytes.free master_item: key: 'vfs.fs.dependent[{#FSNAME},data]' tags: - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' - uuid: 61ffe6fcb9d94199aaeb5d568ab74a27 name: 'FS [{#FSNAME}]: Space: Used, in %' type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},pused]' value_type: FLOAT units: '%' description: 'Calculated as the percentage of currently used space compared to the maximum available space.' preprocessing: - type: JSONPATH parameters: - $.bytes.pused master_item: key: 'vfs.fs.dependent[{#FSNAME},data]' tags: - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' trigger_prototypes: - uuid: 9abccdfff8be4e14967ac917ca09afe1 expression: 'min(/Linux by Zabbix agent/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}' name: 'FS [{#FSNAME}]: Space is critically low' event_name: 'FS [{#FSNAME}]: Space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%, total {{?last(//vfs.fs.dependent.size[{#FSNAME},total])/1024/1024/1024}.fmtnum(1)}GB)' opdata: 'Space used: {{ITEM.LASTVALUE1}.fmtnum(1)}%' priority: AVERAGE description: | The volume's space usage exceeds the `{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%` limit. The trigger expression is based on the current used and maximum available spaces. Event name represents the total volume space, which can differ from the maximum available space, depending on the filesystem type. manual_close: 'YES' tags: - tag: scope value: availability - tag: scope value: capacity - uuid: d6d348ea500c428da6ba718816c4b048 expression: 'min(/Linux by Zabbix agent/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}' name: 'FS [{#FSNAME}]: Space is low' event_name: 'FS [{#FSNAME}]: Space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%, total {{?last(//vfs.fs.dependent.size[{#FSNAME},total])/1024/1024/1024}.fmtnum(1)}GB)' opdata: 'Space used: {{ITEM.LASTVALUE1}.fmtnum(1)}%' priority: WARNING description: | The volume's space usage exceeds the `{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%` limit. The trigger expression is based on the current used and maximum available spaces. Event name represents the total volume space, which can differ from the maximum available space, depending on the filesystem type. manual_close: 'YES' dependencies: - name: 'FS [{#FSNAME}]: Space is critically low' expression: 'min(/Linux by Zabbix agent/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}' tags: - tag: scope value: availability - tag: scope value: capacity - uuid: a6d90e0bc5ef4fb7acee8682687c485f name: 'FS [{#FSNAME}]: Space: Total' type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},total]' units: B description: 'Total space expressed in bytes.' preprocessing: - type: JSONPATH parameters: - $.bytes.total master_item: key: 'vfs.fs.dependent[{#FSNAME},data]' tags: - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' - uuid: efee06a191aa4e5c8faa2762988b6955 name: 'FS [{#FSNAME}]: Space: Used' type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},used]' units: B description: 'Used storage expressed in bytes.' preprocessing: - type: JSONPATH parameters: - $.bytes.used master_item: key: 'vfs.fs.dependent[{#FSNAME},data]' tags: - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' - uuid: 686df59ab1e64b228a1efc20561cf520 name: 'FS [{#FSNAME}]: Get data' type: DEPENDENT key: 'vfs.fs.dependent[{#FSNAME},data]' history: 1h value_type: TEXT description: 'Intermediate data of `{#FSNAME}` filesystem.' preprocessing: - type: JSONPATH parameters: - '$.[?(@.fsname==''{#FSNAME}'')].first()' master_item: key: vfs.fs.get tags: - tag: component value: raw - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' - uuid: c4bfc3639837451bb1fcf98ea654c939 name: 'FS [{#FSNAME}]: Option: Read-only' type: DEPENDENT key: 'vfs.fs.dependent[{#FSNAME},readonly]' description: 'The filesystem is mounted as read-only. It is available only for Zabbix agents 6.4 and higher.' preprocessing: - type: JSONPATH parameters: - $.options error_handler: DISCARD_VALUE - type: REGEX parameters: - '(?:^|,)ro\b' - '1' error_handler: CUSTOM_VALUE error_handler_params: '0' master_item: key: 'vfs.fs.dependent[{#FSNAME},data]' tags: - tag: component value: storage - tag: filesystem value: '{#FSNAME}' - tag: fstype value: '{#FSTYPE}' trigger_prototypes: - uuid: c8e2f67378d84b3ba687467bc6daf63a expression: 'last(/Linux by Zabbix agent/vfs.fs.dependent[{#FSNAME},readonly],#2)=0 and last(/Linux by Zabbix agent/vfs.fs.dependent[{#FSNAME},readonly])=1' recovery_mode: RECOVERY_EXPRESSION recovery_expression: 'last(/Linux by Zabbix agent/vfs.fs.dependent[{#FSNAME},readonly])=0' name: 'FS [{#FSNAME}]: Filesystem has become read-only' priority: AVERAGE description: 'The filesystem has become read-only, possibly due to an I/O error. Available only for Zabbix agents 6.4 and higher.' manual_close: 'YES' tags: - tag: scope value: availability - tag: scope value: performance graph_prototypes: - uuid: c2a31e9370b342b1942cc5308fd63a2c name: 'FS [{#FSTYPE}({#FSNAME})]: Space usage graph, in % (relative to max available)' width: '600' height: '340' ymin_type_1: FIXED ymax_type_1: FIXED graph_items: - drawtype: FILLED_REGION color: F63100 calc_fnc: LAST item: host: 'Linux by Zabbix agent' key: 'vfs.fs.dependent.size[{#FSNAME},pused]' - uuid: bb209e7862ad4f8f8f7efcd003146e97 name: 'FS [{#FSTYPE}({#FSNAME})]: Space utilization chart (relative to total)' width: '600' height: '340' type: PIE show_3d: 'YES' graph_items: - color: '787878' calc_fnc: LAST type: GRAPH_SUM item: host: 'Linux by Zabbix agent' key: 'vfs.fs.dependent.size[{#FSNAME},total]' - sortorder: '1' color: F63100 calc_fnc: LAST item: host: 'Linux by Zabbix agent' key: 'vfs.fs.dependent.size[{#FSNAME},used]' - sortorder: '2' color: 199C09 calc_fnc: LAST item: host: 'Linux by Zabbix agent' key: 'vfs.fs.dependent.size[{#FSNAME},free]' master_item: key: vfs.fs.get lld_macro_paths: - lld_macro: '{#FSNAME}' path: $.fsname - lld_macro: '{#FSTYPE}' path: $.fstype preprocessing: - type: JAVASCRIPT parameters: - | var filesystems = JSON.parse(value); result = filesystems.map(function (filesystem) { return { 'fsname': filesystem.fsname, 'fstype': filesystem.fstype }; }); return JSON.stringify(result); - type: DISCARD_UNCHANGED_HEARTBEAT parameters: - 1h overrides: - name: 'Skip metadata collection for dynamic FS' step: '1' filter: conditions: - macro: '{#FSTYPE}' value: ^(btrfs|zfs)$ operations: - operator: LIKE value: Inodes discover: NO_DISCOVER tags: - tag: class value: os - tag: target value: linux macros: - macro: '{$AGENT.TIMEOUT}' value: 3m description: 'Timeout after which agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (passive mode).' - macro: '{$CPU.UTIL.CRIT}' value: '90' description: 'Critical threshold of CPU utilization expressed in %.' - macro: '{$IF.ERRORS.WARN}' value: '2' description: 'Warning threshold of error packet rate. Can be used with interface name as context.' - macro: '{$IF.UTIL.MAX}' value: '90' description: 'Used as a threshold in the interface utilization trigger.' - macro: '{$IFCONTROL}' value: '1' description: 'Link status trigger will be fired only for interfaces where the context macro equals "1".' - macro: '{$KERNEL.MAXFILES.MIN}' value: '256' - macro: '{$KERNEL.MAXPROC.MIN}' value: '1024' - macro: '{$LOAD_AVG_PER_CPU.MAX.WARN}' value: '1.5' description: 'The CPU load per core is considered sustainable. If necessary, it can be tuned.' - macro: '{$MEMORY.AVAILABLE.MIN}' value: 20M description: 'Used as a threshold in the available memory trigger.' - macro: '{$MEMORY.UTIL.MAX}' value: '90' description: 'Used as a threshold in the memory utilization trigger.' - macro: '{$NET.IF.IFNAME.MATCHES}' value: '^.*$' description: 'Used for network interface discovery. Can be overridden on the host or linked template level.' - macro: '{$NET.IF.IFNAME.NOT_MATCHES}' value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9A-z]+$|docker[0-9]+|br-[a-z0-9]{12})' description: 'Filters out `loopbacks`, `nulls`, docker `veth` links and `docker0` bridge by default.' - macro: '{$SWAP.PFREE.MIN.WARN}' value: '50' description: 'The warning threshold of the minimum free swap.' - macro: '{$SYSTEM.FUZZYTIME.MAX}' value: 60s description: 'The upper threshold for difference of system time.' - macro: '{$SYSTEM.FUZZYTIME.MIN}' value: 10s description: 'The lower threshold for difference of system time. Used in recovery expression to avoid trigger flapping.' - macro: '{$VFS.DEV.DEVNAME.MATCHES}' value: .+ description: 'Used for block device discovery. Can be overridden on the host or linked template level.' - macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}' value: '^(loop[0-9]*|sd[a-z][0-9]+|nbd[0-9]+|sr[0-9]+|fd[0-9]+|dm-[0-9]+|ram[0-9]+|ploop[a-z0-9]+|md[0-9]*|hcp[0-9]*|zram[0-9]*)' description: 'Used for block device discovery. Can be overridden on the host or linked template level.' - macro: '{$VFS.DEV.READ.AWAIT.WARN}' value: '20' description: 'The average response time (in ms) of disk read before the trigger fires.' - macro: '{$VFS.DEV.WRITE.AWAIT.WARN}' value: '20' description: 'The average response time (in ms) of disk write before the trigger fires.' - macro: '{$VFS.FS.FSNAME.MATCHES}' value: .+ description: 'Used for filesystem discovery. Can be overridden on the host or linked template level.' - macro: '{$VFS.FS.FSNAME.NOT_MATCHES}' value: ^(/dev|/sys|/run|/proc|.+/shm$) description: 'Used for filesystem discovery. Can be overridden on the host or linked template level.' - macro: '{$VFS.FS.FSTYPE.MATCHES}' value: ^(btrfs|ext2|ext3|ext4|reiser|xfs|ffs|ufs|jfs|jfs2|vxfs|hfs|apfs|refs|ntfs|fat32|zfs)$ description: 'Used for filesystem discovery. Can be overridden on the host or linked template level.' - macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}' value: ^\s$ description: 'Used for filesystem discovery. Can be overridden on the host or linked template level.' - macro: '{$VFS.FS.INODE.PFREE.MIN.CRIT}' value: '10' description: 'The critical threshold of the filesystem metadata utilization.' - macro: '{$VFS.FS.INODE.PFREE.MIN.WARN}' value: '20' description: 'The warning threshold of the filesystem metadata utilization.' - macro: '{$VFS.FS.PUSED.MAX.CRIT}' value: '90' description: 'The critical threshold of the filesystem utilization.' - macro: '{$VFS.FS.PUSED.MAX.WARN}' value: '80' description: 'The warning threshold of the filesystem utilization.' dashboards: - uuid: c689ad3115fd46a4b927d1f70ee2e5a4 name: Filesystems pages: - name: Overview widgets: - type: graphprototype width: '72' height: '5' fields: - type: INTEGER name: columns value: '3' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'FS [{#FSTYPE}({#FSNAME})]: Space utilization chart (relative to total)' - type: STRING name: reference value: AAAEB - type: graphprototype 'y': '5' width: '72' height: '5' fields: - type: INTEGER name: columns value: '1' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'FS [{#FSTYPE}({#FSNAME})]: Space usage graph, in % (relative to max available)' - type: STRING name: reference value: AAAEC - uuid: 14aa11c326a54ec390d4c209d30cc741 name: 'Network interfaces' pages: - name: Overview widgets: - type: graphprototype width: '72' height: '5' fields: - type: INTEGER name: columns value: '1' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'Interface {#IFNAME}: Network traffic' - type: STRING name: reference value: AAAAJ - uuid: e9ca2f8e715f428b8edc0129aa0c79de name: 'System performance' pages: - widgets: - type: graph width: '36' height: '5' fields: - type: GRAPH name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'Linux: System load' - type: STRING name: reference value: AAAAA - type: graph 'y': '5' width: '36' height: '5' fields: - type: GRAPH name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'Linux: Memory usage' - type: STRING name: reference value: AAAAC - type: graphprototype 'y': '10' width: '72' height: '5' fields: - type: INTEGER name: columns value: '3' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'FS [{#FSTYPE}({#FSNAME})]: Space utilization chart (relative to total)' - type: STRING name: reference value: AAAEA - type: graphprototype 'y': '15' width: '72' height: '5' fields: - type: INTEGER name: columns value: '1' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: '{#DEVNAME}: Disk read/write rates' - type: STRING name: reference value: AAAAF - type: graphprototype 'y': '20' width: '72' height: '5' fields: - type: INTEGER name: columns value: '1' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: '{#DEVNAME}: Disk average waiting time' - type: STRING name: reference value: AAAAG - type: graphprototype 'y': '25' width: '72' height: '5' fields: - type: INTEGER name: columns value: '1' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: '{#DEVNAME}: Disk utilization and queue' - type: STRING name: reference value: AAAAH - type: graphprototype 'y': '30' width: '72' height: '5' fields: - type: INTEGER name: columns value: '1' - type: GRAPH_PROTOTYPE name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'Interface {#IFNAME}: Network traffic' - type: STRING name: reference value: AAAAI - type: graph x: '36' width: '36' height: '5' fields: - type: GRAPH name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'Linux: CPU usage' - type: STRING name: reference value: AAAAB - type: graph x: '36' 'y': '5' width: '36' height: '5' fields: - type: GRAPH name: graphid.0 value: host: 'Linux by Zabbix agent' name: 'Linux: Swap usage' - type: STRING name: reference value: AAAAD valuemaps: - uuid: 8c048c6cca8248f2860c208e8db0f59e name: ifOperStatus mappings: - value: '0' newvalue: unknown - value: '1' newvalue: notpresent - value: '2' newvalue: down - value: '3' newvalue: lowerlayerdown - value: '4' newvalue: testing - value: '5' newvalue: dormant - value: '6' newvalue: up - uuid: 044df261808442a8af9e5cda0acaa6a5 name: 'Linux::Interface protocol types' mappings: - value: '0' newvalue: 'from KA9Q: NET/ROM pseudo' - value: '1' newvalue: Ethernet - value: '2' newvalue: 'Experimental Ethernet' - value: '3' newvalue: 'AX.25 Level 2' - value: '4' newvalue: 'PROnet token ring' - value: '5' newvalue: Chaosnet - value: '6' newvalue: 'IEEE 802.2 Ethernet/TR/TB' - value: '7' newvalue: ARCnet - value: '8' newvalue: APPLEtalk - value: '15' newvalue: 'Frame Relay DLCI' - value: '19' newvalue: ATM - value: '23' newvalue: 'Metricom STRIP (new IANA id)' - value: '24' newvalue: 'IEEE 1394 IPv4 - RFC 2734' - value: '27' newvalue: EUI-64 - value: '32' newvalue: InfiniBand - value: '256' newvalue: ARPHRD_SLIP - value: '257' newvalue: ARPHRD_CSLIP - value: '258' newvalue: ARPHRD_SLIP6 - value: '259' newvalue: ARPHRD_CSLIP6 - value: '260' newvalue: 'Notional KISS type' - value: '264' newvalue: ARPHRD_ADAPT - value: '270' newvalue: ARPHRD_ROSE - value: '271' newvalue: 'CCITT X.25' - value: '272' newvalue: 'Boards with X.25 in firmware' - value: '280' newvalue: 'Controller Area Network' - value: '512' newvalue: ARPHRD_PPP - value: '513' newvalue: 'Cisco HDLC' - value: '516' newvalue: LAPB - value: '517' newvalue: 'Digital''s DDCMP protocol' - value: '518' newvalue: 'Raw HDLC' - value: '519' newvalue: 'Raw IP' - value: '768' newvalue: 'IPIP tunnel' - value: '769' newvalue: 'IP6IP6 tunnel' - value: '770' newvalue: 'Frame Relay Access Device' - value: '771' newvalue: 'SKIP vif' - value: '772' newvalue: 'Loopback device' - value: '773' newvalue: 'Localtalk device' - value: '774' newvalue: 'Fiber Distributed Data Interface' - value: '775' newvalue: 'AP1000 BIF' - value: '776' newvalue: 'sit0 device - IPv6-in-IPv4' - value: '777' newvalue: 'IP over DDP tunneller' - value: '778' newvalue: 'GRE over IP' - value: '779' newvalue: 'PIMSM register interface' - value: '780' newvalue: 'High Performance Parallel Interface' - value: '781' newvalue: 'Nexus 64Mbps Ash' - value: '782' newvalue: 'Acorn Econet' - value: '783' newvalue: Linux-IrDA - value: '784' newvalue: 'Point to point fibrechannel' - value: '785' newvalue: 'Fibrechannel arbitrated loop' - value: '786' newvalue: 'Fibrechannel public loop' - value: '787' newvalue: 'Fibrechannel fabric' - value: '800' newvalue: 'Magic type ident for TR' - value: '801' newvalue: 'IEEE 802.11' - value: '802' newvalue: 'IEEE 802.11 + Prism2 header' - value: '803' newvalue: 'IEEE 802.11 + radiotap header' - value: '804' newvalue: ARPHRD_IEEE802154 - value: '805' newvalue: 'IEEE 802.15.4 network monitor' - value: '820' newvalue: 'PhoNet media type' - value: '821' newvalue: 'PhoNet pipe header' - value: '822' newvalue: 'CAIF media type' - value: '823' newvalue: 'GRE over IPv6' - value: '824' newvalue: 'Netlink header' - value: '825' newvalue: 'IPv6 over LoWPAN' - value: '826' newvalue: 'Vsock monitor header' - uuid: 5488e5d78d704b78aee60c60414ce0c3 name: zabbix.host.available mappings: - value: '0' newvalue: 'not available' - value: '1' newvalue: available - value: '2' newvalue: unknown - uuid: 64faba3a883241a88da8833970ac3ab0 name: 'Zabbix agent ping status' mappings: - value: '1' newvalue: Up triggers: - uuid: ae5269e17d434927bfd6edc09a9a1f4d expression: 'last(/Linux by Zabbix agent/proc.num)/last(/Linux by Zabbix agent/kernel.maxproc)*100>80' name: 'Getting closer to process limit' event_name: 'Getting closer to process limit (over 80% used)' opdata: '{ITEM.LASTVALUE1} active, {ITEM.LASTVALUE2} limit.' priority: WARNING tags: - tag: scope value: performance - uuid: f49fc01c5ac945d59455563bdbcc6469 expression: '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' name: 'High swap space usage' event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)' opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}' priority: WARNING description: 'If there is no swap configured, this trigger is ignored.' dependencies: - name: 'High memory utilization' expression: 'min(/Linux by Zabbix agent/vm.memory.utilization,5m)>{$MEMORY.UTIL.MAX}' - name: 'Lack of available memory' expression: 'max(/Linux by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent/vm.memory.size[total])>0' tags: - tag: scope value: capacity - uuid: 686470cef97f48f6b017e9fc7a078afe expression: 'max(/Linux by Zabbix agent/vm.memory.size[available],5m)<{$MEMORY.AVAILABLE.MIN} and last(/Linux by Zabbix agent/vm.memory.size[total])>0' name: 'Lack of available memory' event_name: 'Lack of available memory (<{$MEMORY.AVAILABLE.MIN} of {ITEM.VALUE2})' opdata: 'Available: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}' priority: AVERAGE description: 'The system is running out of memory.' tags: - tag: scope value: capacity - tag: scope value: performance - uuid: 695f0c352377409d95aca3fe76d1cae2 expression: | 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 name: 'Load average is too high' event_name: 'Load average is too high (per CPU load over {$LOAD_AVG_PER_CPU.MAX.WARN} for 5m)' opdata: 'Load averages(1m 5m 15m): ({ITEM.LASTVALUE1} {ITEM.LASTVALUE3} {ITEM.LASTVALUE4}), # of CPUs: {ITEM.LASTVALUE2}' priority: AVERAGE description: 'The load average per CPU is too high. The system may be slow to respond.' tags: - tag: scope value: capacity - tag: scope value: performance graphs: - uuid: 4a72646168d545c398c92e09c975a966 name: 'Linux: CPU jumps' graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: system.cpu.switches - sortorder: '1' color: F63100 item: host: 'Linux by Zabbix agent' key: system.cpu.intr - uuid: f217c30162b24c9190785fad1ec83b73 name: 'Linux: CPU usage' type: STACKED ymin_type_1: FIXED ymax_type_1: FIXED graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,system]' - sortorder: '1' color: F63100 item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,user]' - sortorder: '2' color: 00611C item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,nice]' - sortorder: '3' color: F7941D item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,iowait]' - sortorder: '4' color: FC6EA3 item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,steal]' - sortorder: '5' color: 6C59DC item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,interrupt]' - sortorder: '6' color: C7A72D item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,softirq]' - sortorder: '7' color: BA2A5D item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,guest]' - sortorder: '8' color: F230E0 item: host: 'Linux by Zabbix agent' key: 'system.cpu.util[,guest_nice]' - uuid: 668ae470ea33444bb40e3b83b97659c3 name: 'Linux: CPU utilization' ymin_type_1: FIXED ymax_type_1: FIXED graph_items: - drawtype: GRADIENT_LINE color: 199C0D item: host: 'Linux by Zabbix agent' key: system.cpu.util - uuid: f260a63bc3b04c3b80b47f83bb05ed9c name: 'Linux: Memory usage' ymin_type_1: FIXED graph_items: - drawtype: BOLD_LINE color: 199C0D item: host: 'Linux by Zabbix agent' key: 'vm.memory.size[total]' - sortorder: '1' drawtype: GRADIENT_LINE color: F63100 item: host: 'Linux by Zabbix agent' key: 'vm.memory.size[available]' - uuid: bac7a8fb7e014696b54d262bf40e5b12 name: 'Linux: Memory utilization' ymin_type_1: FIXED ymax_type_1: FIXED graph_items: - drawtype: GRADIENT_LINE color: 199C0D item: host: 'Linux by Zabbix agent' key: vm.memory.utilization - uuid: fa49531c9c3d4087b2205bed6ed0469f name: 'Linux: Processes' graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: proc.num - sortorder: '1' color: F63100 item: host: 'Linux by Zabbix agent' key: 'proc.num[,,run]' - uuid: 1ca6e2d883114853bd402110c3fd211e name: 'Linux: Swap usage' graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: 'system.swap.size[,free]' - sortorder: '1' color: F63100 item: host: 'Linux by Zabbix agent' key: 'system.swap.size[,total]' - uuid: 1b8cc9470a5040d79090a3e5dfcb0a76 name: 'Linux: System load' ymin_type_1: FIXED graph_items: - color: 199C0D item: host: 'Linux by Zabbix agent' key: 'system.cpu.load[all,avg1]' - sortorder: '1' color: F63100 item: host: 'Linux by Zabbix agent' key: 'system.cpu.load[all,avg5]' - sortorder: '2' color: 00611C item: host: 'Linux by Zabbix agent' key: 'system.cpu.load[all,avg15]' - sortorder: '3' color: F7941D yaxisside: RIGHT item: host: 'Linux by Zabbix agent' key: system.cpu.num