pub struct TierMetrics { /* private fields */ }Expand description
Tier metrics collector
Implementations§
Source§impl TierMetrics
impl TierMetrics
Sourcepub fn record_query(&self, tier: StorageTier, latency_us: u64, hit: bool)
pub fn record_query(&self, tier: StorageTier, latency_us: u64, hit: bool)
Record a query to a tier
Sourcepub fn record_transition(&self, transition: TierTransition)
pub fn record_transition(&self, transition: TierTransition)
Record a tier transition
Sourcepub fn update_tier_usage(
&self,
tier: StorageTier,
used_bytes: u64,
capacity_bytes: u64,
)
pub fn update_tier_usage( &self, tier: StorageTier, used_bytes: u64, capacity_bytes: u64, )
Update tier capacity and usage
Sourcepub fn update_index_count(&self, tier: StorageTier, count: usize)
pub fn update_index_count(&self, tier: StorageTier, count: usize)
Update index count for a tier
Sourcepub fn record_bytes_read(&self, tier: StorageTier, bytes: u64)
pub fn record_bytes_read(&self, tier: StorageTier, bytes: u64)
Record bytes read from a tier
Sourcepub fn record_bytes_written(&self, tier: StorageTier, bytes: u64)
pub fn record_bytes_written(&self, tier: StorageTier, bytes: u64)
Record bytes written to a tier
Sourcepub fn get_tier_statistics(&self, tier: StorageTier) -> TierStatistics
pub fn get_tier_statistics(&self, tier: StorageTier) -> TierStatistics
Get statistics for a tier
Sourcepub fn get_all_tier_statistics(&self) -> HashMap<StorageTier, TierStatistics>
pub fn get_all_tier_statistics(&self) -> HashMap<StorageTier, TierStatistics>
Get all tier statistics
Sourcepub fn get_transition_history(
&self,
limit: Option<usize>,
) -> Vec<TierTransition>
pub fn get_transition_history( &self, limit: Option<usize>, ) -> Vec<TierTransition>
Get transition history
Sourcepub fn get_performance_metrics(&self) -> PerformanceMetrics
pub fn get_performance_metrics(&self) -> PerformanceMetrics
Get performance metrics
Sourcepub fn update_performance_metrics<F>(&self, update_fn: F)where
F: FnOnce(&mut PerformanceMetrics),
pub fn update_performance_metrics<F>(&self, update_fn: F)where
F: FnOnce(&mut PerformanceMetrics),
Update performance metrics
Sourcepub fn get_cost_metrics(&self) -> CostMetrics
pub fn get_cost_metrics(&self) -> CostMetrics
Get cost metrics
Sourcepub fn update_cost_metrics<F>(&self, update_fn: F)where
F: FnOnce(&mut CostMetrics),
pub fn update_cost_metrics<F>(&self, update_fn: F)where
F: FnOnce(&mut CostMetrics),
Update cost metrics
Sourcepub fn calculate_efficiency(&self) -> TieringEfficiency
pub fn calculate_efficiency(&self) -> TieringEfficiency
Calculate overall system efficiency
Trait Implementations§
Source§impl Clone for TierMetrics
impl Clone for TierMetrics
Source§fn clone(&self) -> TierMetrics
fn clone(&self) -> TierMetrics
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 TierMetrics
impl Debug for TierMetrics
Auto Trait Implementations§
impl Freeze for TierMetrics
impl RefUnwindSafe for TierMetrics
impl Send for TierMetrics
impl Sync for TierMetrics
impl Unpin for TierMetrics
impl UnwindSafe for TierMetrics
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> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.