Skip to content

Commit

Permalink
Merge pull request #38 from lonemeow/histogram-cardinality
Browse files Browse the repository at this point in the history
Allow setting max cardinality for histograms
  • Loading branch information
arungupta authored Feb 18, 2021
2 parents 60cc8e4 + 4b507f1 commit c251e99
Showing 1 changed file with 14 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

package io.ultrabrew.metrics.reporters;

import static io.ultrabrew.metrics.Metric.DEFAULT_MAX_CARDINALITY;
import static io.ultrabrew.metrics.reporters.AggregatingReporter.DEFAULT_AGGREGATORS;

import io.ultrabrew.metrics.Metric;
Expand Down Expand Up @@ -191,13 +192,24 @@ public B withDefaultAggregators(
*
* @param metricId identifier of the metric
* @param bucket distribution bucket
* @param maxCardinality maximum cardinality of data in the histogram
*/
public B addHistogram(final String metricId, final DistributionBucket bucket) {
public B addHistogram(final String metricId, final DistributionBucket bucket, final int maxCardinality) {
this.metricAggregators
.put(metricId, (metric) -> new BasicHistogramAggregator(metricId, bucket));
.put(metricId, (metric) -> new BasicHistogramAggregator(metricId, bucket, maxCardinality));
return (B) this;
}

/**
* Add histograms to a specific metric
*
* @param metricId identifier of the metric
* @param bucket distribution bucket
*/
public B addHistogram(final String metricId, final DistributionBucket bucket) {
return addHistogram(metricId, bucket, DEFAULT_MAX_CARDINALITY);
}

public abstract R build();

}
Expand Down

0 comments on commit c251e99

Please sign in to comment.