Struct glean_core::metrics::TimespanMetric
source · [−]pub struct TimespanMetric { /* private fields */ }
Expand description
A timespan metric.
Timespans are used to make a measurement of how much time is spent in a particular task.
Implementations
sourceimpl TimespanMetric
impl TimespanMetric
sourcepub fn new(meta: CommonMetricData, time_unit: TimeUnit) -> Self
pub fn new(meta: CommonMetricData, time_unit: TimeUnit) -> Self
Creates a new timespan metric.
sourcepub fn start(&self)
pub fn start(&self)
Starts tracking time for the provided metric.
This records an error if it’s already tracking time (i.e. start was
already called with no corresponding
set_stop
): in that case the original start
time will be preserved.
sourcepub fn stop(&self)
pub fn stop(&self)
Stops tracking time for the provided metric. Sets the metric to the elapsed time.
This will record an error if no set_start
was called.
sourcepub fn set_raw(&self, elapsed: Duration)
pub fn set_raw(&self, elapsed: Duration)
Explicitly sets the timespan value.
This API should only be used if your library or application requires
recording times in a way that can not make use of
set_start
/set_stop
/cancel
.
Care should be taken using this if the ping lifetime might contain more
than one timespan measurement. To be safe,
set_raw
should generally be followed by
sending a custom ping containing the timespan.
Arguments
elapsed
- The elapsed time to record.
sourcepub fn set_raw_nanos(&self, elapsed_nanos: i64)
pub fn set_raw_nanos(&self, elapsed_nanos: i64)
Explicitly sets the timespan value in nanoseconds.
This API should only be used if your library or application requires
recording times in a way that can not make use of
set_start
/set_stop
/cancel
.
Care should be taken using this if the ping lifetime might contain more
than one timespan measurement. To be safe,
set_raw
should generally be followed by
sending a custom ping containing the timespan.
Arguments
elapsed_nanos
- The elapsed time to record, in nanoseconds.
sourcepub fn test_get_value(&self, ping_name: Option<String>) -> Option<i64>
pub fn test_get_value(&self, ping_name: Option<String>) -> Option<i64>
Test-only API (exported for FFI purposes).
Gets the currently stored value as an integer.
This doesn’t clear the stored value.
sourcepub fn test_get_num_recorded_errors(
&self,
error: ErrorType,
ping_name: Option<String>
) -> i32
pub fn test_get_num_recorded_errors(
&self,
error: ErrorType,
ping_name: Option<String>
) -> i32
Exported for test purposes.
Gets the number of recorded errors for the given metric and error type.
Arguments
error
- The type of errorping_name
- represents the optional name of the ping to retrieve the metric for. Defaults to the first value insend_in_pings
.
Returns
The number of errors reported.
Trait Implementations
sourceimpl Clone for TimespanMetric
impl Clone for TimespanMetric
sourcefn clone(&self) -> TimespanMetric
fn clone(&self) -> TimespanMetric
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for TimespanMetric
impl Debug for TimespanMetric
sourceimpl MetricType for TimespanMetric
impl MetricType for TimespanMetric
sourcefn meta(&self) -> &CommonMetricData
fn meta(&self) -> &CommonMetricData
Access the stored metadata
sourcefn with_name(&self, _name: String) -> Self where
Self: Sized,
fn with_name(&self, _name: String) -> Self where
Self: Sized,
Create a new metric from this with a new name.
sourcefn with_dynamic_label(&self, _label: String) -> Self where
Self: Sized,
fn with_dynamic_label(&self, _label: String) -> Self where
Self: Sized,
Create a new metric from this with a specific label.
sourcefn should_record(&self, glean: &Glean) -> bool
fn should_record(&self, glean: &Glean) -> bool
Whether this metric should currently be recorded Read more
Auto Trait Implementations
impl RefUnwindSafe for TimespanMetric
impl Send for TimespanMetric
impl Sync for TimespanMetric
impl Unpin for TimespanMetric
impl UnwindSafe for TimespanMetric
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more