mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-27 16:12:04 +00:00
merge Brian's changes
This commit is contained in:
@@ -1550,8 +1550,11 @@ use List::Util qw( max first );
|
|||||||
|
|
||||||
use ReadKeyMini qw( GetTerminalSize );
|
use ReadKeyMini qw( GetTerminalSize );
|
||||||
|
|
||||||
my (undef, $max_lines) = GetTerminalSize();
|
my $max_lines;
|
||||||
$Diskstats::printed_lines = $max_lines;
|
BEGIN {
|
||||||
|
(undef, $max_lines) = GetTerminalSize();
|
||||||
|
$Diskstats::printed_lines = $max_lines;
|
||||||
|
}
|
||||||
|
|
||||||
my $diskstat_colno_for;
|
my $diskstat_colno_for;
|
||||||
BEGIN {
|
BEGIN {
|
||||||
@@ -2139,11 +2142,12 @@ sub _calc_read_stats {
|
|||||||
reads_sec => $delta_for->{reads} / $elapsed,
|
reads_sec => $delta_for->{reads} / $elapsed,
|
||||||
read_requests => $delta_for->{reads_merged} + $delta_for->{reads},
|
read_requests => $delta_for->{reads_merged} + $delta_for->{reads},
|
||||||
mbytes_read_sec => $delta_for->{read_kbs} / $elapsed / 1024,
|
mbytes_read_sec => $delta_for->{read_kbs} / $elapsed / 1024,
|
||||||
ios_read_sec => $delta_for->{ms_spent_reading} / 1000,
|
|
||||||
read_conc => $delta_for->{ms_spent_reading} /
|
read_conc => $delta_for->{ms_spent_reading} /
|
||||||
$elapsed / 1000 / $devs_in_group,
|
$elapsed / 1000 / $devs_in_group,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$read_stats{ios_read_sec} = 0; # TODO
|
||||||
|
|
||||||
if ( $delta_for->{reads} > 0 ) {
|
if ( $delta_for->{reads} > 0 ) {
|
||||||
$read_stats{read_rtime} =
|
$read_stats{read_rtime} =
|
||||||
$delta_for->{ms_spent_reading} / $delta_for->{reads};
|
$delta_for->{ms_spent_reading} / $delta_for->{reads};
|
||||||
@@ -2176,12 +2180,13 @@ sub _calc_write_stats {
|
|||||||
writes_sec => $delta_for->{writes} / $elapsed,
|
writes_sec => $delta_for->{writes} / $elapsed,
|
||||||
write_requests => $delta_for->{writes_merged} + $delta_for->{writes},
|
write_requests => $delta_for->{writes_merged} + $delta_for->{writes},
|
||||||
mbytes_written_sec => $delta_for->{written_kbs} / $elapsed / 1024,
|
mbytes_written_sec => $delta_for->{written_kbs} / $elapsed / 1024,
|
||||||
ios_written_sec => $delta_for->{ms_spent_writing} / 1000,
|
|
||||||
write_conc => $delta_for->{ms_spent_writing} /
|
write_conc => $delta_for->{ms_spent_writing} /
|
||||||
$elapsed / 1000 /
|
$elapsed / 1000 /
|
||||||
$devs_in_group,
|
$devs_in_group,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$write_stats{ios_written_sec} = 0; # TODO
|
||||||
|
|
||||||
if ( $delta_for->{writes} > 0 ) {
|
if ( $delta_for->{writes} > 0 ) {
|
||||||
$write_stats{write_rtime} =
|
$write_stats{write_rtime} =
|
||||||
$delta_for->{ms_spent_writing} / $delta_for->{writes};
|
$delta_for->{ms_spent_writing} / $delta_for->{writes};
|
||||||
@@ -2399,6 +2404,9 @@ sub print_deltas {
|
|||||||
|
|
||||||
my @stats = $self->_calc_deltas();
|
my @stats = $self->_calc_deltas();
|
||||||
|
|
||||||
|
$Diskstats::printed_lines = $max_lines
|
||||||
|
unless defined $Diskstats::printed_lines;
|
||||||
|
|
||||||
if ( $self->{space_samples} && @stats && @stats > 1
|
if ( $self->{space_samples} && @stats && @stats > 1
|
||||||
&& !$Diskstats::last_was_header ) {
|
&& !$Diskstats::last_was_header ) {
|
||||||
print "\n";
|
print "\n";
|
||||||
@@ -2417,9 +2425,9 @@ sub print_deltas {
|
|||||||
foreach my $stat ( @stats ) {
|
foreach my $stat ( @stats ) {
|
||||||
$self->$rows_method( $format, $cols, $stat );
|
$self->$rows_method( $format, $cols, $stat );
|
||||||
}
|
}
|
||||||
$Diskstats::printed_lines = $Diskstats::printed_lines <= 0
|
|
||||||
? $max_lines
|
$Diskstats::printed_lines = $max_lines
|
||||||
: $Diskstats::printed_lines;
|
if $Diskstats::printed_lines <= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
sub compute_line_ts {
|
sub compute_line_ts {
|
||||||
|
@@ -34,8 +34,11 @@ use List::Util qw( max first );
|
|||||||
|
|
||||||
use ReadKeyMini qw( GetTerminalSize );
|
use ReadKeyMini qw( GetTerminalSize );
|
||||||
|
|
||||||
my (undef, $max_lines) = GetTerminalSize();
|
my $max_lines;
|
||||||
$Diskstats::printed_lines = $max_lines;
|
BEGIN {
|
||||||
|
(undef, $max_lines) = GetTerminalSize();
|
||||||
|
$Diskstats::printed_lines = $max_lines;
|
||||||
|
}
|
||||||
|
|
||||||
my $diskstat_colno_for;
|
my $diskstat_colno_for;
|
||||||
BEGIN {
|
BEGIN {
|
||||||
@@ -690,11 +693,12 @@ sub _calc_read_stats {
|
|||||||
reads_sec => $delta_for->{reads} / $elapsed,
|
reads_sec => $delta_for->{reads} / $elapsed,
|
||||||
read_requests => $delta_for->{reads_merged} + $delta_for->{reads},
|
read_requests => $delta_for->{reads_merged} + $delta_for->{reads},
|
||||||
mbytes_read_sec => $delta_for->{read_kbs} / $elapsed / 1024,
|
mbytes_read_sec => $delta_for->{read_kbs} / $elapsed / 1024,
|
||||||
ios_read_sec => $delta_for->{ms_spent_reading} / 1000,
|
|
||||||
read_conc => $delta_for->{ms_spent_reading} /
|
read_conc => $delta_for->{ms_spent_reading} /
|
||||||
$elapsed / 1000 / $devs_in_group,
|
$elapsed / 1000 / $devs_in_group,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$read_stats{ios_read_sec} = 0; # TODO
|
||||||
|
|
||||||
if ( $delta_for->{reads} > 0 ) {
|
if ( $delta_for->{reads} > 0 ) {
|
||||||
$read_stats{read_rtime} =
|
$read_stats{read_rtime} =
|
||||||
$delta_for->{ms_spent_reading} / $delta_for->{reads};
|
$delta_for->{ms_spent_reading} / $delta_for->{reads};
|
||||||
@@ -727,12 +731,13 @@ sub _calc_write_stats {
|
|||||||
writes_sec => $delta_for->{writes} / $elapsed,
|
writes_sec => $delta_for->{writes} / $elapsed,
|
||||||
write_requests => $delta_for->{writes_merged} + $delta_for->{writes},
|
write_requests => $delta_for->{writes_merged} + $delta_for->{writes},
|
||||||
mbytes_written_sec => $delta_for->{written_kbs} / $elapsed / 1024,
|
mbytes_written_sec => $delta_for->{written_kbs} / $elapsed / 1024,
|
||||||
ios_written_sec => $delta_for->{ms_spent_writing} / 1000,
|
|
||||||
write_conc => $delta_for->{ms_spent_writing} /
|
write_conc => $delta_for->{ms_spent_writing} /
|
||||||
$elapsed / 1000 /
|
$elapsed / 1000 /
|
||||||
$devs_in_group,
|
$devs_in_group,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$write_stats{ios_written_sec} = 0; # TODO
|
||||||
|
|
||||||
if ( $delta_for->{writes} > 0 ) {
|
if ( $delta_for->{writes} > 0 ) {
|
||||||
$write_stats{write_rtime} =
|
$write_stats{write_rtime} =
|
||||||
$delta_for->{ms_spent_writing} / $delta_for->{writes};
|
$delta_for->{ms_spent_writing} / $delta_for->{writes};
|
||||||
@@ -975,6 +980,9 @@ sub print_deltas {
|
|||||||
|
|
||||||
my @stats = $self->_calc_deltas();
|
my @stats = $self->_calc_deltas();
|
||||||
|
|
||||||
|
$Diskstats::printed_lines = $max_lines
|
||||||
|
unless defined $Diskstats::printed_lines;
|
||||||
|
|
||||||
if ( $self->{space_samples} && @stats && @stats > 1
|
if ( $self->{space_samples} && @stats && @stats > 1
|
||||||
&& !$Diskstats::last_was_header ) {
|
&& !$Diskstats::last_was_header ) {
|
||||||
# Print an empty line before the rows if we have more
|
# Print an empty line before the rows if we have more
|
||||||
@@ -996,9 +1004,9 @@ sub print_deltas {
|
|||||||
foreach my $stat ( @stats ) {
|
foreach my $stat ( @stats ) {
|
||||||
$self->$rows_method( $format, $cols, $stat );
|
$self->$rows_method( $format, $cols, $stat );
|
||||||
}
|
}
|
||||||
$Diskstats::printed_lines = $Diskstats::printed_lines <= 0
|
|
||||||
? $max_lines
|
$Diskstats::printed_lines = $max_lines
|
||||||
: $Diskstats::printed_lines;
|
if $Diskstats::printed_lines <= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
sub compute_line_ts {
|
sub compute_line_ts {
|
||||||
|
Reference in New Issue
Block a user