
# you can disable an alarm notification by setting the 'to' line to: silent

# Calculate the base trigger point for the load average alarms.
# This is the maximum number of CPU's in the system over the past 1
# minute, with a special case for a single CPU of setting the trigger at 2.
   alarm: load_trigger
      on: system.load
      os: linux
   hosts: *
    calc: ($active_processors == nan or $active_processors == inf or $active_processors < 2) ? ( 2 ) : ( $active_processors )
   units: cpus
   every: 1m
    info: trigger point for load average alarms

# Send alarms if the load average is unusually high.
# These intentionally _do not_ calculate the average over the sampled
# time period because the values being checked already are averages.
   alarm: load_average_15
      on: system.load
      os: linux
   hosts: *
  lookup: max -1m unaligned of load15
   units: load
   every: 1m
    warn: $this > (($status >= $WARNING)  ? (1.75 * $load_trigger) : (2 * $load_trigger))
    crit: $this > (($status == $CRITICAL) ? (3.5 * $load_trigger) : (4 * $load_trigger))
   delay: down 15m multiplier 1.5 max 1h
    info: fifteen-minute load average
      to: sysadmin

   alarm: load_average_5
      on: system.load
      os: linux
   hosts: *
  lookup: max -1m unaligned of load5
   units: load
   every: 1m
    warn: $this > (($status >= $WARNING)  ? (3.5 * $load_trigger) : (4 * $load_trigger))
    crit: $this > (($status == $CRITICAL) ? (7 * $load_trigger) : (8 * $load_trigger))
   delay: down 15m multiplier 1.5 max 1h
    info: five-minute load average
      to: sysadmin

   alarm: load_average_1
      on: system.load
      os: linux
   hosts: *
  lookup: max -1m unaligned of load1
   units: load
   every: 1m
    warn: $this > (($status >= $WARNING)  ? (7 * $load_trigger) : (8 * $load_trigger))
    crit: $this > (($status == $CRITICAL) ? (14 * $load_trigger) : (16 * $load_trigger))
   delay: down 15m multiplier 1.5 max 1h
    info: one-minute load average
      to: sysadmin
