Skip to content

Check load

Overview

Reports the average system load per CPU over the last 1, 5, and 15 minutes. Load represents the average number of processes waiting in the run queue plus those currently executing. The values are normalized by dividing by the number of CPUs, making machines with different CPU counts comparable and simplifying Grafana panel design.

Data Collection:

  • Uses psutil.getloadavg() (psutil >= 5.6.2) for cross-platform support, falls back to os.getloadavg() on older psutil versions (Linux only)
  • Divides raw load averages by psutil.cpu_count() to normalize per CPU

Fact Sheet

Fact Value
Check Plugin Download https://github.com/Linuxfabrik/monitoring-plugins/tree/main/check-plugins/load
Nagios/Icinga Check Name check_load
Check Interval Recommendation Every minute
Can be called without parameters Yes
Runs on Cross-platform
Compiled for Windows No
3rd Party Python modules psutil

Help

usage: load [-h] [-V] [--always-ok] [-c CRIT] [--test TEST] [-w WARN]

Reports the average system load per CPU over the last 1, 5, and 15 minutes.
Load represents the average number of processes waiting in the run queue plus
those currently executing. The values are normalized by dividing by the number
of CPUs. Alerts when the load average exceeds the configured thresholds.

options:
  -h, --help           show this help message and exit
  -V, --version        show program's version number and exit
  --always-ok          Always returns OK.
  -c, --critical CRIT  CRIT threshold for load15 per CPU. Default: 5.0
  --test TEST          For unit tests. Needs "path-to-stdout-file,path-to-
                       stderr-file,expected-retc".
  -w, --warning WARN   WARN threshold for load15 per CPU. Default: 1.15

Usage Examples

./load --warning 1.15 --critical 5.0

Output:

Avg per CPU: 0.11 0.12 0.09

States

  • OK if load15 per CPU is below --warning (default: 1.15).
  • WARN if load15 per CPU is >= --warning (default: 1.15).
  • CRIT if load15 per CPU is >= --critical (default: 5.0).
  • --always-ok suppresses all alerts and always returns OK.

Perfdata / Metrics

Name Type Description
load1 Number 1-minute load average, normalized per CPU.
load15 Number 15-minute load average, normalized per CPU.
load5 Number 5-minute load average, normalized per CPU.

Troubleshooting

Python module "psutil" is not installed. Install psutil: pip install psutil or dnf install python3-psutil.

Credits, License