HttpRequest

Struct HttpRequest 

Source
pub struct HttpRequest {
Show 15 fields pub cache_fill_bytes: Option<i64>, pub cache_hit: Option<bool>, pub cache_lookup: Option<bool>, pub cache_validated_with_origin_server: Option<bool>, pub latency: Option<Duration>, pub protocol: Option<String>, pub referer: Option<String>, pub remote_ip: Option<String>, pub request_method: Option<String>, pub request_size: Option<i64>, pub request_url: Option<String>, pub response_size: Option<i64>, pub server_ip: Option<String>, pub status: Option<i32>, pub user_agent: Option<String>,
}
Expand description

A common proto for logging HTTP requests. Only contains semantics defined by the HTTP specification. Product-specific logging information MUST be defined in a separate message.

This type is not used in any activity, and only used as part of another schema.

Fields§

§cache_fill_bytes: Option<i64>

The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.

§cache_hit: Option<bool>

Whether or not an entity was served from cache (with or without validation).

§cache_lookup: Option<bool>

Whether or not a cache lookup was attempted.

§cache_validated_with_origin_server: Option<bool>

Whether or not the response was validated with the origin server before being served from cache. This field is only meaningful if cache_hit is True.

§latency: Option<Duration>

The request processing latency on the server, from the time the request was received until the response was sent. For WebSocket connections, this field refers to the entire time duration of the connection.

§protocol: Option<String>

Protocol used for the request. Examples: “HTTP/1.1”, “HTTP/2”

§referer: Option<String>

The referer URL of the request, as defined in HTTP/1.1 Header Field Definitions (https://datatracker.ietf.org/doc/html/rfc2616#section-14.36).

§remote_ip: Option<String>

The IP address (IPv4 or IPv6) of the client that issued the HTTP request. This field can include port information. Examples: “192.168.1.1”, “10.0.0.1:80”, “FE80::0202:B3FF:FE1E:8329”.

§request_method: Option<String>

The request method. Examples: “GET”, “HEAD”, “PUT”, “POST”.

§request_size: Option<i64>

The size of the HTTP request message in bytes, including the request headers and the request body.

§request_url: Option<String>

The scheme (http, https), the host name, the path and the query portion of the URL that was requested. Example: “http://example.com/some/info?color=red”.

§response_size: Option<i64>

The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.

§server_ip: Option<String>

The IP address (IPv4 or IPv6) of the origin server that the request was sent to. This field can include port information. Examples: “192.168.1.1”, “10.0.0.1:80”, “FE80::0202:B3FF:FE1E:8329”.

§status: Option<i32>

The response code indicating the status of response. Examples: 200, 404.

§user_agent: Option<String>

The user agent sent by the client. Example: “Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)”.

Trait Implementations§

Source§

impl Clone for HttpRequest

Source§

fn clone(&self) -> HttpRequest

Returns a duplicate 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 HttpRequest

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for HttpRequest

Source§

fn default() -> HttpRequest

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for HttpRequest

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for HttpRequest

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Part for HttpRequest

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, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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, 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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,