pub struct StreamingQualityMetrics {
pub total_deltas: usize,
pub avg_delta_size: usize,
pub min_delta_size: usize,
pub max_delta_size: usize,
pub pattern: StreamingPattern,
pub snapshot_repairs_count: usize,
pub large_delta_count: usize,
pub protocol_violations: usize,
pub queue_depth: usize,
pub queue_dropped_events: usize,
pub queue_backpressure_count: usize,
}Expand description
Streaming quality metrics for analyzing streaming behavior.
These metrics help diagnose issues with streaming performance and inform future improvements to the streaming infrastructure.
§Metrics Tracked
- Delta sizes: Average, min, max sizes to understand streaming granularity
- Total deltas: Count of deltas processed
- Streaming pattern: Classification based on size variance
- Queue metrics: Event queue depth, dropped events, and backpressure (when using bounded queue)
Fields§
§total_deltas: usizeTotal number of deltas processed
avg_delta_size: usizeAverage delta size in bytes
min_delta_size: usizeMinimum delta size in bytes
max_delta_size: usizeMaximum delta size in bytes
pattern: StreamingPatternClassification of streaming pattern
snapshot_repairs_count: usizeNumber of times auto-repair was triggered for snapshot-as-delta bugs
large_delta_count: usizeNumber of deltas that exceeded the size threshold (indicating potential snapshots)
protocol_violations: usizeNumber of protocol violations detected (e.g., MessageStart during streaming)
queue_depth: usizeQueue depth (number of events in queue) - 0 if queue not in use
queue_dropped_events: usizeNumber of events dropped due to queue overflow - 0 if queue not in use
queue_backpressure_count: usizeNumber of times backpressure was triggered (send blocked on full queue) - 0 if queue not in use
Implementations§
Trait Implementations§
Source§impl Clone for StreamingQualityMetrics
impl Clone for StreamingQualityMetrics
Source§fn clone(&self) -> StreamingQualityMetrics
fn clone(&self) -> StreamingQualityMetrics
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for StreamingQualityMetrics
impl Debug for StreamingQualityMetrics
Source§impl Default for StreamingQualityMetrics
impl Default for StreamingQualityMetrics
Source§fn default() -> StreamingQualityMetrics
fn default() -> StreamingQualityMetrics
Auto Trait Implementations§
impl Freeze for StreamingQualityMetrics
impl RefUnwindSafe for StreamingQualityMetrics
impl Send for StreamingQualityMetrics
impl Sync for StreamingQualityMetrics
impl Unpin for StreamingQualityMetrics
impl UnwindSafe for StreamingQualityMetrics
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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