rama::telemetry::opentelemetry::sdk::runtime

Trait RuntimeChannel

pub trait RuntimeChannel: Runtime {
    type Receiver<T: Debug + Send>: Stream<Item = T> + Send;
    type Sender<T: Debug + Send>: TrySend<Message = T> + Debug;

    // Required method
    fn batch_message_channel<T>(
        &self,
        capacity: usize,
    ) -> (Self::Sender<T>, Self::Receiver<T>)
       where T: Debug + Send;
}
Expand description

RuntimeChannel is an extension to Runtime. Currently, it provides a channel that is used by the log and span batch processors.

Required Associated Types§

type Receiver<T: Debug + Send>: Stream<Item = T> + Send

A future stream to receive batch messages from channels.

type Sender<T: Debug + Send>: TrySend<Message = T> + Debug

A batch messages sender that can be sent across threads safely.

Required Methods§

fn batch_message_channel<T>( &self, capacity: usize, ) -> (Self::Sender<T>, Self::Receiver<T>)
where T: Debug + Send,

Return the sender and receiver used to send batch messages.

Object Safety§

This trait is not object safe.

Implementors§

§

impl RuntimeChannel for Tokio

§

type Receiver<T: Debug + Send> = ReceiverStream<T>

§

type Sender<T: Debug + Send> = Sender<T>