// Copyright 2022 The ChromiumOS Authors1// Use of this source code is governed by a BSD-style license that can be2// found in the LICENSE file.34//! This crate serves to provide metrics bindings to be used throughout the codebase.5//! For binaries that wish to use metrics, the intention is that an independent metrics6//! process will run (main loop in the controller mod), and receive requests via a tube from7//! another process.8//!9//! At head, metrics requests are ignored. However, a branching codebase can choose to implement10//! their own handler which processes and uploads metrics requests as it sees fit, by setting the11//! appropriate RequestHandler.1213mod controller;14mod local_stats;15pub mod sys;1617pub use controller::MetricsController;18pub use metrics_events::MetricEventType;19pub use metrics_product::*;2021pub type RequestHandler = MetricsRequestHandler;2223pub use local_stats::collect_scoped_byte_latency_stat;24pub use local_stats::timed_scope;25pub use local_stats::BytesLatencyStats;26pub use local_stats::CallOnDrop;27pub use local_stats::DetailedHistogram;28pub use local_stats::GetStatsForOp;29pub use local_stats::Histogram;30pub use local_stats::Limits;31pub use local_stats::NumberType;32pub use local_stats::SimpleStat;33pub use local_stats::SummaryStats;343536