diff -crN org/mysql_isam_space_ new/mysql_isam_space_ *** org/mysql_isam_space_ 2009-09-08 18:54:01.000000000 +0900 --- new/mysql_isam_space_ 2009-09-25 18:32:59.000000000 +0900 *************** *** 44,49 **** --- 44,50 ---- chomp $DB; my $STATEFILE = $ENV{'statefile'} || "/var/lib/munin/plugin-state/plugin-mysql_isam_space.state"; my $MYSQLSHOW = $ENV{'mysqlshow'} || 'mysqlshow'; + my $ABSOLUTE = exists $ENV{'absolute'}; my @mysql_opts = (); if (exists $ENV{'mysqlopts'}) *************** *** 210,225 **** while () { my @fields = split (/\s*\|\s*/); ! next if @fields > 2; # Separator line if (! $headerseen and $fields[1] eq "Name") { # Header line, grab field names ! %index = map {($field[$_], $_)} 0..$#fields; } else { my $value = $ABSOLUTE ? $fields[$index{Data_length}] ! : (100*$fields[$index{Data_length}]/$fields[$index{Max_data_length}]); printf OUT ("%s.%s %f\n", $db, $fields[1], $value); $tables->{$fields[1]} = $value if $DB eq $db; } --- 211,228 ---- while () { my @fields = split (/\s*\|\s*/); ! # next if @fields > 2; # Separator line ! next if @fields < 2; # Separator line if (! $headerseen and $fields[1] eq "Name") { # Header line, grab field names ! %index = map {($fields[$_], $_)} 0..$#fields; } else { my $value = $ABSOLUTE ? $fields[$index{Data_length}] ! # : (100*$fields[$index{Data_length}]/$fields[$index{Max_data_length}]); ! : $fields[$index{Max_data_length}] ? (100*$fields[$index{Data_length}]/$fields[$index{Max_data_length}]) : 0; printf OUT ("%s.%s %f\n", $db, $fields[1], $value); $tables->{$fields[1]} = $value if $DB eq $db; }