pfsense-zabbix/zabbix5/template_pfsense_active.xml

2151 lines
94 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
<version>5.0</version>
<date>2021-07-12T10:35:24Z</date>
<groups>
<group>
<name>Templates/Network Devices</name>
</group>
</groups>
<templates>
<template>
<template>Template pfSense Active</template>
<name>pfsense Active</name>
<description>Active template for pfsense, requires pfsense_zbx.php installed to pfSense Box.&#13;
Version 1.0.2&#13;
&#13;
https://github.com/rbicelli/pfsense-zabbix-template</description>
<groups>
<group>
<name>Templates/Network Devices</name>
</group>
</groups>
<applications>
<application>
<name>CPU</name>
</application>
<application>
<name>Filesystems</name>
</application>
<application>
<name>Gateways</name>
</application>
<application>
<name>HA</name>
</application>
<application>
<name>Memory</name>
</application>
<application>
<name>Network interfaces</name>
</application>
<application>
<name>Network Limits</name>
</application>
<application>
<name>OpenVPN Client</name>
</application>
<application>
<name>OpenVPN Server</name>
</application>
<application>
<name>OS</name>
</application>
<application>
<name>Processes</name>
</application>
<application>
<name>Services</name>
</application>
<application>
<name>System</name>
</application>
</applications>
<items>
<item>
<name>Maximum number of opened files</name>
<type>ZABBIX_ACTIVE</type>
<key>kernel.maxfiles</key>
<delay>3600</delay>
<history>27d</history>
<description>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</description>
<applications>
<application>
<name>OS</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last(0)}&lt;1024</expression>
<name>Configured max number of opened files is too low on {HOST.NAME}</name>
<priority>INFO</priority>
</trigger>
</triggers>
</item>
<item>
<name>Maximum number of processes</name>
<type>ZABBIX_ACTIVE</type>
<key>kernel.maxproc</key>
<delay>3600</delay>
<history>27d</history>
<description>It could be increased by using sysctrl utility or modifying file /etc/sysctl.conf.</description>
<applications>
<application>
<name>OS</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last(0)}&lt;256</expression>
<name>Configured max number of processes is too low on {HOST.NAME}</name>
<priority>INFO</priority>
</trigger>
</triggers>
</item>
<item>
<name>Used memory (calc)</name>
<type>CALCULATED</type>
<key>kt.mem.used</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<params>last(vm.memory.size[total]) - last(vm.memory.size[available])</params>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Expected CARP Status</name>
<type>CALCULATED</type>
<key>pfsense.expected_carp_status</key>
<delay>30s</delay>
<params>{$EXPECTED_CARP_STATUS}</params>
<description>Expected CARP Status</description>
<applications>
<application>
<name>HA</name>
</application>
</applications>
<valuemap>
<name>pfSense CARP Status</name>
</valuemap>
</item>
<item>
<name>MBUF Cache</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.mbuf.cache</key>
<delay>60</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
</item>
<item>
<name>MBUF Current</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.mbuf.current</key>
<delay>60</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
</item>
<item>
<name>MBUF Max</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.mbuf.max</key>
<delay>600</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
</item>
<item>
<name>MBUF Total Used (percent)</name>
<type>CALCULATED</type>
<key>pfsense.mbuf.ptotal</key>
<delay>60</delay>
<history>28d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<params>((last(pfsense.mbuf.current) + last(pfsense.mbuf.cache)) * 100) / last(pfsense.mbuf.max)</params>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last()}&gt;80</expression>
<name>MBUF used at 80%</name>
<priority>WARNING</priority>
</trigger>
<trigger>
<expression>{last()}&gt;90</expression>
<name>MBUF used at 90%</name>
<priority>HIGH</priority>
</trigger>
</triggers>
</item>
<item>
<name>States Table Current</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.states.current</key>
<delay>60</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
</item>
<item>
<name>States Table Max</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.states.max</key>
<delay>600</delay>
<history>27d</history>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
</item>
<item>
<name>States Table Current (percent)</name>
<type>CALCULATED</type>
<key>pfsense.states.pused</key>
<delay>60</delay>
<history>28d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<params>(last(pfsense.states.current) * 100) / last(pfsense.states.max)</params>
<applications>
<application>
<name>Network Limits</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last()}&gt;80</expression>
<name>State Table used at 80%</name>
<priority>WARNING</priority>
</trigger>
<trigger>
<expression>{last()}&gt;90</expression>
<name>State Table used at 90%</name>
<priority>HIGH</priority>
</trigger>
</triggers>
</item>
<item>
<name>CARP Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[carp_status]</key>
<delay>30s</delay>
<description>pfSense CARP Status</description>
<applications>
<application>
<name>HA</name>
</application>
</applications>
<valuemap>
<name>pfSense CARP Status</name>
</valuemap>
<triggers>
<trigger>
<expression>{last()}&gt;2</expression>
<name>CARP Problems on {HOST.NAME}</name>
<priority>HIGH</priority>
<description>CARP Problems</description>
</trigger>
<trigger>
<expression>{last()}&gt;2</expression>
<name>DHCP Failover Problems on {HOST.NAME}</name>
<url>https://docs.netgate.com/pfsense/en/latest/troubleshooting/ha-dhcp-failover.html</url>
<priority>HIGH</priority>
<description>One or more DHCP Pools are experiencing failover problems. This could potentially cause other problems in yourr network.</description>
</trigger>
</triggers>
</item>
<item>
<name>DHCP Failover Pool Problems</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[dhcp,failover]</key>
<delay>120s</delay>
<description>This value indicates, in a HA scenario, if DHCP failover pool partners are out of sync.</description>
<applications>
<application>
<name>HA</name>
</application>
</applications>
</item>
<item>
<name>Gateway Status Raw</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[gw_status]</key>
<delay>60s</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<description>Gateway Status Raw</description>
<applications>
<application>
<name>Gateways</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{diff()}&gt;0</expression>
<recovery_mode>RECOVERY_EXPRESSION</recovery_mode>
<recovery_expression>{diff()}=0</recovery_expression>
<name>pfSense Gateway Status Changed on {HOST.NAME}</name>
<priority>AVERAGE</priority>
<description>Gateway Status Change, for use with an acion Script (e.g. update DNS record)</description>
<manual_close>YES</manual_close>
</trigger>
</triggers>
</item>
<item>
<name>pfSense Installed Version</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[system,installed_version]</key>
<delay>1d</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<applications>
<application>
<name>System</name>
</application>
</applications>
</item>
<item>
<name>New Version of pfSense Available</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[system,new_version_available]</key>
<delay>1d</delay>
<applications>
<application>
<name>System</name>
</application>
</applications>
<valuemap>
<name>Generic YesNo</name>
</valuemap>
<triggers>
<trigger>
<expression>{last()}=1</expression>
<name>New Version of pfSense Available on {HOST.NAME}</name>
<priority>INFO</priority>
<description>A new version of pfSense is available for update.</description>
<manual_close>YES</manual_close>
</trigger>
</triggers>
</item>
<item>
<name>Packages Needing Update</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[system,packages_update]</key>
<delay>1d</delay>
<description>Number of packages needing update.</description>
<applications>
<application>
<name>System</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last()}&gt;0</expression>
<name>Packages Update Available on {HOST.NAME}</name>
<priority>INFO</priority>
<description>New version of packages are available</description>
</trigger>
</triggers>
</item>
<item>
<name>pfSense Available Version</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[system,version]</key>
<delay>1d</delay>
<trends>0</trends>
<value_type>TEXT</value_type>
<applications>
<application>
<name>System</name>
</application>
</applications>
</item>
<item>
<name>Number of running processes</name>
<type>ZABBIX_ACTIVE</type>
<key>proc.num[,,run]</key>
<delay>60</delay>
<history>27d</history>
<description>Number of processes in running state.</description>
<applications>
<application>
<name>Processes</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{avg(5m)}&gt;30</expression>
<name>Too many processes running on {HOST.NAME}</name>
<priority>WARNING</priority>
</trigger>
</triggers>
</item>
<item>
<name>Number of processes</name>
<type>ZABBIX_ACTIVE</type>
<key>proc.num[]</key>
<delay>60</delay>
<history>27d</history>
<description>Total number of processes in any state.</description>
<applications>
<application>
<name>Processes</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{avg(5m)}&gt;300</expression>
<name>Too many processes on {HOST.NAME}</name>
<priority>WARNING</priority>
</trigger>
</triggers>
</item>
<item>
<name>Host boot time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.boottime</key>
<delay>600</delay>
<history>27d</history>
<units>unixtime</units>
<applications>
<application>
<name>OS</name>
</application>
</applications>
</item>
<item>
<name>Interrupts per second</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.intr</key>
<delay>60</delay>
<history>27d</history>
<units>ips</units>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
<preprocessing>
<step>
<type>CHANGE_PER_SECOND</type>
<params/>
</step>
</preprocessing>
</item>
<item>
<name>Processor load (1min/core)</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.load[percpu,avg1]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<description>The processor load is calculated as system CPU load divided by number of CPU cores.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{avg(5m)}&gt;5</expression>
<name>Processor load is too high on {HOST.NAME}</name>
<priority>WARNING</priority>
</trigger>
</triggers>
</item>
<item>
<name>Processor load (5min/core)</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.load[percpu,avg5]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<description>The processor load is calculated as system CPU load divided by number of CPU cores.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>Processor load (15min/core)</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.load[percpu,avg15]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<description>The processor load is calculated as system CPU load divided by number of CPU cores.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>Context switches per second</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.switches</key>
<delay>60</delay>
<history>27d</history>
<units>sps</units>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
<preprocessing>
<step>
<type>CHANGE_PER_SECOND</type>
<params/>
</step>
</preprocessing>
</item>
<item>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,idle]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent doing nothing.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,interrupt]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The amount of time the CPU has been servicing hardware interrupts.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,nice]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent running users' processes that have been niced.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,system]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent running the kernel and its processes.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>CPU $2 time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.cpu.util[,user]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>The time the CPU has spent running users' processes that are not niced.</description>
<applications>
<application>
<name>CPU</name>
</application>
</applications>
</item>
<item>
<name>Host name</name>
<type>ZABBIX_ACTIVE</type>
<key>system.hostname</key>
<delay>3600</delay>
<history>27d</history>
<trends>0</trends>
<value_type>CHAR</value_type>
<description>System host name.</description>
<inventory_link>NAME</inventory_link>
<applications>
<application>
<name>OS</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{diff(0)}&gt;0</expression>
<name>Hostname was changed on {HOST.NAME}</name>
<priority>INFO</priority>
</trigger>
</triggers>
</item>
<item>
<name>Host local time</name>
<type>ZABBIX_ACTIVE</type>
<key>system.localtime</key>
<delay>60</delay>
<history>27d</history>
<units>unixtime</units>
<applications>
<application>
<name>OS</name>
</application>
</applications>
</item>
<item>
<name>Free swap space</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,free]</key>
<delay>60</delay>
<history>27d</history>
<units>B</units>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Free swap space in %</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,pfree]</key>
<delay>60</delay>
<history>27d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last(0)}&lt;50</expression>
<name>Lack of free swap space on {HOST.NAME}</name>
<priority>WARNING</priority>
<description>It probably means that the systems requires more physical memory.</description>
</trigger>
</triggers>
</item>
<item>
<name>Total swap space</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,total]</key>
<delay>3600</delay>
<history>27d</history>
<units>B</units>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Used swap space</name>
<type>ZABBIX_ACTIVE</type>
<key>system.swap.size[,used]</key>
<delay>60</delay>
<history>27d</history>
<units>B</units>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>System information</name>
<type>ZABBIX_ACTIVE</type>
<key>system.uname</key>
<delay>3600</delay>
<history>27d</history>
<trends>0</trends>
<value_type>CHAR</value_type>
<description>The information as normally returned by 'uname -a'.</description>
<inventory_link>OS</inventory_link>
<applications>
<application>
<name>OS</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{diff(0)}&gt;0</expression>
<name>Host information was changed on {HOST.NAME}</name>
<priority>INFO</priority>
</trigger>
</triggers>
</item>
<item>
<name>System uptime</name>
<type>ZABBIX_ACTIVE</type>
<key>system.uptime</key>
<delay>600</delay>
<history>27d</history>
<units>uptime</units>
<applications>
<application>
<name>OS</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{change(0)}&lt;0</expression>
<name>{HOST.NAME} has just been restarted</name>
<priority>INFO</priority>
</trigger>
</triggers>
</item>
<item>
<name>Number of logged in users</name>
<type>ZABBIX_ACTIVE</type>
<key>system.users.num</key>
<delay>60</delay>
<history>27d</history>
<description>Number of users who are currently logged in.</description>
<applications>
<application>
<name>OS</name>
</application>
</applications>
</item>
<item>
<name>Checksum of $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.file.cksum[/etc/passwd]</key>
<delay>3600</delay>
<history>27d</history>
<applications>
<application>
<name>OS</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{diff(0)}&gt;0</expression>
<name>/etc/passwd has been changed on {HOST.NAME}</name>
<priority>WARNING</priority>
</trigger>
</triggers>
</item>
<item>
<name>Active memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[active]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>Memory used by processes</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Available memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[available]</key>
<delay>60</delay>
<history>27d</history>
<units>B</units>
<description>Available memory is defined as free+cached+buffers memory.</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
<triggers>
<trigger>
<expression>{last(0)}&lt;20M</expression>
<name>Lack of available memory on server {HOST.NAME}</name>
<priority>AVERAGE</priority>
</trigger>
</triggers>
</item>
<item>
<name>Buffered memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[buffers]</key>
<delay>60</delay>
<history>28d</history>
<status>DISABLED</status>
<units>B</units>
<description>Cache d'entrées des IO disque.&#13;
&#13;
(Item désactivé car buggé)</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Cached memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[cached]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory used to cache data</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Free memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[free]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory completely free and ready to be used directly.</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Inactive memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[inactive]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory that contains data that is no longer used (can be directly freed if needed)</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Available memory (percent)</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[pavailable]</key>
<delay>60</delay>
<history>28d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<description>Available memory is defined as free+cached+buffers memory.</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
<preprocessing>
<step>
<type>MULTIPLIER</type>
<params>1</params>
</step>
</preprocessing>
</item>
<item>
<name>Shared memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[shared]</key>
<delay>60</delay>
<history>28d</history>
<status>DISABLED</status>
<units>B</units>
<description>quantité de mémoire partagée entre plusieurs processus&#13;
&#13;
(Item désactivé car non utilisé)</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Total memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[total]</key>
<delay>3600</delay>
<history>27d</history>
<units>B</units>
<description>quantité de mémoire totale</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Used memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[used]</key>
<delay>60</delay>
<history>28d</history>
<status>DISABLED</status>
<units>B</units>
<description>Item désactivé car non utilisé</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
<item>
<name>Wired memory</name>
<type>ZABBIX_ACTIVE</type>
<key>vm.memory.size[wired]</key>
<delay>60</delay>
<history>28d</history>
<units>B</units>
<description>amount of memory used by the kernel, can neither be unloaded in swap, nor compressed.</description>
<applications>
<application>
<name>Memory</name>
</application>
</applications>
</item>
</items>
<discovery_rules>
<discovery_rule>
<name>Gateways Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[gw]</key>
<delay>300s</delay>
<description>Gateway Discovery</description>
<item_prototypes>
<item_prototype>
<name>Gateway $2 RTT</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[gw_value,{#GATEWAY},delay]</key>
<delay>60s</delay>
<value_type>FLOAT</value_type>
<units>ms</units>
<applications>
<application>
<name>Gateways</name>
</application>
</applications>
<preprocessing>
<step>
<type>RTRIM</type>
<params>ms</params>
</step>
</preprocessing>
</item_prototype>
<item_prototype>
<name>Gateway $2 Packet Loss</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[gw_value,{#GATEWAY},loss]</key>
<delay>60s</delay>
<units>%</units>
<applications>
<application>
<name>Gateways</name>
</application>
</applications>
<preprocessing>
<step>
<type>RTRIM</type>
<params>%</params>
</step>
</preprocessing>
</item_prototype>
<item_prototype>
<name>Gateway $2 Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[gw_value,{#GATEWAY},status]</key>
<delay>60s</delay>
<description>Status of Gateway</description>
<applications>
<application>
<name>Gateways</name>
</application>
</applications>
<valuemap>
<name>pfSense Gateway Status</name>
</valuemap>
<trigger_prototypes>
<trigger_prototype>
<expression>{last()}=5</expression>
<name>Gateway {#GATEWAY} is down</name>
<priority>DISASTER</priority>
<description>Gateway is Down</description>
</trigger_prototype>
<trigger_prototype>
<expression>{last()}=4</expression>
<name>Gateway {#GATEWAY} is forced down</name>
<priority>INFO</priority>
<description>Gateway is forced down by system administrator</description>
</trigger_prototype>
<trigger_prototype>
<expression>{last()}=2</expression>
<name>High Delay on gateway {#GATEWAY}</name>
<priority>WARNING</priority>
<description>Gateway is lagging</description>
</trigger_prototype>
<trigger_prototype>
<expression>{last()}=3</expression>
<name>High packet Loss on {#GATEWAY}</name>
<priority>HIGH</priority>
<description>High Packet Loss on Gateway</description>
</trigger_prototype>
<trigger_prototype>
<expression>{last()}=1</expression>
<name>Packet Loss on {#GATEWAY}</name>
<priority>WARNING</priority>
<description>Packet loss on Gateway</description>
</trigger_prototype>
</trigger_prototypes>
</item_prototype>
<item_prototype>
<name>Gateway $2 RTT Std Deviation</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[gw_value,{#GATEWAY},stddev]</key>
<delay>60s</delay>
<value_type>FLOAT</value_type>
<units>ms</units>
<applications>
<application>
<name>Gateways</name>
</application>
</applications>
<preprocessing>
<step>
<type>RTRIM</type>
<params>ms</params>
</step>
</preprocessing>
</item_prototype>
</item_prototypes>
<graph_prototypes>
<graph_prototype>
<name>Gateway {#GATEWAY} Availability</name>
<graph_items>
<graph_item>
<color>199C0D</color>
<calc_fnc>ALL</calc_fnc>
<item>
<host>Template pfSense Active</host>
<key>pfsense.value[gw_value,{#GATEWAY},delay]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>FF5722</color>
<calc_fnc>ALL</calc_fnc>
<item>
<host>Template pfSense Active</host>
<key>pfsense.value[gw_value,{#GATEWAY},loss]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
<graph_prototype>
<name>Gateway {#GATEWAY} Status</name>
<yaxismax>5</yaxismax>
<ymin_type_1>FIXED</ymin_type_1>
<ymax_type_1>FIXED</ymax_type_1>
<graph_items>
<graph_item>
<color>199C0D</color>
<calc_fnc>ALL</calc_fnc>
<item>
<host>Template pfSense Active</host>
<key>pfsense.value[gw_value,{#GATEWAY},status]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
</graph_prototypes>
</discovery_rule>
<discovery_rule>
<name>Network interface discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[interfaces]</key>
<delay>3600s</delay>
<filter>
<conditions>
<condition>
<macro>{#IFNAME}</macro>
<value>@Network interfaces for discovery</value>
<formulaid>A</formulaid>
</condition>
</conditions>
</filter>
<lifetime>7d</lifetime>
<description>Discovery of network interfaces as defined in global regular expression &quot;Network interfaces for discovery&quot;.</description>
<item_prototypes>
<item_prototype>
<name>Incoming Errors on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.in[{#IFNAME},errors]</key>
<delay>60</delay>
<history>7d</history>
<applications>
<application>
<name>Network interfaces</name>
</application>
</applications>
</item_prototype>
<item_prototype>
<name>Incoming network traffic on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.in[{#IFNAME}]</key>
<delay>60</delay>
<history>7d</history>
<units>bps</units>
<applications>
<application>
<name>Network interfaces</name>
</application>
</applications>
<preprocessing>
<step>
<type>CHANGE_PER_SECOND</type>
<params/>
</step>
<step>
<type>MULTIPLIER</type>
<params>8</params>
</step>
</preprocessing>
</item_prototype>
<item_prototype>
<name>Outgoing errors on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.out[{#IFNAME},errors]</key>
<delay>60</delay>
<history>7d</history>
<applications>
<application>
<name>Network interfaces</name>
</application>
</applications>
</item_prototype>
<item_prototype>
<name>Outgoing network traffic on {#IFDESCR}</name>
<type>ZABBIX_ACTIVE</type>
<key>net.if.out[{#IFNAME}]</key>
<delay>60</delay>
<history>7d</history>
<units>bps</units>
<applications>
<application>
<name>Network interfaces</name>
</application>
</applications>
<preprocessing>
<step>
<type>CHANGE_PER_SECOND</type>
<params/>
</step>
<step>
<type>MULTIPLIER</type>
<params>8</params>
</step>
</preprocessing>
</item_prototype>
</item_prototypes>
<graph_prototypes>
<graph_prototype>
<name>Network traffic on {#IFDESCR}</name>
<show_triggers>NO</show_triggers>
<show_legend>NO</show_legend>
<ymin_type_1>FIXED</ymin_type_1>
<graph_items>
<graph_item>
<drawtype>GRADIENT_LINE</drawtype>
<color>29E900</color>
<item>
<host>Template pfSense Active</host>
<key>net.if.in[{#IFNAME}]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>GRADIENT_LINE</drawtype>
<color>FD0000</color>
<item>
<host>Template pfSense Active</host>
<key>net.if.out[{#IFNAME}]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
</graph_prototypes>
</discovery_rule>
<discovery_rule>
<name>OpenVPN Client Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[openvpn_client]</key>
<delay>300s</delay>
<description>OpenVPN Client Discovery</description>
<item_prototypes>
<item_prototype>
<name>OpenVPN Client {#NAME} Tunnel Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_clientvalue,{#CLIENT},status]</key>
<delay>60s</delay>
<applications>
<application>
<name>OpenVPN Client</name>
</application>
</applications>
<valuemap>
<name>pfSense OpenVPN Interface Status</name>
</valuemap>
<trigger_prototypes>
<trigger_prototype>
<expression>{last()}=0</expression>
<name>OpenVPN Client {#NAME} Tunnel is Down</name>
<priority>HIGH</priority>
<description>OpenVPN Tunnel Down</description>
</trigger_prototype>
</trigger_prototypes>
</item_prototype>
</item_prototypes>
</discovery_rule>
<discovery_rule>
<name>OpenVPN Server Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[openvpn_server]</key>
<delay>300s</delay>
<item_prototypes>
<item_prototype>
<name>OpenVPN Server {#NAME} Clients Connected</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},conns]</key>
<delay>60s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
</application>
</applications>
</item_prototype>
<item_prototype>
<name>OpenVPN Server {#NAME} Mode</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},mode]</key>
<delay>300s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
</application>
</applications>
<valuemap>
<name>pfSense OpenVPN Mode</name>
</valuemap>
</item_prototype>
<item_prototype>
<name>OpenVPN Server {#NAME} Port</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},port]</key>
<delay>300s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
</application>
</applications>
</item_prototype>
<item_prototype>
<name>OpenVPN Server {#NAME} Tunnel Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[openvpn_servervalue,{#SERVER},status]</key>
<delay>60s</delay>
<applications>
<application>
<name>OpenVPN Server</name>
</application>
</applications>
<valuemap>
<name>pfSense OpenVPN Interface Status</name>
</valuemap>
</item_prototype>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
<expression>{Template pfSense Active:pfsense.expected_carp_status.last()}&lt;&gt;2 and {Template pfSense Active:pfsense.value[openvpn_servervalue,{#SERVER},status].last()}=0</expression>
<name>OpenVPN Server {#NAME} is Down</name>
<priority>HIGH</priority>
<description>OpenVPN Tunnel is Down</description>
</trigger_prototype>
</trigger_prototypes>
</discovery_rule>
<discovery_rule>
<name>Services Discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.discovery[services]</key>
<delay>300s</delay>
<filter>
<conditions>
<condition>
<macro>{#SERVICE}</macro>
<value>@pfSense service names for discovery</value>
<formulaid>A</formulaid>
</condition>
</conditions>
</filter>
<item_prototypes>
<item_prototype>
<name>Service {#DESCRIPTION} enabled on CARP Slave</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[service_value,{#SERVICE},run_on_carp_slave]</key>
<delay>600s</delay>
<applications>
<application>
<name>Services</name>
</application>
</applications>
<valuemap>
<name>Generic YesNo</name>
</valuemap>
</item_prototype>
<item_prototype>
<name>Service {#DESCRIPTION} Status</name>
<type>ZABBIX_ACTIVE</type>
<key>pfsense.value[service_value,{#SERVICE},status]</key>
<delay>60s</delay>
<applications>
<application>
<name>Services</name>
</application>
</applications>
<valuemap>
<name>Service state</name>
</valuemap>
</item_prototype>
</item_prototypes>
<trigger_prototypes>
<trigger_prototype>
<expression>{Template pfSense Active:pfsense.value[service_value,{#SERVICE},status].last()}=0 and (&#13;
&#13;
({Template pfSense Active:pfsense.value[service_value,{#SERVICE},run_on_carp_slave].last()}=1 and &#13;
{Template pfSense Active:pfsense.value[carp_status].last()}=2)&#13;
&#13;
or&#13;
&#13;
( {Template pfSense Active:pfsense.value[carp_status].last()}=1)&#13;
&#13;
or&#13;
&#13;
({Template pfSense Active:pfsense.value[carp_status].last()}=0)&#13;
)</expression>
<name>Service {#DESCRIPTION} is not running</name>
<priority>HIGH</priority>
<description>Service is not running</description>
</trigger_prototype>
</trigger_prototypes>
</discovery_rule>
<discovery_rule>
<name>Mounted filesystem discovery</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.discovery</key>
<delay>3600</delay>
<filter>
<conditions>
<condition>
<macro>{#FSTYPE}</macro>
<value>@File systems for discovery</value>
<formulaid>A</formulaid>
</condition>
</conditions>
</filter>
<lifetime>7d</lifetime>
<description>Discovery of file systems of different types as defined in global regular expression &quot;File systems for discovery&quot;.</description>
<item_prototypes>
<item_prototype>
<name>Free inodes on $1 (percentage)</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.inode[{#FSNAME},pfree]</key>
<delay>60</delay>
<history>7d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<applications>
<application>
<name>Filesystems</name>
</application>
</applications>
<trigger_prototypes>
<trigger_prototype>
<expression>{last(0)}&lt;20</expression>
<name>Free inodes is less than 20% on volume {#FSNAME}</name>
<priority>WARNING</priority>
</trigger_prototype>
</trigger_prototypes>
</item_prototype>
<item_prototype>
<name>Free disk space on $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},free]</key>
<delay>60</delay>
<history>7d</history>
<units>B</units>
<applications>
<application>
<name>Filesystems</name>
</application>
</applications>
</item_prototype>
<item_prototype>
<name>Free disk space on $1 (percentage)</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},pfree]</key>
<delay>60</delay>
<history>7d</history>
<value_type>FLOAT</value_type>
<units>%</units>
<applications>
<application>
<name>Filesystems</name>
</application>
</applications>
<trigger_prototypes>
<trigger_prototype>
<expression>{last(0)}&lt;20</expression>
<name>Free disk space is less than 20% on volume {#FSNAME}</name>
<priority>WARNING</priority>
</trigger_prototype>
</trigger_prototypes>
</item_prototype>
<item_prototype>
<name>Total disk space on $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},total]</key>
<delay>3600</delay>
<history>7d</history>
<units>B</units>
<applications>
<application>
<name>Filesystems</name>
</application>
</applications>
</item_prototype>
<item_prototype>
<name>Used disk space on $1</name>
<type>ZABBIX_ACTIVE</type>
<key>vfs.fs.size[{#FSNAME},used]</key>
<delay>60</delay>
<history>7d</history>
<units>B</units>
<applications>
<application>
<name>Filesystems</name>
</application>
</applications>
</item_prototype>
</item_prototypes>
<graph_prototypes>
<graph_prototype>
<name>Disk space usage {#FSNAME}</name>
<width>600</width>
<height>340</height>
<yaxismax>0</yaxismax>
<show_work_period>NO</show_work_period>
<show_triggers>NO</show_triggers>
<type>PIE</type>
<show_3d>YES</show_3d>
<graph_items>
<graph_item>
<color>CC0000</color>
<type>GRAPH_SUM</type>
<item>
<host>Template pfSense Active</host>
<key>vfs.fs.size[{#FSNAME},total]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>5B5B5B</color>
<item>
<host>Template pfSense Active</host>
<key>vfs.fs.size[{#FSNAME},free]</key>
</item>
</graph_item>
<graph_item>
<sortorder>2</sortorder>
<color>AEEE00</color>
<item>
<host>Template pfSense Active</host>
<key>vfs.fs.size[{#FSNAME},used]</key>
</item>
</graph_item>
</graph_items>
</graph_prototype>
</graph_prototypes>
</discovery_rule>
</discovery_rules>
<macros>
<macro>
<macro>{$CARP_SERVICES_STOPPED}</macro>
<value>^(haproxy|openvpn)$</value>
</macro>
<macro>
<macro>{$CARP_SLAVE_SERVICES:&quot;haproxy&quot;}</macro>
<value>0</value>
</macro>
<macro>
<macro>{$CARP_SLAVE_SERVICES:&quot;openvpn&quot;}</macro>
<value>0</value>
</macro>
<macro>
<macro>{$EXPECTED_CARP_STATUS}</macro>
<value>0</value>
</macro>
</macros>
<screens>
<screen>
<name>System performance</name>
<hsize>2</hsize>
<vsize>2</vsize>
<screen_items>
<screen_item>
<resourcetype>0</resourcetype>
<style>0</style>
<resource>
<name>Active Connections (pie)</name>
<host>Template pfSense Active</host>
</resource>
<width>450</width>
<height>250</height>
<x>0</x>
<y>0</y>
<colspan>1</colspan>
<rowspan>1</rowspan>
<elements>0</elements>
<valign>1</valign>
<halign>0</halign>
<dynamic>0</dynamic>
<sort_triggers>0</sort_triggers>
<url/>
<application/>
<max_columns>3</max_columns>
</screen_item>
<screen_item>
<resourcetype>0</resourcetype>
<style>0</style>
<resource>
<name>Network Memory Buffer (pie)</name>
<host>Template pfSense Active</host>
</resource>
<width>450</width>
<height>250</height>
<x>1</x>
<y>0</y>
<colspan>1</colspan>
<rowspan>1</rowspan>
<elements>0</elements>
<valign>1</valign>
<halign>0</halign>
<dynamic>0</dynamic>
<sort_triggers>0</sort_triggers>
<url/>
<application/>
<max_columns>3</max_columns>
</screen_item>
<screen_item>
<resourcetype>0</resourcetype>
<style>0</style>
<resource>
<name>CPU load</name>
<host>Template pfSense Active</host>
</resource>
<width>450</width>
<height>100</height>
<x>0</x>
<y>1</y>
<colspan>1</colspan>
<rowspan>1</rowspan>
<elements>0</elements>
<valign>1</valign>
<halign>0</halign>
<dynamic>0</dynamic>
<sort_triggers>0</sort_triggers>
<url/>
<application/>
<max_columns>3</max_columns>
</screen_item>
<screen_item>
<resourcetype>0</resourcetype>
<style>0</style>
<resource>
<name>Memory Usage simple (pie)</name>
<host>Template pfSense Active</host>
</resource>
<width>450</width>
<height>250</height>
<x>1</x>
<y>1</y>
<colspan>1</colspan>
<rowspan>1</rowspan>
<elements>0</elements>
<valign>1</valign>
<halign>0</halign>
<dynamic>0</dynamic>
<sort_triggers>0</sort_triggers>
<url/>
<application/>
<max_columns>3</max_columns>
</screen_item>
</screen_items>
</screen>
</screens>
</template>
</templates>
<triggers>
<trigger>
<expression>{Template pfSense Active:pfsense.expected_carp_status.last()}&lt;&gt;0 and {Template pfSense Active:pfsense.value[carp_status].last()}&lt;&gt;{$EXPECTED_CARP_STATUS}</expression>
<name>CARP Status not Expected on {HOST.NAME}</name>
<priority>HIGH</priority>
<description>pfSense CARP is not in the state Expected. This means that a failover could be in process.</description>
</trigger>
<trigger>
<expression>({Template pfSense Active:pfsense.value[system,version].last()}&lt;&gt;{Template pfSense Active:pfsense.value[system,installed_version].last()})=1</expression>
<name>New Version Available on {HOST.NAME}</name>
<priority>INFO</priority>
<description>Noify of new version of pfsense available</description>
</trigger>
</triggers>
<graphs>
<graph>
<name>Active Connections</name>
<show_triggers>NO</show_triggers>
<ymin_type_1>FIXED</ymin_type_1>
<ymax_type_1>ITEM</ymax_type_1>
<ymax_item_1>
<host>Template pfSense Active</host>
<key>pfsense.states.max</key>
</ymax_item_1>
<graph_items>
<graph_item>
<drawtype>GRADIENT_LINE</drawtype>
<color>FF2C27</color>
<item>
<host>Template pfSense Active</host>
<key>pfsense.states.current</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Active Connections (pie)</name>
<width>600</width>
<height>340</height>
<yaxismax>0</yaxismax>
<show_work_period>NO</show_work_period>
<show_triggers>NO</show_triggers>
<type>PIE</type>
<graph_items>
<graph_item>
<color>5B5B5B</color>
<type>GRAPH_SUM</type>
<item>
<host>Template pfSense Active</host>
<key>pfsense.states.max</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>GRADIENT_LINE</drawtype>
<color>FF2C27</color>
<item>
<host>Template pfSense Active</host>
<key>pfsense.states.current</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>CPU jumps</name>
<graph_items>
<graph_item>
<drawtype>GRADIENT_LINE</drawtype>
<color>009900</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.switches</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>GRADIENT_LINE</drawtype>
<color>000099</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.intr</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>CPU load</name>
<type>STACKED</type>
<ymin_type_1>FIXED</ymin_type_1>
<graph_items>
<graph_item>
<color>FFA619</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.load[percpu,avg1]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>E86E30</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.load[percpu,avg5]</key>
</item>
</graph_item>
<graph_item>
<sortorder>2</sortorder>
<color>FF2F26</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.load[percpu,avg15]</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>CPU utilization (Line)</name>
<show_triggers>NO</show_triggers>
<ymin_type_1>FIXED</ymin_type_1>
<ymax_type_1>FIXED</ymax_type_1>
<graph_items>
<graph_item>
<drawtype>GRADIENT_LINE</drawtype>
<color>FFE819</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.util[,interrupt]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>GRADIENT_LINE</drawtype>
<color>E85D17</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.util[,nice]</key>
</item>
</graph_item>
<graph_item>
<sortorder>2</sortorder>
<drawtype>GRADIENT_LINE</drawtype>
<color>DF26FF</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.util[,system]</key>
</item>
</graph_item>
<graph_item>
<sortorder>3</sortorder>
<drawtype>GRADIENT_LINE</drawtype>
<color>1775E8</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.util[,user]</key>
</item>
</graph_item>
<graph_item>
<sortorder>4</sortorder>
<color>03D933</color>
<item>
<host>Template pfSense Active</host>
<key>system.cpu.util[,idle]</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Memory Available details (pie)</name>
<width>600</width>
<height>340</height>
<yaxismax>0</yaxismax>
<show_work_period>NO</show_work_period>
<show_triggers>NO</show_triggers>
<type>PIE</type>
<graph_items>
<graph_item>
<color>003300</color>
<type>GRAPH_SUM</type>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[available]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>005500</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[free]</key>
</item>
</graph_item>
<graph_item>
<sortorder>2</sortorder>
<color>007700</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[cached]</key>
</item>
</graph_item>
<graph_item>
<sortorder>3</sortorder>
<color>009900</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[inactive]</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Memory usage</name>
<show_triggers>NO</show_triggers>
<type>STACKED</type>
<ymin_type_1>FIXED</ymin_type_1>
<ymax_type_1>ITEM</ymax_type_1>
<ymax_item_1>
<host>Template pfSense Active</host>
<key>vm.memory.size[total]</key>
</ymax_item_1>
<graph_items>
<graph_item>
<color>00EE00</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[wired]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>00CC00</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[active]</key>
</item>
</graph_item>
<graph_item>
<sortorder>2</sortorder>
<color>007700</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[inactive]</key>
</item>
</graph_item>
<graph_item>
<sortorder>3</sortorder>
<color>005500</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[cached]</key>
</item>
</graph_item>
<graph_item>
<sortorder>4</sortorder>
<color>003300</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[free]</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Memory Usage simple (pie)</name>
<width>600</width>
<height>340</height>
<yaxismax>0</yaxismax>
<show_work_period>NO</show_work_period>
<show_triggers>NO</show_triggers>
<type>PIE</type>
<graph_items>
<graph_item>
<color>003300</color>
<item>
<host>Template pfSense Active</host>
<key>vm.memory.size[available]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>00DD00</color>
<item>
<host>Template pfSense Active</host>
<key>kt.mem.used</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Network Memory Buffer</name>
<show_triggers>NO</show_triggers>
<type>STACKED</type>
<ymin_type_1>FIXED</ymin_type_1>
<ymax_type_1>ITEM</ymax_type_1>
<ymax_item_1>
<host>Template pfSense Active</host>
<key>pfsense.mbuf.max</key>
</ymax_item_1>
<graph_items>
<graph_item>
<color>B26E16</color>
<item>
<host>Template pfSense Active</host>
<key>pfsense.mbuf.current</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>FFCE8E</color>
<item>
<host>Template pfSense Active</host>
<key>pfsense.mbuf.cache</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Network Memory Buffer (pie)</name>
<width>600</width>
<height>340</height>
<yaxismax>0</yaxismax>
<show_work_period>NO</show_work_period>
<show_triggers>NO</show_triggers>
<type>PIE</type>
<graph_items>
<graph_item>
<color>5B5B5B</color>
<type>GRAPH_SUM</type>
<item>
<host>Template pfSense Active</host>
<key>pfsense.mbuf.max</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>FFCE8E</color>
<item>
<host>Template pfSense Active</host>
<key>pfsense.mbuf.cache</key>
</item>
</graph_item>
<graph_item>
<sortorder>2</sortorder>
<color>B26E16</color>
<item>
<host>Template pfSense Active</host>
<key>pfsense.mbuf.current</key>
</item>
</graph_item>
</graph_items>
</graph>
<graph>
<name>Swap usage</name>
<width>600</width>
<height>340</height>
<yaxismax>0</yaxismax>
<show_work_period>NO</show_work_period>
<show_triggers>NO</show_triggers>
<type>PIE</type>
<show_3d>YES</show_3d>
<graph_items>
<graph_item>
<color>5B5B5B</color>
<type>GRAPH_SUM</type>
<item>
<host>Template pfSense Active</host>
<key>system.swap.size[,total]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<color>FFFF33</color>
<item>
<host>Template pfSense Active</host>
<key>system.swap.size[,used]</key>
</item>
</graph_item>
</graph_items>
</graph>
</graphs>
<value_maps>
<value_map>
<name>Generic YesNo</name>
<mappings>
<mapping>
<value>0</value>
<newvalue>No</newvalue>
</mapping>
<mapping>
<value>1</value>
<newvalue>Yes</newvalue>
</mapping>
</mappings>
</value_map>
<value_map>
<name>pfSense CARP Status</name>
<mappings>
<mapping>
<value>0</value>
<newvalue>Disabled</newvalue>
</mapping>
<mapping>
<value>1</value>
<newvalue>Master</newvalue>
</mapping>
<mapping>
<value>2</value>
<newvalue>Backup</newvalue>
</mapping>
<mapping>
<value>3</value>
<newvalue>Inconsistent</newvalue>
</mapping>
<mapping>
<value>4</value>
<newvalue>Problem</newvalue>
</mapping>
</mappings>
</value_map>
<value_map>
<name>pfSense Gateway Status</name>
<mappings>
<mapping>
<value>0</value>
<newvalue>Up</newvalue>
</mapping>
<mapping>
<value>1</value>
<newvalue>Packet Loss</newvalue>
</mapping>
<mapping>
<value>2</value>
<newvalue>High Delay</newvalue>
</mapping>
<mapping>
<value>3</value>
<newvalue>High Packet Loss</newvalue>
</mapping>
<mapping>
<value>4</value>
<newvalue>Forced Down</newvalue>
</mapping>
<mapping>
<value>5</value>
<newvalue>Down</newvalue>
</mapping>
</mappings>
</value_map>
<value_map>
<name>pfSense OpenVPN Interface Status</name>
<mappings>
<mapping>
<value>0</value>
<newvalue>Down</newvalue>
</mapping>
<mapping>
<value>1</value>
<newvalue>Up</newvalue>
</mapping>
<mapping>
<value>2</value>
<newvalue>None</newvalue>
</mapping>
<mapping>
<value>3</value>
<newvalue>Reconnecting</newvalue>
</mapping>
<mapping>
<value>4</value>
<newvalue>Waiting</newvalue>
</mapping>
<mapping>
<value>5</value>
<newvalue>Up/Listening</newvalue>
</mapping>
</mappings>
</value_map>
<value_map>
<name>pfSense OpenVPN Mode</name>
<mappings>
<mapping>
<value>1</value>
<newvalue>Peer to Peer (SSL/TLS)</newvalue>
</mapping>
<mapping>
<value>2</value>
<newvalue>P2P Shared Key</newvalue>
</mapping>
<mapping>
<value>3</value>
<newvalue>Remote Access (SSL/TLS)</newvalue>
</mapping>
<mapping>
<value>4</value>
<newvalue>Remote Access (User Auth)</newvalue>
</mapping>
<mapping>
<value>5</value>
<newvalue>Remote Access 8SSL/TLS + User Auth)</newvalue>
</mapping>
</mappings>
</value_map>
<value_map>
<name>Service state</name>
<mappings>
<mapping>
<value>0</value>
<newvalue>Down</newvalue>
</mapping>
<mapping>
<value>1</value>
<newvalue>Up</newvalue>
</mapping>
</mappings>
</value_map>
</value_maps>
</zabbix_export>