diff options
Diffstat (limited to 'qos.pl')
-rwxr-xr-x | qos.pl | 18 |
1 files changed, 10 insertions, 8 deletions
@@ -300,16 +300,18 @@ sub print_output_table { $output_buffer .= POSIX::strftime("%Y-%m-%d %H:%M:%S ", localtime); } else { my $class_id = $col; - if ($history_values->{$class_id}) { - my $total_time = reduce {$a + $b->{time_diff}} 0, @{$history_values->{$class_id}}; - my $total_value = reduce {$a + $b->{value_diff}} 0, @{$history_values->{$class_id}}; - my $speed = 0; - $speed = $total_value / $total_time if $total_time != 0; - - $output_buffer .= sprintf "%14s (%s): %11s %s", $classes{$class_id}, $class_id, format_bytes($results->{$class_id}), format_rate_color($speed, $class_id); - } else { + if (defined($results->{$class_id})) { $output_buffer .= sprintf "%14s (%s): %11s", $classes{$class_id}, $class_id, format_bytes($results->{$class_id}); + if ($history_values->{$class_id}) { + my $total_time = reduce {$a + $b->{time_diff}} 0, @{$history_values->{$class_id}}; + my $total_value = reduce {$a + $b->{value_diff}} 0, @{$history_values->{$class_id}}; + my $speed = 0; + + $speed = $total_value / $total_time if $total_time != 0; + + $output_buffer .= sprintf " %s", format_rate_color($speed, $class_id); + } } } } |