Fixed exception when using portstats -t -d command
+ minor styling of the printed stats table
Change-Id: I139cae73e618e719aa73be7514ee3dc4c4dd6640
diff --git a/cli/src/main/java/org/onosproject/cli/net/DevicePortStatsCommand.java b/cli/src/main/java/org/onosproject/cli/net/DevicePortStatsCommand.java
index 16e7c1a..2aa631f 100644
--- a/cli/src/main/java/org/onosproject/cli/net/DevicePortStatsCommand.java
+++ b/cli/src/main/java/org/onosproject/cli/net/DevicePortStatsCommand.java
@@ -160,7 +160,7 @@
private void printPortStatsDeltaTable(DeviceId deviceId, Iterable<PortStatistics> portStats) {
final String formatDeltaTable = "|%5s | %7s | %7s | %7s | %7s | %7s | %7s | %7s | %7s |%9s |";
print("+---------------------------------------------------------------------------------------------------+");
- print("| DeviceId = %s |", deviceId);
+ print("| DeviceId = %-86s |", deviceId);
print("|---------------------------------------------------------------------------------------------------|");
print("| | Receive | Transmit | Time [s] |");
print("| Port | Packets | Bytes | Rate bps | Drop | Packets | Bytes | Rate bps | Drop | Interval |");
@@ -175,8 +175,8 @@
}
float duration = ((float) stat.durationSec()) +
(((float) stat.durationNano()) / TimeUnit.SECONDS.toNanos(1));
- float rateRx = stat.bytesReceived() * 8 / duration;
- float rateTx = stat.bytesSent() * 8 / duration;
+ float rateRx = duration > 0 ? stat.bytesReceived() * 8 / duration : 0;
+ float rateTx = duration > 0 ? stat.bytesSent() * 8 / duration : 0;
print(formatDeltaTable, stat.port(),
humanReadable(stat.packetsReceived()),
humanReadable(stat.bytesReceived()),