Package io.prometheus.client
Class TimeWindowQuantiles
- java.lang.Object
-
- io.prometheus.client.TimeWindowQuantiles
-
class TimeWindowQuantiles extends java.lang.Object
Wrapper around CKMSQuantiles. Maintains a ring buffer of CKMSQuantiles to provide quantiles over a sliding windows of time.
-
-
Field Summary
Fields Modifier and Type Field Description private int
currentBucket
private long
durationBetweenRotatesMillis
private long
lastRotateTimestampMillis
private CKMSQuantiles.Quantile[]
quantiles
private CKMSQuantiles[]
ringBuffer
-
Constructor Summary
Constructors Constructor Description TimeWindowQuantiles(CKMSQuantiles.Quantile[] quantiles, long maxAgeSeconds, int ageBuckets)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
get(double q)
void
insert(double value)
private CKMSQuantiles
rotate()
-
-
-
Field Detail
-
quantiles
private final CKMSQuantiles.Quantile[] quantiles
-
ringBuffer
private final CKMSQuantiles[] ringBuffer
-
currentBucket
private int currentBucket
-
lastRotateTimestampMillis
private long lastRotateTimestampMillis
-
durationBetweenRotatesMillis
private final long durationBetweenRotatesMillis
-
-
Constructor Detail
-
TimeWindowQuantiles
public TimeWindowQuantiles(CKMSQuantiles.Quantile[] quantiles, long maxAgeSeconds, int ageBuckets)
-
-
Method Detail
-
get
public double get(double q)
-
insert
public void insert(double value)
-
rotate
private CKMSQuantiles rotate()
-
-