pub struct MemoryAuditSink { /* private fields */ }Expand description
In-memory audit sink for testing
Uses a ring buffer (VecDeque) for O(1) FIFO eviction when capacity is reached.
Implementations§
Source§impl MemoryAuditSink
impl MemoryAuditSink
Sourcepub fn with_capacity(max_events: usize) -> Self
pub fn with_capacity(max_events: usize) -> Self
Create a new memory sink with specified capacity
Sourcepub fn events(&self) -> Vec<AuditEvent>
pub fn events(&self) -> Vec<AuditEvent>
Get all recorded events
Sourcepub fn find_by_type(&self, event_type: AuditEventType) -> Vec<AuditEvent>
pub fn find_by_type(&self, event_type: AuditEventType) -> Vec<AuditEvent>
Find events by type
Sourcepub fn find_by_plugin(&self, plugin: &str) -> Vec<AuditEvent>
pub fn find_by_plugin(&self, plugin: &str) -> Vec<AuditEvent>
Find events by plugin
Trait Implementations§
Source§impl AuditSink for MemoryAuditSink
impl AuditSink for MemoryAuditSink
Source§fn record(&self, event: AuditEvent) -> Result<(), AuditError>
fn record(&self, event: AuditEvent) -> Result<(), AuditError>
Record an audit event
Source§fn is_healthy(&self) -> bool
fn is_healthy(&self) -> bool
Check if the sink is healthy/available
Source§impl Debug for MemoryAuditSink
impl Debug for MemoryAuditSink
Auto Trait Implementations§
impl !Freeze for MemoryAuditSink
impl RefUnwindSafe for MemoryAuditSink
impl Send for MemoryAuditSink
impl Sync for MemoryAuditSink
impl Unpin for MemoryAuditSink
impl UnwindSafe for MemoryAuditSink
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