#![forbid(unsafe_code)]
#![warn(rust_2024_compatibility, missing_docs, missing_debug_implementations)]
mod backpressure;
mod batch;
mod env_config;
#[cfg(feature = "grpc")]
mod grpc;
pub mod logs;
mod mapping;
pub mod metrics;
mod sink;
pub mod traces;
pub use env_config::{OtlpEndpoint, OtlpProtocol, OtlpResourceAttrs, otlp_trio_from_env};
#[cfg(feature = "grpc")]
pub use grpc::GrpcOtlpExporter;
pub use mapping::{LogRecord, MetricPoint, ResourceMessage, SpanRecord};
pub use sink::{
OtlpExporter, OtlpLogSink, OtlpLogSinkBuilder, OtlpMetricSink, OtlpMetricSinkBuilder,
OtlpRetry, OtlpTraceSink, OtlpTraceSinkBuilder, StdoutDebugExporter,
};
#[cfg(feature = "grpc")]
pub mod test {
pub use crate::mock_collector::*;
}
#[cfg(feature = "grpc")]
mod mock_collector;
#[derive(Debug, thiserror::Error)]
#[non_exhaustive]
pub enum OtlpError {
#[error("transport failure: {0}")]
Transport(String),
#[error("configuration error: {0}")]
Config(String),
#[error("retry queue full")]
RetryQueueFull,
}