pub struct RequestInfo {
pub timestamp: DateTime<Utc>,
pub client_id: String,
pub method_name: String,
pub parameters: Value,
pub response_time_ms: Option<u64>,
pub success: bool,
pub error_message: Option<String>,
pub status_code: Option<u16>,
pub metadata: HashMap<String, Value>,
}
Expand description
Request analytics information for monitoring and debugging
Fields§
§timestamp: DateTime<Utc>
Request timestamp
client_id: String
Client identifier
method_name: String
Tool or method name
parameters: Value
Request parameters (sanitized for privacy)
response_time_ms: Option<u64>
Response time in milliseconds
success: bool
Success status
error_message: Option<String>
Error message if failed
status_code: Option<u16>
HTTP status code (if applicable)
metadata: HashMap<String, Value>
Additional metadata
Implementations§
Source§impl RequestInfo
impl RequestInfo
Sourcepub fn new(client_id: String, method_name: String, parameters: Value) -> Self
pub fn new(client_id: String, method_name: String, parameters: Value) -> Self
Create a new request info
Sourcepub const fn complete_success(self, response_time_ms: u64) -> Self
pub const fn complete_success(self, response_time_ms: u64) -> Self
Mark the request as completed successfully
Sourcepub fn complete_error(self, response_time_ms: u64, error: String) -> Self
pub fn complete_error(self, response_time_ms: u64, error: String) -> Self
Mark the request as failed
Sourcepub const fn with_status_code(self, code: u16) -> Self
pub const fn with_status_code(self, code: u16) -> Self
Set HTTP status code
Sourcepub fn with_metadata(self, key: String, value: Value) -> Self
pub fn with_metadata(self, key: String, value: Value) -> Self
Add metadata
Trait Implementations§
Source§impl Clone for RequestInfo
impl Clone for RequestInfo
Source§fn clone(&self) -> RequestInfo
fn clone(&self) -> RequestInfo
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for RequestInfo
impl Debug for RequestInfo
Source§impl<'de> Deserialize<'de> for RequestInfo
impl<'de> Deserialize<'de> for RequestInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for RequestInfo
impl RefUnwindSafe for RequestInfo
impl Send for RequestInfo
impl Sync for RequestInfo
impl Unpin for RequestInfo
impl UnwindSafe for RequestInfo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more