Sys::Statistics::Linux::CpuStats - Collect linux cpu statistics. use Sys::Statistics::Linux::CpuStats; my $lxs = new Sys::Statistics::Linux::CpuStats; $lxs->init; sleep 1; my $stats = $lxs->get; This module collects statistics by the virtual /proc filesystem (procfs) and is developed on default vanilla kernels. It is tested on x86 hardware with the distributions SuSE (SuSE on s390 and s390x architecture as well), Red Hat, Debian, Asianux, Slackware and Mandrake on kernel versions 2.4 and 2.6 and should run on all linux kernels with a default vanilla kernel as well. It is possible that this module doesn't run on all distributions if the procfs is too much changed. Further it is necessary to run it as a user with the authorization to read the /proc filesystem. It's necessary to initialize the statistics by calling "init()", because the statistics are deltas between the call of "init()" and "get()". By calling "get()" the deltas be generated and the initial values be updated automatically. This way making it possible that the call of "init()" is only necessary after the call of "new()". Further it's recommended to sleep for a while - at least one second - between the call of "init()" and/or "get()" if you want to get useful statistics. Generated by /proc/stat for each cpu (cpu0, cpu1 ...). cpu without a number is the summary. user - Percentage of CPU utilization at the user level. nice - Percentage of CPU utilization at the user level with nice priority. system - Percentage of CPU utilization at the system level. idle - Percentage of time the CPU is in idle state. iowait - Percentage of time the CPU is in idle state because an i/o operation is waiting for a disk. This statistic is only available by kernel versions higher than 2.4. Otherwise this statistic exists but will be ever 0. total - Total percentage of CPU utilization (user + nice + system).

new()
Call "new()" to create a new object. my $lxs = new Sys::Statistics::Linux::CpuStats;

init()
Call "init()" to initialize the statistics. $lxs->init;

get()
Call "get()" to get the statistics. "get()" returns the statistics as a hash reference. my $stats = $lxs->get; No exports. proc(5) Please report all bugs to <jschulz.cpan(at)bloonix.de>. Jonny Schulz <jschulz.cpan(at)bloonix.de>. Copyright (c) 2006, 2007 by Jonny Schulz. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.