pub struct ErrorLogDiagnostics { /* private fields */ }Expand description
Bounded source diagnostics for privileged server-side logs.
This projection keeps only the deepest cause. Consumers that log the
boundary error’s message separately may omit an identical cause. Full
source chains remain available through ErrorSourceDiagnostics for
retained diagnostics.
Local source paths are preserved for incident response; URI-shaped paths
and credential-bearing messages remain redacted.
Implementations§
Source§impl ErrorLogDiagnostics
impl ErrorLogDiagnostics
Sourcepub fn from_error(error: &(dyn StdError + 'static)) -> Self
pub fn from_error(error: &(dyn StdError + 'static)) -> Self
Builds log diagnostics from error and all of its sources.
Each layer’s text is truncated to the log cause budget before retention,
bounding rendered message sizes across arbitrary foreign Display
implementations. A foreign implementation can still spend memory
producing its own message; that cost cannot be bounded externally.
Sourcepub fn source_path(&self) -> Option<&str>
pub fn source_path(&self) -> Option<&str>
Input path associated with the failure, when present.
Trait Implementations§
Source§impl Clone for ErrorLogDiagnostics
impl Clone for ErrorLogDiagnostics
Source§impl Debug for ErrorLogDiagnostics
impl Debug for ErrorLogDiagnostics
impl Eq for ErrorLogDiagnostics
Source§impl PartialEq for ErrorLogDiagnostics
impl PartialEq for ErrorLogDiagnostics
impl StructuralPartialEq for ErrorLogDiagnostics
Auto Trait Implementations§
impl Freeze for ErrorLogDiagnostics
impl RefUnwindSafe for ErrorLogDiagnostics
impl Send for ErrorLogDiagnostics
impl Sync for ErrorLogDiagnostics
impl Unpin for ErrorLogDiagnostics
impl UnsafeUnpin for ErrorLogDiagnostics
impl UnwindSafe for ErrorLogDiagnostics
Blanket Implementations§
impl<T> Allocation for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ⓘ
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> ⓘ
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request