Struct opentelemetry::metrics::AsyncInstrumentBuilder

source ·
#[non_exhaustive]
pub struct AsyncInstrumentBuilder<'a, I, M> { pub instrument_provider: &'a dyn InstrumentProvider, pub name: Cow<'static, str>, pub description: Option<Cow<'static, str>>, pub unit: Option<Cow<'static, str>>, pub callbacks: Vec<Callback<M>>, /* private fields */ }
Expand description

Configuration for building an async instrument.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§instrument_provider: &'a dyn InstrumentProvider

Instrument provider is used to create the instrument.

§name: Cow<'static, str>

Name of the instrument.

§description: Option<Cow<'static, str>>

Description of the instrument.

§unit: Option<Cow<'static, str>>

Unit of the instrument.

§callbacks: Vec<Callback<M>>

Callbacks to be called for this instrument.

Implementations§

source§

impl<'a, I, M> AsyncInstrumentBuilder<'a, I, M>

source

pub fn with_description<S: Into<Cow<'static, str>>>( self, description: S, ) -> Self

Set the description for this instrument

source

pub fn with_unit<S: Into<Cow<'static, str>>>(self, unit: S) -> Self

Set the unit for this instrument.

Unit is case sensitive(kb is not the same as kB).

Unit must be:

  • ASCII string
  • No longer than 63 characters
source

pub fn with_callback<F>(self, callback: F) -> Self
where F: Fn(&dyn AsyncInstrument<M>) + Send + Sync + 'static,

Set the callback to be called for this instrument.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableCounter<u64>, u64>

source

pub fn build(self) -> ObservableCounter<u64>

Validates the instrument configuration and creates a new ObservableCounter<u64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableCounter<f64>, f64>

source

pub fn build(self) -> ObservableCounter<f64>

Validates the instrument configuration and creates a new ObservableCounter<f64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableGauge<u64>, u64>

source

pub fn build(self) -> ObservableGauge<u64>

Validates the instrument configuration and creates a new ObservableGauge<u64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableGauge<f64>, f64>

source

pub fn build(self) -> ObservableGauge<f64>

Validates the instrument configuration and creates a new ObservableGauge<f64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableGauge<i64>, i64>

source

pub fn build(self) -> ObservableGauge<i64>

Validates the instrument configuration and creates a new ObservableGauge<i64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableUpDownCounter<i64>, i64>

source

pub fn build(self) -> ObservableUpDownCounter<i64>

Validates the instrument configuration and creates a new ObservableUpDownCounter<i64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

source§

impl<'a> AsyncInstrumentBuilder<'a, ObservableUpDownCounter<f64>, f64>

source

pub fn build(self) -> ObservableUpDownCounter<f64>

Validates the instrument configuration and creates a new ObservableUpDownCounter<f64>. In case of invalid configuration, a no-op instrument is returned and an error is logged using internal logging.

Trait Implementations§

source§

impl<I, M> Debug for AsyncInstrumentBuilder<'_, I, M>
where I: AsyncInstrument<M>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a, I, M> Freeze for AsyncInstrumentBuilder<'a, I, M>

§

impl<'a, I, M> !RefUnwindSafe for AsyncInstrumentBuilder<'a, I, M>

§

impl<'a, I, M> !Send for AsyncInstrumentBuilder<'a, I, M>

§

impl<'a, I, M> !Sync for AsyncInstrumentBuilder<'a, I, M>

§

impl<'a, I, M> Unpin for AsyncInstrumentBuilder<'a, I, M>
where I: Unpin,

§

impl<'a, I, M> !UnwindSafe for AsyncInstrumentBuilder<'a, I, M>

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> FutureExt for T

source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
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>,

source§

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>,

source§

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.