public final class AdaptiveTelemetrySampler extends java.lang.Object implements Stoppable, TelemetrySampler
FixedRateTelemetrySampler for doing the actual sampling and a timer for re-evaluating the sampling percentage.
Created by gupele on 11/9/2016.| Constructor and Description |
|---|
AdaptiveTelemetrySampler() |
| Modifier and Type | Method and Description |
|---|---|
java.util.Set<java.lang.Class> |
getExcludeTypes() |
java.util.Set<java.lang.Class> |
getIncludeTypes() |
java.lang.Double |
getSamplingPercentage() |
void |
initialize(java.lang.String maxTelemetriesPerSecond,
java.lang.String evaluationIntervalInSeconds,
java.lang.String samplingPercentageDecreaseTimeoutInSeconds,
java.lang.String samplingPercentageIncreaseTimeoutInSeconds,
java.lang.String minSamplingPercentage,
java.lang.String maxSamplingPercentage,
java.lang.String initialSamplingPercentage,
java.lang.String movingAverageRatio)
This method must be called prior to any use of the instance
|
boolean |
isSampledIn(Telemetry telemetry) |
void |
setExcludeTypes(java.lang.String types) |
void |
setIncludeTypes(java.lang.String types) |
void |
setSamplingPercentage(java.lang.Double samplingPercentage) |
void |
stop(long timeout,
java.util.concurrent.TimeUnit timeUnit) |
public void stop(long timeout,
java.util.concurrent.TimeUnit timeUnit)
public void initialize(java.lang.String maxTelemetriesPerSecond,
java.lang.String evaluationIntervalInSeconds,
java.lang.String samplingPercentageDecreaseTimeoutInSeconds,
java.lang.String samplingPercentageIncreaseTimeoutInSeconds,
java.lang.String minSamplingPercentage,
java.lang.String maxSamplingPercentage,
java.lang.String initialSamplingPercentage,
java.lang.String movingAverageRatio)
maxTelemetriesPerSecond - maxTelemetriesPerSecondevaluationIntervalInSeconds - evaluationIntervalInSecondssamplingPercentageDecreaseTimeoutInSeconds - samplingPercentageDecreaseTimeoutInSecondssamplingPercentageIncreaseTimeoutInSeconds - samplingPercentageIncreaseTimeoutInSecondsminSamplingPercentage - minSamplingPercentagemaxSamplingPercentage - maxSamplingPercentageinitialSamplingPercentage - initialSamplingPercentagemovingAverageRatio - movingAverageRatiopublic java.util.Set<java.lang.Class> getExcludeTypes()
getExcludeTypes in interface TelemetrySamplerpublic void setExcludeTypes(java.lang.String types)
setExcludeTypes in interface TelemetrySamplerpublic java.util.Set<java.lang.Class> getIncludeTypes()
getIncludeTypes in interface TelemetrySamplerpublic void setIncludeTypes(java.lang.String types)
setIncludeTypes in interface TelemetrySamplerpublic java.lang.Double getSamplingPercentage()
getSamplingPercentage in interface TelemetrySamplerpublic void setSamplingPercentage(java.lang.Double samplingPercentage)
setSamplingPercentage in interface TelemetrySamplerpublic boolean isSampledIn(Telemetry telemetry)
isSampledIn in interface TelemetrySampler