# you can disable an alarm notification by setting the 'to' line to: silent alarm: used_ram_to_ignore on: system.ram os: linux freebsd hosts: * calc: ($zfs.arc_size.arcsz = nan)?(0):($zfs.arc_size.arcsz) every: 10s info: the amount of memory that is reported as used, but it is actually capable for resizing itself based on the system needs (eg. ZFS ARC) alarm: ram_in_use on: system.ram os: linux hosts: * # calc: $used * 100 / ($used + $cached + $free) calc: ($used - $used_ram_to_ignore) * 100 / ($used - $used_ram_to_ignore + $cached + $free) units: % every: 1s warn: $this > 1 crit: $this > 5 delay: down 15m multiplier 1.5 max 1h info: system RAM used to: sysadmin #alarms alarm: ram_available on: mem.available os: linux hosts: * calc: ($avail + $used_ram_to_ignore) * 100 / ($system.ram.used + $system.ram.cached + $system.ram.free + $system.ram.buffers) units: % every: 10s warn: $this < (($status >= $WARNING) ? (15) : (10)) crit: $this < (($status == $CRITICAL) ? (10) : ( 5)) delay: down 15m multiplier 1.5 max 1h info: estimated amount of RAM available for userspace processes, without causing swapping to: sysadmin #alarms ## FreeBSD alarm: ram_in_use on: system.ram os: freebsd hosts: * calc: ($active + $wired + $laundry + $buffers - $used_ram_to_ignore) * 100 / ($active + $wired + $laundry + $buffers - $used_ram_to_ignore + $cache + $free + $inactive) units: % every: 10s warn: $this > (($status >= $WARNING) ? (80) : (90)) crit: $this > (($status == $CRITICAL) ? (90) : (98)) delay: down 15m multiplier 1.5 max 1h info: system RAM usage to: sysadmin #alarms alarm: ram_available on: system.ram os: freebsd hosts: * calc: ($free + $inactive + $used_ram_to_ignore) * 100 / ($free + $active + $inactive + $wired + $cache + $laundry + $buffers) units: % every: 10s warn: $this < (($status >= $WARNING) ? (15) : (10)) crit: $this < (($status == $CRITICAL) ? (10) : ( 5)) delay: down 15m multiplier 1.5 max 1h info: estimated amount of RAM available for userspace processes, without causing swapping to: sysadmin #alarms