pub struct LambdaXrayPropagator { /* private fields */ }Expand description
A custom propagator that wraps the XrayPropagator with Lambda-specific enhancements.
This propagator extends the standard X-Ray propagator to automatically extract
trace context from the Lambda _X_AMZN_TRACE_ID environment variable when no
valid context is found in the provided carrier.
§Example
use lambda_otel_lite::{init_telemetry, TelemetryConfig};
use lambda_otel_lite::propagation::LambdaXrayPropagator;
use opentelemetry::global;
use lambda_runtime::Error;
// Add the LambdaXrayPropagator
let config = TelemetryConfig::builder()
.with_named_propagator("tracecontext")
.with_named_propagator("xray-lambda")
.build();
let _ = init_telemetry(config).await?;Implementations§
Trait Implementations§
Source§impl Debug for LambdaXrayPropagator
impl Debug for LambdaXrayPropagator
Source§impl Default for LambdaXrayPropagator
impl Default for LambdaXrayPropagator
Source§fn default() -> LambdaXrayPropagator
fn default() -> LambdaXrayPropagator
Returns the “default value” for a type. Read more
Source§impl TextMapPropagator for LambdaXrayPropagator
impl TextMapPropagator for LambdaXrayPropagator
Source§fn fields(&self) -> FieldIter<'_>
fn fields(&self) -> FieldIter<'_>
Returns iter of fields used by
TextMapPropagatorSource§fn inject_context(&self, cx: &Context, injector: &mut dyn Injector)
fn inject_context(&self, cx: &Context, injector: &mut dyn Injector)
Auto Trait Implementations§
impl Freeze for LambdaXrayPropagator
impl RefUnwindSafe for LambdaXrayPropagator
impl Send for LambdaXrayPropagator
impl Sync for LambdaXrayPropagator
impl Unpin for LambdaXrayPropagator
impl UnwindSafe for LambdaXrayPropagator
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> 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