pub struct TelemetryLog;Expand description
Emit a structured log line for every request via the tracing crate.
Fields: trace_id, span_id, method, path, status, duration_ms.
Level is chosen by status: error (5xx), warn (4xx), info (2xx/3xx).
When ArclyObservabilityPlugin is active, these log lines are formatted as
JSON and emitted to stdout. Without the plugin, they use tracing’s default
formatter. For full OTLP traces + Prometheus metrics use TraceInterceptor.
Trait Implementations§
Source§impl Interceptor for TelemetryLog
impl Interceptor for TelemetryLog
fn around( &'static self, ctx: RequestContext, next: NextHandler, ) -> BoxFuture<'static, Response>
Auto Trait Implementations§
impl Freeze for TelemetryLog
impl RefUnwindSafe for TelemetryLog
impl Send for TelemetryLog
impl Sync for TelemetryLog
impl Unpin for TelemetryLog
impl UnsafeUnpin for TelemetryLog
impl UnwindSafe for TelemetryLog
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request