NAME
Linux::loadavg - Get system load averages (via getloadavg(3C) system call)
SYNOPSIS
use Linux::loadavg;
@avgs = loadavg();
printf "load average: %f %f %f\n", @avgs;
DESCRIPTION
The Linux::loadavg module provides simple interface to Linux getloadavg(3C) library function, which returns the number of processes in the system run queue averaged over various periods of time. Up to 3 samples are retrieved and returned to successive elements of the output array. The system imposes a maximum of 3 samples, representing averages over the last 1, 5 and 15 minutes, respectively.
The LOADAVG_1MIN, LOADAVG_5MIN, and LOADAVG_15MIN indices can be used to extract the data from the appropriate element of the output array:
When called without an argument, the loadavg() function returns all three load averages.
EXPORT
- loadavg
- LOADAVG_1MIN
- LOADAVG_5MIN
- LOADAVG_15MIN
EXAMPLE
use strict;
# Autodetect Linux::loadavg or Solaris::loadavg
die $@ if eval sprintf('use %s::loadavg qw(loadavg)', ucfirst $^O) || $@;
# get the first two load averages
@avgs = loadavg(2);
printf "first load avg (1min): %f\n", @avgs[LOADAVG_1MIN];
printf "second load avg (5min): %f\n", @avgs[LOADAVG_5MIN];
AUTHOR
Niels van Dijke, <CpanDotOrgAtPerlboyDotNet>
CREDITS
The Linux::loadavg is nearly one on one based on Solaris::loadavg. Therefore credits should go to: Alexander Golomshtok (http://search.cpan.org/~agolomsh/)