Sys::CpuLoad - retrieve system load averages
version 0.31
use Sys::CpuLoad 'load';
print '1 min, 5 min, 15 min load average: ',
join(',', load()), "\n";
This module retrieves the 1 minute, 5 minute, and 15 minute load average of a machine.
This method returns the load average for 1 minute, 5 minutes and 15 minutes as an array.
On Linux, Solaris, FreeBSD, NetBSD and OpenBSD systems, it will make a call to "getloadavg".
If /proc/loadavg
is available on non-Cygwin systems, it
will call "proc_loadavg".
Otherwise, it will attempt to parse the output of uptime
.
On error, it will return an array of undef
values.
As of v0.29, you can override the default function by changing
$Sys::CpuLoad::LOAD
:
use Sys::CpuLoad 'load';
no warnings 'once';
$Sys::CpuLoad::LOAD = 'uptimr';
@load = load();
If you are writing code to work on multiple systems, you should use
the load
function. But if your code is intended for specific systems,
then you should use the appropriate function.
This is a wrapper around the system call to getloadavg
.
If this call is unavailable, or it is fails, it will return undef
.
Added in v0.22.
If /proc/loadavg
is available, it will be used.
If the data cannot be parsed, it will return undef
.
Added in v0.22.
Parse the output of uptime.
If the uptime executable cannot be found, or the output cannot be
parsed, it will return undef
.
Added in v0.22.
As of v0.24, you can override the executable path by setting
$Sys::CpuLoad::UPTIME
, e.g.
use Sys::CpuLoad 'uptime';
no warnings 'once';
$Sys::CpuLoad::UPTIME = '/usr/bin/w';
@load = uptime();
The development version is on github at https://github.com/robrwo/Sys-CpuLoad and may be cloned from git://github.com/robrwo/Sys-CpuLoad.git
Please report any bugs or feature requests on the bugtracker website https://github.com/robrwo/Sys-CpuLoad/issues
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
- Robert Rothenberg rrwo@cpan.org
- Clinton Wong clintdw@cpan.org
- Slaven Rezić slaven@rezic.de
- Victor Wagner
- Dmitry Dorofeev dima@yasp.com
- Vincent Lefèvre vincent@vinc17.net
This software is copyright (c) 1999-2002, 2020 by Clinton Wong clintdw@cpan.org.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.