Trait glean::traits::TimingDistribution
source · [−]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>(&self, ping_name: S) -> Option<DistributionData>
where
S: Into<Option<&'a str>>;
fn test_get_num_recorded_errors<'a, S>(
&self,
error: ErrorType,
ping_name: S
) -> i32
where
S: Into<Option<&'a str>>;
}
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
fn stop_and_accumulate(&self, id: TimerId)
fn stop_and_accumulate(&self, id: TimerId)
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
- TheTimerId
to associate with this timing. This allows for concurrent timing of events associated with different ids to the same timespan metric.
fn test_get_value<'a, S>(&self, ping_name: S) -> Option<DistributionData> where
S: Into<Option<&'a str>>,
fn test_get_value<'a, S>(&self, ping_name: S) -> Option<DistributionData> where
S: Into<Option<&'a str>>,
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 insend_in_pings
.