pub struct OperationProfile {
pub operation: String,
pub count: u64,
pub total_duration_us: u64,
pub min_duration_us: u64,
pub max_duration_us: u64,
pub total_db_queries: u64,
pub avg_complexity: f64,
pub cache_hit_rate: f64,
}Expand description
Performance profile for a specific operation type.
Fields§
§operation: StringOperation name (e.g., “GetUser”, “ListProducts”)
count: u64Total execution count
total_duration_us: u64Total execution time (microseconds)
min_duration_us: u64Minimum execution time
max_duration_us: u64Maximum execution time
total_db_queries: u64Total database query count
avg_complexity: f64Average complexity
cache_hit_rate: f64Cache hit rate (0.0-1.0)
Implementations§
Source§impl OperationProfile
impl OperationProfile
Sourcepub fn avg_duration_ms(&self) -> f64
pub fn avg_duration_ms(&self) -> f64
Calculate average duration in milliseconds.
Sourcepub fn avg_db_queries(&self) -> f64
pub fn avg_db_queries(&self) -> f64
Calculate average database queries per operation.
Trait Implementations§
Source§impl Clone for OperationProfile
impl Clone for OperationProfile
Source§fn clone(&self) -> OperationProfile
fn clone(&self) -> OperationProfile
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 moreAuto Trait Implementations§
impl Freeze for OperationProfile
impl RefUnwindSafe for OperationProfile
impl Send for OperationProfile
impl Sync for OperationProfile
impl Unpin for OperationProfile
impl UnwindSafe for OperationProfile
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request