From 359ec70298b22aaedbe4b290d0aa2fe7ef758498 Mon Sep 17 00:00:00 2001 From: Dirk Koopman Date: Wed, 16 Nov 2016 12:53:39 +0000 Subject: [PATCH] change source of proc secs in cmd/mrtg.pl --- Changes | 2 ++ cmd/mrtg.pl | 31 ++++++++----------------------- perl/Web.pm | 4 +++- 3 files changed, 13 insertions(+), 24 deletions(-) diff --git a/Changes b/Changes index d27204db..b118fc01 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,5 @@ +16Nov16======================================================================= +1. Change method of get processor seconds in cmd/mrtg.pl 18Aug16======================================================================= 1. Add CTY-2610 2. put back msg total in & total out for mrtg and background mrtg diff --git a/cmd/mrtg.pl b/cmd/mrtg.pl index aeaab2e7..4a872d61 100644 --- a/cmd/mrtg.pl +++ b/cmd/mrtg.pl @@ -28,6 +28,7 @@ # # # +use Time::HiRes qw( clock_gettime CLOCK_PROCESS_CPUTIME_ID ); sub handle { @@ -77,29 +78,13 @@ sub do_it if (!$main::is_win && ($want{proc} || $want{all})) { $ENV{COLUMNS} = 250; my $secs; - my $f = new IO::File "top -b -o TIME+ -n 1 -c |"; - # dbg("$f"); - if ($f) { - while (<$f>) { - chomp; - my $l = $_; - dbg("mrtg: $l") if isdbg("mrtg"); - next unless $l =~ m{cluster\.pl$}; - next if $l =~ m{\d\s+su\s+}; - next if $l =~ m{\d\s+bash\s+}; - my @f = split /\s+/, $l; - my ($m, $s) = $f[10] =~ /\b(\d+):(\d\d\.\d\d)\b/; - $secs = ($m * 60) + $s; - dbg("mrtg: proc: $f[10] m: $m s: $s secs: $secs") if isdbg("mrtg"); - last; - } - $f->close; - - $mc->cfgprint('proc', [qw(noi unknaszero withzeroes perminute)], 5*60, - "Processor Usage", - 'Proc Secs/Min', 'Proc Secs', 'Proc Secs') unless $want{dataonly}; - $mc->data('proc', $secs, $secs, "Processor Usage") unless $want{cfgonly}; - } + + $secs = clock_gettime(CLOCK_PROCESS_CPUTIME_ID); + + $mc->cfgprint('proc', [qw(noi unknaszero withzeroes perminute)], 5*60, + "Processor Usage", + 'Proc Secs/Min', 'Proc Secs', 'Proc Secs') unless $want{dataonly}; + $mc->data('proc', $secs, $secs, "Processor Usage") unless $want{cfgonly}; } # do the users and nodes diff --git a/perl/Web.pm b/perl/Web.pm index e690f89a..fbba02f6 100644 --- a/perl/Web.pm +++ b/perl/Web.pm @@ -14,9 +14,11 @@ use DXDebug; sub start_node { + dbg("Before Web::start_node"); + Mojo::IOLoop->start unless Mojo::IOLoop->is_running; - dbg("After Mojo::IOLoop"); + dbg("After Web::start_node"); } -- 2.34.1