Struct sentry_core::cadence::SentryMetricSink

source ·
pub struct SentryMetricSink<S = NopMetricSink> { /* private fields */ }
Expand description

A MetricSink that sends metrics to Sentry.

This metric sends all metrics to Sentry. The Sentry client is internally buffered, so submission will be delayed.

Optionally, this sink can also forward metrics to another MetricSink. This is useful if you want to send metrics to Sentry and another backend at the same time. Use SentryMetricSink::wrap to construct such a sink.

Implementations§

source§

impl<S> SentryMetricSink<S>
where S: MetricSink,

source

pub fn wrap(sink: S) -> Self

Creates a new SentryMetricSink, wrapping the given MetricSink.

source

pub fn with_client(self, client: Arc<Client>) -> Self

Creates a new SentryMetricSink sending data to the given Client.

source§

impl SentryMetricSink

source

pub fn new() -> Self

Creates a new SentryMetricSink.

It is not required that a client is available when this sink is created. The sink sends metrics to the client of the Sentry hub that is registered when the metrics are emitted.

Trait Implementations§

source§

impl<S: Debug> Debug for SentryMetricSink<S>

source§

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

Formats the value using the given formatter. Read more
source§

impl Default for SentryMetricSink

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl MetricSink for SentryMetricSink

source§

fn emit(&self, string: &str) -> Result<usize>

Send the Statsd metric using this sink and return the number of bytes written or an I/O error. Read more
source§

fn flush(&self) -> Result<()>

Flush any currently buffered metrics to the underlying backend, returning an I/O error if they could not be written for some reason. Read more
source§

fn stats(&self) -> SinkStats

Return I/O telemetry like bytes / packets sent or dropped. Read more

Auto Trait Implementations§

§

impl<S> Freeze for SentryMetricSink<S>
where S: Freeze,

§

impl<S> RefUnwindSafe for SentryMetricSink<S>
where S: RefUnwindSafe,

§

impl<S> Send for SentryMetricSink<S>
where S: Send,

§

impl<S> Sync for SentryMetricSink<S>
where S: Sync,

§

impl<S> Unpin for SentryMetricSink<S>
where S: Unpin,

§

impl<S> UnwindSafe for SentryMetricSink<S>
where S: UnwindSafe,

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.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V