pub struct QueryAnalysis {
pub query: String,
pub avg_time_ms: f64,
pub total_time_ms: f64,
pub calls: i64,
pub avg_rows: f64,
pub issues: Vec<PerformanceIssue>,
pub suggestions: Vec<OptimizationSuggestion>,
pub performance_score: u8,
pub analyzed_at: DateTime<Utc>,
}Expand description
Query performance analysis result
Fields§
§query: StringQuery text (normalized)
avg_time_ms: f64Average execution time in milliseconds
total_time_ms: f64Total execution time in milliseconds
calls: i64Number of calls
avg_rows: f64Average rows returned
issues: Vec<PerformanceIssue>Identified performance issues
suggestions: Vec<OptimizationSuggestion>Optimization suggestions
performance_score: u8Overall performance score (0-100, higher is better)
analyzed_at: DateTime<Utc>When this analysis was performed
Implementations§
Source§impl QueryAnalysis
impl QueryAnalysis
Sourcepub fn calculate_score(&mut self)
pub fn calculate_score(&mut self)
Calculate performance score based on issues and timing
Trait Implementations§
Source§impl Clone for QueryAnalysis
impl Clone for QueryAnalysis
Source§fn clone(&self) -> QueryAnalysis
fn clone(&self) -> QueryAnalysis
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 QueryAnalysis
impl Debug for QueryAnalysis
Source§impl<'de> Deserialize<'de> for QueryAnalysis
impl<'de> Deserialize<'de> for QueryAnalysis
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 QueryAnalysis
impl RefUnwindSafe for QueryAnalysis
impl Send for QueryAnalysis
impl Sync for QueryAnalysis
impl Unpin for QueryAnalysis
impl UnwindSafe for QueryAnalysis
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 more