pub trait CustomDistribution {
    // Required methods
    fn accumulate_samples_signed(&self, samples: Vec<i64>);
    fn accumulate_single_sample_signed(&self, sample: i64);
    fn test_get_value<'a, S: Into<Option<&'a str>>>(
        &self,
        ping_name: S
    ) -> Option<DistributionData>;
    fn test_get_num_recorded_errors(&self, error: ErrorType) -> i32;
}
Expand description

A description for the CustomDistributionMetric type.

When changing this trait, make sure all the operations are implemented in the related type in ../metrics/.

Required Methods§

source

fn accumulate_samples_signed(&self, samples: Vec<i64>)

Accumulates the provided signed samples in the metric.

This is required so that the platform-specific code can provide us with 64 bit signed integers if no u64 comparable type is available. This will take care of filtering and reporting errors for any provided negative sample.

Arguments
  • samples - The vector holding the samples to be recorded by the metric.
Notes

Discards any negative value in samples and report an ErrorType::InvalidValue for each of them.

source

fn accumulate_single_sample_signed(&self, sample: i64)

Accumulates precisely one signed sample in the metric.

This is required so that the platform-specific code can provide us with a 64 bit signed integer if no u64 comparable type is available. This will take care of filtering and reporting errors.

Arguments
  • sample - The singular sample to be recorded by the metric.
Notes

Discards any negative value of sample and reports an ErrorType::InvalidValue.

source

fn test_get_value<'a, S: Into<Option<&'a str>>>( &self, ping_name: S ) -> Option<DistributionData>

Exported for test purposes.

Gets the currently stored histogram.

This doesn’t clear the stored value.

Arguments
  • ping_name - represents the optional name of the ping to retrieve the metric for. Defaults to the first value in send_in_pings.
source

fn test_get_num_recorded_errors(&self, error: ErrorType) -> i32

Exported for test purposes.

Gets the number of recorded errors for the given error type.

Arguments
  • error - The type of error
Returns

The number of errors recorded.

Object Safety§

This trait is not object safe.

Implementors§