mirror of
https://github.com/monitoring-plugins/monitoring-plugins.git
synced 2026-04-15 22:00:06 -04:00
check_load: add alternative uptime syntax
check_load parses load from the uptime command if no proc filesystem is available. Seems like there are at least 2 different uptime outputs. linux: 20:44:34 up 25 days, 2:07, 13 users, load average: 0.13, 0.17, 0.22 freebsd 8: 8:44PM up 4:29, 1 user, load averages: 0.00, 0.00, 0.00
This commit is contained in:
parent
6361247b4c
commit
c7d6730255
1 changed files with 10 additions and 1 deletions
|
|
@ -153,7 +153,16 @@ main (int argc, char **argv)
|
|||
printf (_("Could not open stderr for %s\n"), PATH_TO_UPTIME);
|
||||
}
|
||||
fgets (input_buffer, MAX_INPUT_BUFFER - 1, child_process);
|
||||
sscanf (input_buffer, "%*[^l]load average: %lf, %lf, %lf", &la1, &la5, &la15);
|
||||
if(strstr(input_buffer, "load average:")) {
|
||||
sscanf (input_buffer, "%*[^l]load average: %lf, %lf, %lf", &la1, &la5, &la15);
|
||||
}
|
||||
else if(strstr(input_buffer, "load averages:")) {
|
||||
sscanf (input_buffer, "%*[^l]load averages: %lf, %lf, %lf", &la1, &la5, &la15);
|
||||
}
|
||||
else {
|
||||
printf (_("could not parse load from uptime: %s\n"), result, PATH_TO_UPTIME);
|
||||
return STATE_UNKNOWN;
|
||||
}
|
||||
|
||||
result = spclose (child_process);
|
||||
if (result) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue