C# Class Jellyfish.Commands.Metrics.RollingPercentileNumber

Afficher le fichier Open project: Zenasoft/Jellyfish.Commands Class Usage Examples

Private Properties

Свойство Type Description
GetBuckets IEnumerable
GetCurrentBucket Bucket
RollingPercentileNumber Jellyfish.Commands.Utils

Méthodes publiques

Méthode Description
AddValue ( int value ) : void
GetPercentile ( double percentile ) : int

Compute a percentile from the underlying rolling buckets of values.

For performance reasons it maintains a single snapshot of the sorted values from all buckets that is re-generated each time the bucket rotates.

This means that if a bucket is 5000ms, then this method will re-compute a percentile at most once every 5000ms. value such as 99 (99th percentile), 99.5 (99.5th percentile), 50 (median, 50th percentile) to compute and retrieve percentile from rolling buckets. percentile value

RollingPercentileNumber ( int timeInMs, int numberOfBuckets, int dataLength, IDynamicProperty enabled ) : Jellyfish.Commands.Utils

Private Methods

Méthode Description
GetBuckets ( long startWindowTime ) : IEnumerable

Returns all bucket in reverse order (most recent first)

GetCurrentBucket ( ) : Bucket
RollingPercentileNumber ( IClock clock, int timeInMs, int numberOfBuckets, int dataLength, IDynamicProperty enabled ) : Jellyfish.Commands.Utils

Method Details

AddValue() public méthode

public AddValue ( int value ) : void
value int
Résultat void

GetPercentile() public méthode

Compute a percentile from the underlying rolling buckets of values.

For performance reasons it maintains a single snapshot of the sorted values from all buckets that is re-generated each time the bucket rotates.

This means that if a bucket is 5000ms, then this method will re-compute a percentile at most once every 5000ms. value such as 99 (99th percentile), 99.5 (99.5th percentile), 50 (median, 50th percentile) to compute and retrieve percentile from rolling buckets. percentile value
public GetPercentile ( double percentile ) : int
percentile double
Résultat int

RollingPercentileNumber() public méthode

public RollingPercentileNumber ( int timeInMs, int numberOfBuckets, int dataLength, IDynamicProperty enabled ) : Jellyfish.Commands.Utils
timeInMs int
numberOfBuckets int
dataLength int
enabled IDynamicProperty
Résultat Jellyfish.Commands.Utils