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/)