Load Checks

Load Checks

A definition of load is required.

Resource: Linux Manual Page - getloadavg(3)

The getloadavg() function returns the number of processes in the system run queue averaged over various periods of time. Up to nelem samples are retrieved and assigned to successive elements of loadavg[]. The system imposes a maximum of 3 samples, representing averages over the last 1, 5, and 15 minutes, respectively.

Resource: Linux Manual Page - Uptime

System load averages is the average number of processes that are either in a runnable or uninterruptable state. A process in a runnable state is either using the CPU or waiting to use the CPU. A process in uninterruptable state is waiting for some I/O access, eg waiting for disk. The averages are taken over the three time intervals. Load averages are not normalized for the number of CPUs in a system, so a load average of 1 means a single CPU system is loaded all the time while on a 4 CPU system it means it was idle 75% of the time.

 

The term Load can often be mistaken as pure CPU Usage. The examples in this KB article are focused on load intervals. A separate KB article will cover CPU Usage checks that are not load interval based.

 

Nagios Plugins

The check_load plugin is part of Nagios Plugins. The thresholds for the plugin are triggered if any of the load samples are greater than the supplied value.

A detailed discussion about this is available in this GitHub issue.

The -r argument is used to divide the load averages by the number of CPUs.

Warning 1 Minute: 0.15
Warning 5 Minute: 0.1
Warning 15 Minute: 0.05
Critical 1 Minute: 0.30
Critical 5 Minute: 0.25
Critical 15 Minute: 0.2

Command:

./check_load -r -w 0.15,0.10,0.05 -c 0.30,0.25,0.20

Output:

OK - load average: 0.03, 0.01, 0.01|load1=0.025;0.150;0.300;0; load5=0.015;0.100;0.250;0; load15=0.010;0.050;0.200;0; 

NCPA

NPCA does not include a load module, it does however have a CPU module that provides usage checks.

 

NSClient++ via check_nt

NSClient++ includes a cpu load module. The thresholds for the load checks are triggered if the load interval is greater than the supplied value.

Format is <minutes range>,<warning threshold>,<critical threshold> and up to 10 requests can be done in one check.

Unit: %
Warning 1 Minute: 90
Warning 5 Minute: 80
Warning 15 Minute: 70
Critical 1 Minute: 95
Critical 5 Minute: 85
Critical 15 Minute: 75

Command:

./check_nt -H 10.25.14.10 -p 12489 -s 'Str0ngP@ssw0rd' -v CPULOAD -l 1,90,95,5,80,85,15,70,75

Output:

CPU Load 0% (1 min average) 0% (5 min average) 0% (15 min average) |   '1 min avg Load'=0%;90;95;0;100 '5 min avg Load'=0%;80;85;0;100 '15 min avg Load'=0%;70;75;0;100

NSClient++ via check_nrpe

NSClient++ includes a cpu load module. The load intervals are 5min, 1min, 5sec and the percentage thresholds are triggered if the load interval is greater than the supplied value.

Unit: %
Warning: 80
Critical: 90

Command:

/check_nrpe -H 10.25.14.10 -c check_cpu -a show-all -a 'warn=load>80' 'crit=load>90' show-all

Output:

OK: 5m: 0%, 1m: 0%, 5s: 0%|'total 5m'=0%;80;90 'total 1m'=0%;80;90 'total 5s'=0%;80;90

 

You can define the load intervals by using multiple time=x arguments:

Command:

./check_nrpe -H 10.25.14.10 -c check_cpu -a show-all -a time=1m time=5m time=15m 'warn=load>80' 'crit=load>90' show-all

Output:

OK: 1m: 0%, 5m: 0%, 15m: 0%|'total 1m'=0%;80;90 'total 5m'=0%;80;90 'total 15m'=0%;80;90

WMI

Check WMI Plus does not include a load module, it does however have a CPU module that provides usage checks.

 

SNMP

The check_snmp_load_wizard.pl plugin is provided as an example here. The thresholds for the plugin are triggered if any of the load samples are greater than the supplied value.

Warning 1 Minute: 0.15
Warning 5 Minute: 0.1
Warning 15 Minute: 0.05
Critical 1 Minute: 0.30
Critical 5 Minute: 0.25
Critical 15 Minute: 0.2

Command:

./check_snmp_load_wizard.pl -H 10.25.13.15 -C public --v2c -T netsl -w 0.15,0.1,0.05 -c 0.3,0.25,0.2 -f

Output:

Load : 0.00 0.01 0.05 : OK | load_1_min=0.00;0.15;0.3 load_5_min=0.01;0.1;0.25 load_15_min=0.05;0.05;0.2

 

 

Final Thoughts

For any support related questions please visit the Nagios Support Forums at:

http://support.nagios.com/forum/

Posted by: - Thu, Nov 9, 2017 at 9:13 PM. This article has been viewed 7420 times.
Online URL: https://support.nagios.com/kb/article/load-checks-771.html

Powered by PHPKB (Knowledge Base Software)