pub struct RecordBuffer { /* private fields */ }Expand description
Per-name ring buffer with two bounds.
Implementations§
Source§impl RecordBuffer
impl RecordBuffer
Sourcepub fn with_caps(per_ring: usize, max_rings: usize) -> Self
pub fn with_caps(per_ring: usize, max_rings: usize) -> Self
Construct with explicit per-ring and distinct-name caps.
Sourcepub fn record(&mut self, name: &str, bytes: Vec<u8>)
pub fn record(&mut self, name: &str, bytes: Vec<u8>)
Record bytes under the named ring; oldest entry evicted
when capacity reached. New ring names past max_rings are
dropped with the name_drops counter ticking.
Sourcepub fn snapshot(&self, name: &str) -> Vec<Vec<u8>>
pub fn snapshot(&self, name: &str) -> Vec<Vec<u8>>
Read the current contents of the named ring.
Sourcepub fn name_drops(&self) -> u64
pub fn name_drops(&self) -> u64
Cumulative drop count for unknown-name overflows.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RecordBuffer
impl RefUnwindSafe for RecordBuffer
impl Send for RecordBuffer
impl Sync for RecordBuffer
impl Unpin for RecordBuffer
impl UnsafeUnpin for RecordBuffer
impl UnwindSafe for RecordBuffer
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedComponent for T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> 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