#[non_exhaustive]pub enum BuildError {
Config(ConfigError),
Metrics(String),
Io(Error),
Sink(String),
DuplicateSinkName(String),
DuplicateSeries(String),
MissingSink,
MissingChains,
AsyncContext,
}Expand description
Error assembling a pipeline (cold path, before anything runs).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Config(ConfigError)
The configuration failed to load or validate.
Metrics(String)
The metrics exporter failed to install.
Io(Error)
The I/O runtime failed to build.
Sink(String)
The sink bundle’s topology or labels are unusable.
DuplicateSinkName(String)
Pipeline::add_sink was called twice with the same name (a second
bare Pipeline::sink collides on the reserved "default" name).
DuplicateSeries(String)
Another live handle set in this process already owns a metric series
this sink would publish — a second pipeline with the same pipeline and
sink name, usually. Gauge series cannot be shared (see “Series
ownership” in docs/METRICS.md), so assembly stops here rather than
letting one of the two publish readings the other overwrites. A
pipeline rebuilt sequentially is fine: drop the old one first.
MissingSink
Pipeline::into_runtime/Pipeline::run without a sink.
MissingChains
Pipeline::into_runtime/Pipeline::run without a chain factory.
AsyncContext
The builder was constructed inside an async runtime. It owns a
blocking tokio runtime (dropping or block_on-ing one inside async
context panics), so build pipelines from a plain thread — usually
main.
Trait Implementations§
Source§impl Debug for BuildError
impl Debug for BuildError
Source§impl Display for BuildError
impl Display for BuildError
Source§impl Error for BuildError
impl Error for BuildError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()