Struct SentryLayer
pub struct SentryLayer<S> { /* private fields */ }Expand description
Provides a tracing layer that dispatches events to sentry
Implementations§
§impl<S> SentryLayer<S>
impl<S> SentryLayer<S>
pub fn event_filter<F>(self, filter: F) -> SentryLayer<S>
pub fn event_filter<F>(self, filter: F) -> SentryLayer<S>
Sets a custom event filter function.
The filter classifies how sentry should handle [Event]s based
on their [Metadata].
pub fn event_mapper<F>(self, mapper: F) -> SentryLayer<S>
pub fn event_mapper<F>(self, mapper: F) -> SentryLayer<S>
Sets a custom event mapper function.
The mapper is responsible for creating either breadcrumbs or events from
[Event]s.
pub fn span_filter<F>(self, filter: F) -> SentryLayer<S>
pub fn span_filter<F>(self, filter: F) -> SentryLayer<S>
Sets a custom span filter function.
The filter classifies whether sentry should handle tracing::Spans based
on their [Metadata].
pub fn enable_span_attributes(self) -> SentryLayer<S>
pub fn enable_span_attributes(self) -> SentryLayer<S>
Enable every parent span’s attributes to be sent along with own event’s attributes.
Note that the root span is considered a transaction
so its context will only be grabbed only if you set the transaction to be sampled.
The most straightforward way to do this is to set
the traces_sample_rate to 1.0
while configuring your sentry client.
Trait Implementations§
§impl<S> Default for SentryLayer<S>where
S: Subscriber + for<'a> LookupSpan<'a>,
impl<S> Default for SentryLayer<S>where
S: Subscriber + for<'a> LookupSpan<'a>,
§fn default() -> SentryLayer<S>
fn default() -> SentryLayer<S>
§impl<S> Layer<S> for SentryLayer<S>where
S: Subscriber + for<'a> LookupSpan<'a>,
impl<S> Layer<S> for SentryLayer<S>where
S: Subscriber + for<'a> LookupSpan<'a>,
§fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, S>)
fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, S>)
When a new Span gets created, run the filter and start a new sentry span if it passes, setting it as the current sentry span.
§fn on_enter(&self, id: &Id, ctx: Context<'_, S>)
fn on_enter(&self, id: &Id, ctx: Context<'_, S>)
Sets the entered span as current sentry span.
A tracing span can be entered and exited multiple times, for example,
when using a tracing::Instrumented future.
Spans must be exited on the same thread that they are entered. The
sentry-tracing integration’s behavior is undefined if spans are
exited on threads other than the one they are entered from;
specifically, doing so will likely cause data to bleed between
[Hub]s in unexpected ways.
§fn on_exit(&self, id: &Id, ctx: Context<'_, S>)
fn on_exit(&self, id: &Id, ctx: Context<'_, S>)
Drop the current span’s [HubSwitchGuard] to restore the parent [Hub].
§fn on_close(&self, id: Id, ctx: Context<'_, S>)
fn on_close(&self, id: Id, ctx: Context<'_, S>)
When a span gets closed, finish the underlying sentry span, and set back its parent as the current sentry span.
§fn on_record(&self, span: &Id, values: &Record<'_>, ctx: Context<'_, S>)
fn on_record(&self, span: &Id, values: &Record<'_>, ctx: Context<'_, S>)
Implement the writing of extra data to span
§fn on_event(&self, event: &Event<'_>, ctx: Context<'_, S>)
fn on_event(&self, event: &Event<'_>, ctx: Context<'_, S>)
§fn on_register_dispatch(&self, subscriber: &Dispatch)
fn on_register_dispatch(&self, subscriber: &Dispatch)
Subscriber. Read more§fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest
fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest
Subscriber::register_callsite. Read more§fn enabled(&self, metadata: &Metadata<'_>, ctx: Context<'_, S>) -> bool
fn enabled(&self, metadata: &Metadata<'_>, ctx: Context<'_, S>) -> bool
true if this layer is interested in a span or event with the
given metadata in the current [Context], similarly to
Subscriber::enabled. Read more§fn on_follows_from(&self, _span: &Id, _follows: &Id, _ctx: Context<'_, S>)
fn on_follows_from(&self, _span: &Id, _follows: &Id, _ctx: Context<'_, S>)
span recorded that it
follows from the span with the ID follows.§fn event_enabled(&self, _event: &Event<'_>, _ctx: Context<'_, S>) -> bool
fn event_enabled(&self, _event: &Event<'_>, _ctx: Context<'_, S>) -> bool
§fn on_id_change(&self, _old: &Id, _new: &Id, _ctx: Context<'_, S>)
fn on_id_change(&self, _old: &Id, _new: &Id, _ctx: Context<'_, S>)
§fn and_then<L>(self, layer: L) -> Layered<L, Self, S>where
L: Layer<S>,
Self: Sized,
fn and_then<L>(self, layer: L) -> Layered<L, Self, S>where
L: Layer<S>,
Self: Sized,
Layer, returning a Layered
struct implementing Layer. Read more§fn with_subscriber(self, inner: S) -> Layered<Self, S>where
Self: Sized,
fn with_subscriber(self, inner: S) -> Layered<Self, S>where
Self: Sized,
Layer with the given Subscriber, returning a
Layered struct that implements Subscriber. Read more