pub struct OtelGuard(/* private fields */);Expand description
Drop guard for the Otel provider. This will shutdown the provider when
dropped, and generally should be held for the lifetime of the main
function.
use init4_bin_base::utils::from_env::FromEnv;
fn main() {
let cfg = OtelConfig::from_env().unwrap();
let guard = cfg.provider();
// do stuff
// drop the guard when the program is done
}Implementations§
Source§impl OtelGuard
impl OtelGuard
Sourcepub fn layer<S>(&self) -> impl Layer<S>where
S: Subscriber + for<'span> LookupSpan<'span>,
pub fn layer<S>(&self) -> impl Layer<S>where
S: Subscriber + for<'span> LookupSpan<'span>,
Create a filtered tracing layer.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for OtelGuard
impl !RefUnwindSafe for OtelGuard
impl Send for OtelGuard
impl Sync for OtelGuard
impl Unpin for OtelGuard
impl !UnwindSafe for OtelGuard
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.