scouter-observability 0.25.0

Scouter observability logic
Documentation
use pyo3::PyErr;
use thiserror::Error;

#[derive(Error, Debug)]
pub enum ObservabilityError {
    #[error("Route not found {0}")]
    RouteNotFound(String),

    #[error("Failed to update route metrics: {0}")]
    UpdateMetricsError(String),

    #[error("Failed to compute quantiles: {0}")]
    QuantileError(String),

    #[error("Failed to collect metrics: {0}")]
    CollectMetricsError(String),
}

impl From<ObservabilityError> for PyErr {
    fn from(err: ObservabilityError) -> PyErr {
        pyo3::exceptions::PyRuntimeError::new_err(err.to_string())
    }
}