pub(crate) mod layer;
pub(crate) mod span_ext;
pub(crate) mod tracer;
pub(crate) use layer::OpenTelemetryLayer;
pub(crate) use layer::layer;
use opentelemetry::Key;
use opentelemetry::Value;
pub(crate) use span_ext::OpenTelemetrySpanExt;
pub(crate) use tracer::PreSampledTracer;
#[derive(Debug, Clone, Default)]
pub(crate) struct OtelData {
pub(crate) parent_cx: opentelemetry::Context,
pub(crate) builder: opentelemetry::trace::SpanBuilder,
#[cfg(not(test))]
pub(crate) event_attributes: Option<ahash::HashMap<Key, Value>>,
#[cfg(test)]
pub(crate) event_attributes: Option<indexmap::IndexMap<Key, Value>>,
pub(crate) forced_status: Option<opentelemetry::trace::Status>,
pub(crate) forced_span_name: Option<String>,
}