Class DataSketchesOpStatsLogger
- java.lang.Object
-
- org.apache.bookkeeper.stats.prometheus.DataSketchesOpStatsLogger
-
- All Implemented Interfaces:
OpStatsLogger
public class DataSketchesOpStatsLogger extends java.lang.Object implements OpStatsLogger
OpStatsLogger implementation that uses DataSketches library to calculate the approximated latency quantiles.
-
-
Constructor Summary
Constructors Constructor Description DataSketchesOpStatsLogger(java.util.Map<java.lang.String,java.lang.String> labels)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Clear stats for this operation.long
getCount(boolean success)
java.util.Map<java.lang.String,java.lang.String>
getLabels()
double
getQuantileValue(boolean success, double quantile)
long
getSum(boolean success)
void
initializeThread(java.util.Map<java.lang.String,java.lang.String> labels)
boolean
isThreadInitialized()
void
registerFailedEvent(long eventLatency, java.util.concurrent.TimeUnit unit)
Increment the failed op counter with the given eventLatency.void
registerFailedValue(long value)
An operation with the given value failed.void
registerSuccessfulEvent(long eventLatency, java.util.concurrent.TimeUnit unit)
An operation succeeded with the given eventLatency.void
registerSuccessfulValue(long value)
An operation with the given value succeeded.void
rotateLatencyCollection()
OpStatsData
toOpStatsData()
java.lang.String
toString()
-
-
-
Method Detail
-
registerFailedEvent
public void registerFailedEvent(long eventLatency, java.util.concurrent.TimeUnit unit)
Description copied from interface:OpStatsLogger
Increment the failed op counter with the given eventLatency.- Specified by:
registerFailedEvent
in interfaceOpStatsLogger
- Parameters:
eventLatency
- The event latency
-
registerSuccessfulEvent
public void registerSuccessfulEvent(long eventLatency, java.util.concurrent.TimeUnit unit)
Description copied from interface:OpStatsLogger
An operation succeeded with the given eventLatency. Update stats to reflect the same- Specified by:
registerSuccessfulEvent
in interfaceOpStatsLogger
- Parameters:
eventLatency
- The event latency
-
registerSuccessfulValue
public void registerSuccessfulValue(long value)
Description copied from interface:OpStatsLogger
An operation with the given value succeeded.- Specified by:
registerSuccessfulValue
in interfaceOpStatsLogger
-
registerFailedValue
public void registerFailedValue(long value)
Description copied from interface:OpStatsLogger
An operation with the given value failed.- Specified by:
registerFailedValue
in interfaceOpStatsLogger
-
toOpStatsData
public OpStatsData toOpStatsData()
- Specified by:
toOpStatsData
in interfaceOpStatsLogger
- Returns:
- Returns an OpStatsData object with necessary values. We need this function to support JMX exports. This should be deprecated sometime in the near future. populated.
-
clear
public void clear()
Description copied from interface:OpStatsLogger
Clear stats for this operation.- Specified by:
clear
in interfaceOpStatsLogger
-
rotateLatencyCollection
public void rotateLatencyCollection()
-
getCount
public long getCount(boolean success)
-
getSum
public long getSum(boolean success)
-
getQuantileValue
public double getQuantileValue(boolean success, double quantile)
-
getLabels
public java.util.Map<java.lang.String,java.lang.String> getLabels()
-
isThreadInitialized
public boolean isThreadInitialized()
-
initializeThread
public void initializeThread(java.util.Map<java.lang.String,java.lang.String> labels)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-