Trait glean_core::traits::TimingDistribution[][src]

pub trait TimingDistribution {
    fn start(&self) -> TimerId;
fn stop_and_accumulate(&self, id: TimerId);
fn cancel(&self, id: TimerId);
fn test_get_value<'a, S: Into<Option<&'a str>>>(
        &self,
        ping_name: S
    ) -> Option<DistributionData>;
fn test_get_num_recorded_errors<'a, S: Into<Option<&'a str>>>(
        &self,
        error: ErrorType,
        ping_name: S
    ) -> i32; }
Expand description

A description for the TimingDistributionMetric type.

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

Required methods

Start tracking time for the provided metric. Multiple timers can run simultaneously.

Returns

A unique TimerId for the new timer.

Stops tracking time for the provided metric and associated timer id.

Adds a count to the corresponding bucket in the timing distribution. This will record an error if no start was called.

Arguments

  • id - The TimerId to associate with this timing. This allows for concurrent timing of events associated with different ids to the same timespan metric.

Aborts a previous start call. No error is recorded if no start was called.

Arguments

  • id - The TimerId to associate with this timing. This allows for concurrent timing of events associated with different ids to the same timing distribution metric.

Exported for test purposes.

Gets the currently stored value of the metric.

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.

Exported for test purposes.

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

Arguments

  • error - The type of error
  • ping_name - represents the optional name of the ping to retrieve the metric for. Defaults to the first value in send_in_pings.

Returns

The number of errors recorded.

Implementors