Class TimeWindowPercentileHistogram

java.lang.Object
io.micrometer.core.instrument.distribution.TimeWindowPercentileHistogram
All Implemented Interfaces:
Histogram, AutoCloseable

public class TimeWindowPercentileHistogram extends Object
NOTE: This class is intended for internal use as an implementation detail. You should not compile against its API. Please contact the project maintainers if you need this as public API.

A histogram implementation that supports the computation of percentiles by Micrometer for publishing to a monitoring system.

  • Constructor Details

    • TimeWindowPercentileHistogram

      public TimeWindowPercentileHistogram(Clock clock, DistributionStatisticConfig distributionStatisticConfig, boolean supportsAggregablePercentiles)
    • TimeWindowPercentileHistogram

      protected TimeWindowPercentileHistogram(Clock clock, DistributionStatisticConfig distributionStatisticConfig, boolean supportsAggregablePercentiles, boolean isCumulativeBucketCounts, boolean includeInfinityBucket)
      This constructor allows full customization of the histogram characteristics.
      Parameters:
      clock - clock used for time windowing
      distributionStatisticConfig - distribution config to use with this histogram
      supportsAggregablePercentiles - whether the backend receiving this histogram supports aggregating histograms to estimate percentiles
      isCumulativeBucketCounts - whether histogram bucket counts are cumulative
      includeInfinityBucket - whether to include the infinity histogram bucket
      Since:
      1.13.11
  • Method Details

    • takeSnapshot

      public final HistogramSnapshot takeSnapshot(long count, double total, double max)
      Specified by:
      takeSnapshot in interface Histogram
    • recordLong

      public void recordLong(long value)
      Specified by:
      recordLong in interface Histogram
    • recordDouble

      public void recordDouble(double value)
      Specified by:
      recordDouble in interface Histogram
    • accumulatedHistogram

      protected org.HdrHistogram.DoubleHistogram accumulatedHistogram()
    • currentHistogram

      protected org.HdrHistogram.DoubleRecorder currentHistogram()