use thiserror::Error; #[derive(Debug, Error)] pub enum ObsError { #[error("otlp exporter build failed: {0}")] Exporter(String), #[error("metrics recorder install failed: {0}")] Metrics(String), #[error("invalid log filter: {0}")] Filter(String), } impl From for ObsError { fn from(e: opentelemetry_otlp::ExporterBuildError) -> Self { ObsError::Exporter(e.to_string()) } }