isahc

Struct Metrics

Source
pub struct Metrics { /* private fields */ }
Expand description

An object that holds status updates and progress statistics on a particular request. A Metrics can be shared between threads, which allows an agent thread to post updates to the object while consumers can read from the object simultaneously.

Reading stats is not always guaranteed to be up-to-date.

Implementations§

Source§

impl Metrics

Source

pub fn upload_progress(&self) -> (u64, u64)

Number of bytes uploaded / estimated total.

Source

pub fn upload_speed(&self) -> f64

Average upload speed so far in bytes/second.

Source

pub fn download_progress(&self) -> (u64, u64)

Number of bytes downloaded / estimated total.

Source

pub fn download_speed(&self) -> f64

Average download speed so far in bytes/second.

Source

pub fn name_lookup_time(&self) -> Duration

Get the total time from the start of the request until DNS name resolving was completed.

When a redirect is followed, the time from each request is added together.

Source

pub fn connect_time(&self) -> Duration

Get the amount of time taken to establish a connection to the server (not including TLS connection time).

When a redirect is followed, the time from each request is added together.

Source

pub fn secure_connect_time(&self) -> Duration

Get the amount of time spent on TLS handshakes.

When a redirect is followed, the time from each request is added together.

Source

pub fn transfer_start_time(&self) -> Duration

Get the time it took from the start of the request until the first byte is either sent or received.

When a redirect is followed, the time from each request is added together.

Source

pub fn transfer_time(&self) -> Duration

Get the amount of time spent performing the actual request transfer. The “transfer” includes both sending the request and receiving the response.

When a redirect is followed, the time from each request is added together.

Source

pub fn total_time(&self) -> Duration

Get the total time for the entire request. This will continuously increase until the entire response body is consumed and completed.

When a redirect is followed, the time from each request is added together.

Source

pub fn redirect_time(&self) -> Duration

If automatic redirect following is enabled, gets the total time taken for all redirection steps including name lookup, connect, pretransfer and transfer before final transaction was started.

Trait Implementations§

Source§

impl Clone for Metrics

Source§

fn clone(&self) -> Metrics

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Metrics

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T