metry 0.1.1

All-in-one telemetry framework, based on tracing crate.
Documentation
use tracing::level_filters::LevelFilter;

/// A filter comparable to a verbosity filter in [tracing] crate: [tracing::level_filters::LevelFilter].
#[derive(Debug)]
pub enum Level {
    /// The "off" level.
    ///
    /// Designates that trace instrumentation should be completely disabled.
    OFF,
    /// The "error" level.
    ///
    /// Designates very serious errors.
    ERROR,
    /// The "warn" level.
    ///
    /// Designates hazardous situations.
    WARN,
    /// The "info" level.
    ///
    /// Designates useful information.
    INFO,
    /// The "debug" level.
    ///
    /// Designates lower priority information.
    DEBUG,
    /// The "trace" level.
    ///
    /// Designates very low priority, often extremely verbose, information.
    TRACE,
}

impl From<Level> for LevelFilter {
    fn from(val: Level) -> Self {
        match val {
            Level::OFF => LevelFilter::OFF,
            Level::ERROR => LevelFilter::ERROR,
            Level::WARN => LevelFilter::WARN,
            Level::INFO => LevelFilter::INFO,
            Level::DEBUG => LevelFilter::DEBUG,
            Level::TRACE => LevelFilter::TRACE,
        }
    }
}