// Metrics module for Foxhunt HFT Trading System
//
// Provides Prometheus-based metrics collection with a global registry
// and helper functions for all services.

pub mod grpc_metrics;
#[cfg(feature = "questdb")]
pub mod questdb_sink;
pub mod registry;
pub mod server;
pub mod training_metrics;

// Re-export commonly used functions
pub use registry::{
    dec_gauge, gather_metrics, get_counter_value, get_gauge_value, inc_gauge, increment_counter,
    increment_counter_vec, observe_histogram, observe_histogram_vec,
    register_counter, register_counter_vec, register_gauge,
    register_gauge_vec, register_histogram, register_histogram_vec,
    set_gauge, set_gauge_vec, REGISTRY,
};

pub use grpc_metrics::{init_grpc_metrics, GrpcMetricsLayer};

#[cfg(test)]
mod tests;
