summaryrefslogtreecommitdiff
path: root/vendor/tokio/src/runtime/metrics/mod.rs
blob: b2772f1842adb393f99381e234b17960f611827a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//! This module contains information need to view information about how the
//! runtime is performing.
//!
//! **Note**: This is an [unstable API][unstable]. The public API of types in
//! this module may break in 1.x releases. See [the documentation on unstable
//! features][unstable] for details.
//!
//! [unstable]: crate#unstable-features
#![allow(clippy::module_inception)]

mod runtime;
pub use runtime::RuntimeMetrics;

mod batch;
pub(crate) use batch::MetricsBatch;

mod worker;
pub(crate) use worker::WorkerMetrics;

cfg_unstable_metrics! {

    mod histogram;
    pub(crate) use histogram::{Histogram, HistogramBatch, HistogramBuilder};

    #[allow(unreachable_pub)] // rust-lang/rust#57411
    pub use histogram::{HistogramScale, HistogramConfiguration, LogHistogram, LogHistogramBuilder, InvalidHistogramConfiguration};

    mod scheduler;
    pub(crate) use scheduler::SchedulerMetrics;

    cfg_net! {
        mod io;
        pub(crate) use io::IoDriverMetrics;
    }
}

cfg_not_unstable_metrics! {
    mod mock;
    pub(crate) use mock::{SchedulerMetrics, HistogramBuilder};
}