File: loadavg.pl

package info (click to toggle)
libsys-statistics-linux-perl 0.66-5
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 424 kB
  • sloc: perl: 1,655; makefile: 2
file content (31 lines) | stat: -rwxr-xr-x 632 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/perl
use strict;
use warnings;
use Sys::Statistics::Linux;

$|++;

my $header   = 20;
my $interval = 1;
my $column   = 10;
my @order    = qw(avg_1 avg_5 avg_15);
my $h_int    = $header;
my $lxs      = Sys::Statistics::Linux->new(loadavg => 1);

while ( 1 ) {
   my $stats = $lxs->get->loadavg;

   if ($h_int == $header) {
      printf "%${column}s", $_ for ('date', 'time', @order);
      print "\n";
   }

   my ($date, $time) = $lxs->gettime;

   printf "%${column}s", $_ for ($date, $time);
   printf "%${column}s", $stats->{$_} for @order;
   print "\n";

   $h_int = $header if --$h_int == 0;
   sleep $interval;
}