Struct metriken::Metrics

source ·
pub struct Metrics { /* private fields */ }
Expand description

Provides access to all registered metrics both static and dynamic.

IMPORTANT: Note that while any instance of this struct is live attempting to register or unregister any dynamic metrics will block. If this is done on the same thread as is currently working with an instance of Metrics then it will cause a deadlock. If your application will be registering and unregistering dynamic metrics then you should avoid holding on to Metrics instances for long periods of time.

Metrics instances can be created via the metrics function.

Implementations§

source§

impl Metrics

source

pub fn static_metrics(&self) -> &'static [MetricEntry]

A list containing all metrics that were registered via the [metric] attribute macro.

Note that the entries may be in any order and that this order may change depending on compiler settings and the linker you are using.

source

pub fn dynamic_metrics(&self) -> DynMetricsIter<'_>

A list containing all metrics that were dynamically registered.

source

pub fn iter(&self) -> MetricsIter<'_>

Trait Implementations§

source§

impl<'a> IntoIterator for &'a Metrics

§

type Item = &'a MetricEntry

The type of the elements being iterated over.
§

type IntoIter = MetricsIter<'a>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> <&'a Metrics as IntoIterator>::IntoIter

Creates an iterator from a value. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.