Skip to content

Commit 79b02d2

Browse files
committed
Add max latency to console output
1 parent 6dc95ee commit 79b02d2

File tree

4 files changed

+25
-18
lines changed

4 files changed

+25
-18
lines changed

src/main/java/com/rabbitmq/perf/metrics/CompactPrintStreamMetricsFormatter.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ class CompactPrintStreamMetricsFormatter extends BaseMetricsFormatter implements
3232
private static final String TIME_FORMAT = "%-10s";
3333
// up to 999999 (6), space (1), msg/s (5), leading space to separate (1)
3434
private static final String RATE_FORMAT = "%13s";
35-
// 5 values of 3 digits, 4 separators, 1 space, 2 characters for unit, 1 space to separate
36-
private static final String LATENCY_FORMAT = "%23s";
37-
private static final int MAX_ALIGNED_LATENCY = 23 - 1; // no space to separate
35+
// 6 values of 3 digits, 5 separators, 1 space, 2 characters for unit, 1 space to separate
36+
private static final String LATENCY_FORMAT = "%27s";
37+
private static final int MAX_ALIGNED_LATENCY = 27 - 1; // no space to separate
3838

3939
private final PrintStream out;
4040
private final TimeUnit latencyCollectionTimeUnit;

src/main/java/com/rabbitmq/perf/metrics/DefaultPerformanceMetrics.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,8 @@ private long[] getStats(Histogram histogram) {
255255
div(histogram.getSnapshot().getMedian()),
256256
div(histogram.getSnapshot().get75thPercentile()),
257257
div(histogram.getSnapshot().get95thPercentile()),
258-
div(histogram.getSnapshot().get99thPercentile())
258+
div(histogram.getSnapshot().get99thPercentile()),
259+
div(histogram.getSnapshot().getMax())
259260
};
260261
}
261262

src/main/java/com/rabbitmq/perf/metrics/MetricsFormatterUtils.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
abstract class MetricsFormatterUtils {
2626

27-
static final String LATENCY_HEADER = "min/median/75th/95th/99th";
27+
static final String LATENCY_HEADER = "min/median/75th/95th/99th/max";
2828
static final String MESSAGE_RATE_LABEL = "msg/s";
2929

3030
static final float NANO_TO_SECOND = 1_000_000_000;
@@ -49,8 +49,14 @@ static String formatRate(double rate) {
4949

5050
static String formatLatency(long[] stats, TimeUnit latencyCollectionTimeUnit) {
5151
return format(
52-
"%d/%d/%d/%d/%d %s",
53-
stats[0], stats[1], stats[2], stats[3], stats[4], unit(latencyCollectionTimeUnit));
52+
"%d/%d/%d/%d/%d/%d %s",
53+
stats[0],
54+
stats[1],
55+
stats[2],
56+
stats[3],
57+
stats[4],
58+
stats[5],
59+
unit(latencyCollectionTimeUnit));
5460
}
5561

5662
private static String unit(TimeUnit latencyCollectionTimeUnit) {

src/test/java/com/rabbitmq/perf/metrics/DefaultPerformanceMetricsTest.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
public class DefaultPerformanceMetricsTest {
3838

39-
static final String LATENCY_HEADER = "min/median/75th/95th/99th";
39+
static final String LATENCY_HEADER = "min/median/75th/95th/99th/max";
4040
StringWriter csvOut;
4141
ByteArrayOutputStream defaultConsoleOut, compactConsoleOut;
4242
String defaultOutput, compactOutput;
@@ -60,13 +60,13 @@ static TestConfiguration[] testConfigurationsMicroSeconds() {
6060
"confirmed",
6161
"nacked",
6262
"received",
63-
"min/median/75th/95th/99th consumer latency",
63+
"min/median/75th/95th/99th/max consumer latency",
6464
"confirm latency"),
6565
2),
6666
tc(
6767
"Sent, received",
6868
configure().sent(true).received(true).returned(false).confirmed(false),
69-
array("sent", "received", "min/median/75th/95th/99th consumer latency"),
69+
array("sent", "received", "min/median/75th/95th/99th/max consumer latency"),
7070
1,
7171
array("returned", "confirmed", "nacked", "confirm latency")),
7272
tc(
@@ -77,14 +77,14 @@ static TestConfiguration[] testConfigurationsMicroSeconds() {
7777
"confirmed",
7878
"nacked",
7979
"received",
80-
"min/median/75th/95th/99th consumer latency",
80+
"min/median/75th/95th/99th/max consumer latency",
8181
"confirm latency"),
8282
2,
8383
array("returned")),
8484
tc(
8585
"Sent, received, returned",
8686
configure().sent(true).received(true).returned(true).confirmed(false),
87-
array("sent", "returned", "received", "min/median/75th/95th/99th consumer latency"),
87+
array("sent", "returned", "received", "min/median/75th/95th/99th/max consumer latency"),
8888
1,
8989
array("confirmed", "nacked", "confirm latency")),
9090
tc(
@@ -97,7 +97,7 @@ static TestConfiguration[] testConfigurationsMicroSeconds() {
9797
"confirmed",
9898
"nacked",
9999
"received",
100-
"min/median/75th/95th/99th consumer latency",
100+
"min/median/75th/95th/99th/max consumer latency",
101101
"consumer latency",
102102
"confirm latency")),
103103
tc(
@@ -109,13 +109,13 @@ static TestConfiguration[] testConfigurationsMicroSeconds() {
109109
"confirmed",
110110
"nacked",
111111
"received",
112-
"min/median/75th/95th/99th consumer latency",
112+
"min/median/75th/95th/99th/max consumer latency",
113113
"consumer latency",
114114
"confirm latency")),
115115
tc(
116116
"Sent, confirmed",
117117
configure().sent(true).received(false).returned(false).confirmed(true),
118-
array("sent", "confirmed", "nacked", "min/median/75th/95th/99th confirm latency"),
118+
array("sent", "confirmed", "nacked", "min/median/75th/95th/99th/max confirm latency"),
119119
1,
120120
array("returned", "received", "consumer latency")),
121121
tc(
@@ -126,19 +126,19 @@ static TestConfiguration[] testConfigurationsMicroSeconds() {
126126
"returned",
127127
"confirmed",
128128
"nacked",
129-
"min/median/75th/95th/99th confirm latency"),
129+
"min/median/75th/95th/99th/max confirm latency"),
130130
1,
131131
array("received", "consumer latency")),
132132
tc(
133133
"Sent, received",
134134
configure().sent(true).received(true).returned(false).confirmed(false),
135-
array("sent", "received", "min/median/75th/95th/99th consumer latency"),
135+
array("sent", "received", "min/median/75th/95th/99th/max consumer latency"),
136136
1,
137137
array("returned", "confirmed", "nacked", "confirm latency")),
138138
tc(
139139
"Received",
140140
configure().sent(false).received(true).returned(false).confirmed(false),
141-
array("received", "min/median/75th/95th/99th consumer latency"),
141+
array("received", "min/median/75th/95th/99th/max consumer latency"),
142142
1,
143143
array("sent", "returned", "confirmed", "nacked", "confirm latency")),
144144
};

0 commit comments

Comments
 (0)