1
0
Fork 0
mirror of https://github.com/munin-monitoring/contrib.git synced 2025-07-22 02:51:03 +00:00

Merge pull request #543 from colinmollenhour/patch-1

Fix issue when seconds is greater than two digits.
This commit is contained in:
Steve Schnepp 2014-10-29 13:21:09 +01:00
commit 5ca92103e5

View file

@ -45,9 +45,7 @@ use strict;
my $MYSQLADMIN = $ENV{mysqladmin} || "mysql"; my $MYSQLADMIN = $ENV{mysqladmin} || "mysql";
my $MYSQLOPTS = $ENV{mysqlopts} || ""; my $MYSQLOPTS = $ENV{mysqlopts} || "";
my $COMMAND = "$MYSQLADMIN $MYSQLOPTS -e 'show slave status\\G' | grep 'Seconds_Behind_Master'";
my %WANTED = ( "Seconds" => "seconds",
);
my $arg = shift(); my $arg = shift();
@ -66,37 +64,12 @@ if ($arg eq 'config') {
my $seconds = 0; my $seconds = 0;
my (@infos,$info,$i_seconds); my (@infos,$info,$i_seconds);
my $COMMAND = "$MYSQLADMIN $MYSQLOPTS -e 'show slave status;' | grep 'Slave'"; my $info = `$COMMAND`;
if($info =~ /: (\d+)/) {
open(SERVICE, "$COMMAND |") print("seconds.value $1\n");
or die("Coult not execute '$COMMAND': $!"); } else {
print("seconds.value U\n");
while (<SERVICE>) {
(@infos) = split;
} }
close(SERVICE);
my $i = 0;
foreach $info (@infos) {
$i++;
if ($info eq 'Seconds_Behind_Master') {
$i_seconds = $i;
next;
}
}
$COMMAND = "$MYSQLADMIN $MYSQLOPTS -e 'show slave status;' | cut -f $i_seconds | grep -v leng";
open(SERVICE, "$COMMAND |")
or die("Coult not execute '$COMMAND': $!");
while (<SERVICE>) {
(m/(\d+).*?(\d+(?:\.\d+)?)/);
$seconds += $1;
}
close(SERVICE);
print("seconds.value $seconds\n");
sub print_config { sub print_config {