diff --git a/Ceph/Script/cephDiskPerf.pl b/Ceph/Script/cephDiskPerf.pl index 533e75f91d544bb9eaaad0f87c2c3b7a0d9cea1c..d29cd9dc1edb426a5c0ff730dddf2a982af1c87c 100755 --- a/Ceph/Script/cephDiskPerf.pl +++ b/Ceph/Script/cephDiskPerf.pl @@ -171,11 +171,12 @@ foreach my $_lineS (@_dataSize) next unless ($fields[0] =~ /^\d+$/); my $osdNum = $fields[0]; my $type = $fields[1]; - my $frac = $fields[10]; + my $frac = $fields[16]; my $size = $fields[4]; - $size =~ s/iB$//; - $size =~ s/B$//; - my $sizeLastChar = lc(chop($size)); + my $unit = $fields[5]; + $unit =~ s/iB$//; + $unit =~ s/B$//; + my $sizeLastChar = lc(chop($unit)); if ($sizeLastChar eq "t") { $size = $size * 1000.; } elsif ($sizeLastChar eq "g") { diff --git a/Ceph/Script/cephUsage.pl b/Ceph/Script/cephUsage.pl index c9d6e7bb2808ebfa882020717366cf91d40fe8e8..c2eb7cccb87c67ca9a4e22bb29956ae063586e62 100755 --- a/Ceph/Script/cephUsage.pl +++ b/Ceph/Script/cephUsage.pl @@ -159,14 +159,18 @@ foreach my $_line (@_data) $skipNext = 1; next; } - my @fields = split(/\s+/, $_line); - if ($inGlobal) { - $poolHash{'GLOBAL'}{'size'} = convertNumber($fields[3],'size'); - $poolHash{'GLOBAL'}{'frac'} = $fields[4]; - $poolHash{'GLOBAL'}{'objs'} = convertNumber($fields[5],'count'); - print "GLOBAL: ".$poolHash{'GLOBAL'}{'size'}." ".$poolHash{'GLOBAL'}{'frac'}." ".$poolHash{'GLOBAL'}{'objs'}."\n" if (defined $opt_debug); - $inGlobal = 0; - next; + if ($_line =~ m/TOTAL/) { + $skipNext = 1; + my @fields = split(/\s+/, $_line); + if ($inGlobal) { + $poolHash{'GLOBAL'}{'size'} = convertNumber($fields[8].$fields[9],'size'); + $poolHash{'GLOBAL'}{'frac'} = $fields[10]; +# $poolHash{'GLOBAL'}{'objs'} = convertNumber($fields[5],'count'); +# print "GLOBAL: ".$poolHash{'GLOBAL'}{'size'}." ".$poolHash{'GLOBAL'}{'frac'}." ".$poolHash{'GLOBAL'}{'objs'}."\n" if (defined $opt_debug); + print "GLOBAL: ".$poolHash{'GLOBAL'}{'size'}." ".$poolHash{'GLOBAL'}{'frac'}."\n" if (defined $opt_debug); + $inGlobal = 0; + next; + } } # if we get here, we are in POOLS section next if ($poolName eq "" || ($fields[1] !~ m/$poolName/)); @@ -179,23 +183,23 @@ foreach my $_line (@_data) $poolTest = $fields[1]; } if (exists $poolHash{$poolTest}) { - $poolHash{$poolTest}{'used'} += convertNumber($fields[5],'size'); - $poolHash{$poolTest}{'size'} += convertNumber($fields[12],'size'); - my $tempFrac = $fields[6]; - my $tempMax = convertNumber($fields[7],'size'); + $poolHash{$poolTest}{'used'} += convertNumber($fields[3].$fields[4],'size'); + $poolHash{$poolTest}{'size'} += convertNumber($fields[6].$fields[7],'size'); + my $tempFrac = $fields[8]; + my $tempMax = convertNumber($fields[9].$fields[10],'size'); $tempMax = $poolHash{$poolTest}{'used'}/$tempFrac/0.01 if ($tempFrac > 1.); $poolHash{$poolTest}{'max'} = $tempMax unless ($poolHash{$poolTest}{'max'} > $tempMax); if ( $poolHash{$poolTest}{'max'} > 0. ) { $poolHash{$poolTest}{'frac'} = $poolHash{$poolTest}{'used'} / $poolHash{$poolTest}{'max'}; } - $poolHash{$poolTest}{'objs'} += convertNumber($fields[9],'count'); + $poolHash{$poolTest}{'objs'} += convertNumber($fields[5],'count'); } else { - $poolHash{$poolTest}{'used'} = convertNumber($fields[5],'size'); - $poolHash{$poolTest}{'size'} = convertNumber($fields[12],'size'); - $poolHash{$poolTest}{'frac'} = $fields[6]; - $poolHash{$poolTest}{'max'} = convertNumber($fields[7],'size'); + $poolHash{$poolTest}{'used'} = convertNumber($fields[3].$fields[4],'size'); + $poolHash{$poolTest}{'size'} = convertNumber($fields[6].$fields[7],'size'); + $poolHash{$poolTest}{'frac'} = $fields[8]; + $poolHash{$poolTest}{'max'} = convertNumber($fields[9].$fields[10],'size'); $poolHash{$poolTest}{'max'} = $poolHash{$poolTest}{'used'}/$poolHash{$poolTest}{'frac'}/0.01 if ($poolHash{$poolTest}{'frac'} > 1.); - $poolHash{$poolTest}{'objs'} = convertNumber($fields[9],'count'); + $poolHash{$poolTest}{'objs'} = convertNumber($fields[5],'count'); } print "POOL: $poolTest ".$poolHash{$poolTest}{'used'}." ".$poolHash{$poolTest}{'max'}." ".$poolHash{$poolTest}{'size'}." ".$poolHash{$poolTest}{'frac'}." ".$poolHash{$poolTest}{'objs'}."\n" if (defined $opt_debug); } diff --git a/Ceph/Script/queryCephDisks.pl b/Ceph/Script/queryCephDisks.pl index 08f14a57706a2aefb93ce9a7873a512b62227cff..b84454bc913794411aa17b4165e0520cd7130df8 100755 --- a/Ceph/Script/queryCephDisks.pl +++ b/Ceph/Script/queryCephDisks.pl @@ -194,11 +194,12 @@ foreach my $_line (@_data) next unless ($fields[0] =~ /^\d+$/); my $osdNum = $fields[0]; my $type = $fields[1]; - my $frac = $fields[10]; + my $frac = $fields[16]; my $size = $fields[4]; - $size =~ s/iB$//; - $size =~ s/B$//; - my $sizeLastChar = lc(chop($size)); + my $unit = $fields[5]; + $unit =~ s/iB$//; + $unit =~ s/B$//; + my $sizeLastChar = lc(chop($unit)); if ($sizeLastChar eq "t") { $size = $size * 1000.; } elsif ($sizeLastChar eq "g") {