Skip to content

Commit

Permalink
Merge pull request #531 from rabbitmq/confirm-size-metrics
Browse files Browse the repository at this point in the history
Add confirm size metrics
  • Loading branch information
acogoluegnes authored Jun 8, 2023
2 parents 7fe60aa + a6e2e99 commit ca78ad7
Showing 1 changed file with 11 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import com.codahale.metrics.ExponentiallyDecayingReservoir;
import com.codahale.metrics.Histogram;
import com.rabbitmq.perf.NamedThreadFactory;
import io.micrometer.core.instrument.DistributionSummary;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.Timer;
import java.time.Duration;
Expand Down Expand Up @@ -72,6 +73,7 @@ public final class DefaultPerformanceMetrics implements PerformanceMetrics, Auto
receivedRate;
// latencies: confirmed, consumed
private final Timer consumedLatencyTimer, confirmedLatencyTimer;
private final DistributionSummary confirmedSize;
// end of Micrometer's metrics
private final Duration interval;
private final TimeUnit latencyCollectionTimeUnit;
Expand Down Expand Up @@ -118,6 +120,14 @@ public DefaultPerformanceMetrics(
confirmedLatencyTimer =
timer(metricsPrefix + "confirm.latency", "confirm latency", this.interval, registry);

confirmedSize =
DistributionSummary.builder(metricsPrefix + "confirm.size")
.description("number of confirms received per confirm frame")
.publishPercentiles(0.5, 0.75, 0.95, 0.99)
.distributionStatisticExpiry(this.interval)
.serviceLevelObjectives()
.register(registry);

this.consumedLatency = new AtomicReference<>(histogram());
this.confirmedLatency = new AtomicReference<>(histogram());

Expand Down Expand Up @@ -266,6 +276,7 @@ public void published() {
@Override
public void confirmed(int count, long[] latencies) {
this.confirmed.addAndGet(count);
this.confirmedSize.record(count);
for (long latency : latencies) {
this.confirmedLatencyTimer.record(latency, this.latencyCollectionTimeUnit);
this.confirmedLatency.get().update(latency);
Expand Down

0 comments on commit ca78ad7

Please sign in to comment.