Struct tower_http::metrics::in_flight_requests::InFlightRequestsCounter [−][src]
pub struct InFlightRequestsCounter { /* fields omitted */ }metrics only.Expand description
An atomic counter that keeps track of the number of in-flight requests.
This will normally combined with InFlightRequestsLayer or InFlightRequests which will
update the counter as requests arrive.
Implementations
impl InFlightRequestsCounter[src]
impl InFlightRequestsCounter[src]pub async fn run_emitter<F, Fut>(self, interval: Duration, emit: F) where
F: FnMut(usize) -> Fut + Send + 'static,
Fut: Future<Output = ()> + Send, [src]
pub async fn run_emitter<F, Fut>(self, interval: Duration, emit: F) where
F: FnMut(usize) -> Fut + Send + 'static,
Fut: Future<Output = ()> + Send, [src]Run a future every interval which receives the current number of in-flight requests.
This can be used to send the current count to your metrics system.
This function will loop forever so normally it is called with tokio::spawn:
use tower_http::metrics::in_flight_requests::InFlightRequestsCounter; use std::time::Duration; let counter = InFlightRequestsCounter::new(); tokio::spawn( counter.run_emitter(Duration::from_secs(10), |count: usize| async move { // Send `count` to metrics system. }), );
Trait Implementations
impl Clone for InFlightRequestsCounter[src]
impl Clone for InFlightRequestsCounter[src]fn clone(&self) -> InFlightRequestsCounter[src]
fn clone(&self) -> InFlightRequestsCounter[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]Performs copy-assignment from source. Read more
impl Debug for InFlightRequestsCounter[src]
impl Debug for InFlightRequestsCounter[src]impl Default for InFlightRequestsCounter[src]
impl Default for InFlightRequestsCounter[src]fn default() -> InFlightRequestsCounter[src]
fn default() -> InFlightRequestsCounter[src]Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for InFlightRequestsCounter
impl Send for InFlightRequestsCounter
impl Sync for InFlightRequestsCounter
impl Unpin for InFlightRequestsCounter
impl UnwindSafe for InFlightRequestsCounter
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> Instrument for T[src]
impl<T> Instrument for T[src]fn instrument(self, span: Span) -> Instrumented<Self>[src]
fn instrument(self, span: Span) -> Instrumented<Self>[src]Instruments this type with the provided Span, returning an
Instrumented wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>[src]
fn in_current_span(self) -> Instrumented<Self>[src]impl<T> PolicyExt for T where
T: ?Sized, [src]
impl<T> PolicyExt for T where
T: ?Sized, [src]impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more