in folsom-micrometer-metrics/src/main/java/com/spotify/folsom/client/MicrometerMetrics.java [143:167]
public void measureMultigetFuture(CompletionStage<List<GetResult<byte[]>>> future) {
final long startNs = System.nanoTime();
future.whenComplete(
(result, t) -> {
long duration = System.nanoTime() - startNs;
if (t == null) {
multigetCalls.record(duration, NANOSECONDS);
int hits = 0;
int total = result.size();
for (GetResult<byte[]> getResult : result) {
if (getResult != null) {
hits++;
}
}
multigetHits.increment(hits);
multigetMisses.increment(total - hits);
} else {
multigetFailures.record(duration, NANOSECONDS);
;
}
});
}