Struct TestExporter

pub struct TestExporter {
    pub spans: Arc<Mutex<Vec<InstanceMessage<'static>>>>,
}
Expand description

An exporter for testing that stores all telemetry messages in memory.

This exporter is useful for unit tests and integration tests where you need to verify that specific telemetry messages were generated.

Fields§

§spans: Arc<Mutex<Vec<InstanceMessage<'static>>>>

Shared vector storing all exported telemetry messages

Implementations§

§

impl TestExporter

pub fn new() -> (TestExporter, Arc<Mutex<Vec<InstanceMessage<'static>>>>)

Creates a new test exporter and returns both the exporter and a handle to the message storage.

The returned tuple contains the exporter and a shared reference to the vector where all telemetry messages will be stored.

§Examples
use veecle_telemetry::collector::TestExporter;

let (exporter, messages) = TestExporter::new();
// Use exporter for telemetry collection
// Check messages for verification

Trait Implementations§

§

impl Debug for TestExporter

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Export for TestExporter

§

fn export(&self, message: InstanceMessage<'_>)

Exports a telemetry message. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V