summaryrefslogtreecommitdiffstats
path: root/health/health.d/ram.conf
blob: 6e6e3b40035070a9b8dfecb5ef9c8db2348254cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# you can disable an alarm notification by setting the 'to' line to: silent

    alarm: used_ram_to_ignore
       on: system.ram
    class: Utilization
     type: System
component: Memory
       os: linux freebsd
    hosts: *
     calc: ($zfs.arc_size.arcsz = nan)?(0):($zfs.arc_size.arcsz - $zfs.arc_size.min)
    every: 10s
     info: amount of memory 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
    class: Utilization
     type: System
component: Memory
       os: linux
    hosts: *
     calc: ($used - $used_ram_to_ignore) * 100 / ($used + $cached + $free + $buffers)
    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 memory utilization
       to: sysadmin

    alarm: ram_available
       on: mem.available
    class: Utilization
     type: System
component: Memory
       os: linux
    hosts: *
     calc: $avail * 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: percentage of estimated amount of RAM available for userspace processes, without causing swapping
       to: sysadmin

      alarm: oom_kill
         on: mem.oom_kill
         os: linux
      hosts: *
     lookup: sum -30m unaligned
      units: kills
      every: 5m
       warn: $this > 0
      delay: down 10m
host labels: _is_k8s_node = false
       info: number of out of memory kills in the last 30 minutes
         to: sysadmin

## FreeBSD
    alarm: ram_in_use
       on: system.ram
    class: Utilization
     type: System
component: Memory
       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 memory utilization
       to: sysadmin

    alarm: ram_available
       on: system.ram
    class: Utilization
     type: System
component: Memory
       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: percentage of estimated amount of RAM available for userspace processes, without causing swapping
       to: sysadmin