pub struct TimeSeriesMetric { /* private fields */ }Expand description
Time-series metric with rolling window
Implementations§
Source§impl TimeSeriesMetric
impl TimeSeriesMetric
pub fn new(name: String, max_points: usize, retention_hours: u64) -> Self
pub fn add_point(&mut self, point: MetricDataPoint)
pub fn get_latest(&self) -> Option<&MetricDataPoint>
pub fn get_points(&self) -> Vec<&MetricDataPoint>
pub fn get_points_in_range( &self, start: DateTime<Utc>, end: DateTime<Utc>, ) -> Vec<&MetricDataPoint>
pub fn calculate_average(&self) -> f64
pub fn calculate_percentile(&self, percentile: f64) -> f64
pub fn detect_anomalies( &self, threshold_multiplier: f64, ) -> Vec<&MetricDataPoint>
pub fn calculate_variance(&self) -> f64
pub fn get_trend(&self) -> UsagePattern
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TimeSeriesMetric
impl RefUnwindSafe for TimeSeriesMetric
impl Send for TimeSeriesMetric
impl Sync for TimeSeriesMetric
impl Unpin for TimeSeriesMetric
impl UnwindSafe for TimeSeriesMetric
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> 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