Skip to main content

StoragePolicy

Enum StoragePolicy 

pub enum StoragePolicy {
    None,
    Rolling,
    Full,
    Rotating,
}
Expand description

JSONL persistence policy.

Variants§

§

None

Do not persist; in-process broadcast only.

§

Rolling

Persist with rolling trim once max_entries is exceeded.

§

Full

Persist all events forever (operator manages rotation).

§

Rotating

Persist all events, rotating the active file to timestamped archives on a size and/or daily boundary and pruning old archives by count and age.

Implementations§

Source§

impl StoragePolicy

Source

pub fn from_raw(raw: &str) -> Self

Source

pub fn is_enabled(self) -> bool

Source

pub fn reads_archives(self) -> bool

Whether a reader should merge timestamped archives with the active file.

Only Rotating owns archives: it creates them and prunes them under retention_max_files / retention_max_age_days. Every other policy reads the active file alone. That matters most for Rolling, whose contract is “the most recent max_entries events, older ones discarded”: if a path previously ran Rotating, its archives are still on disk but explicitly unmanaged (see the storage-policy table in docs/book/src/architecture/logging.md). Merging them would resurrect events the rolling window is supposed to have dropped, and they would never be pruned, since no rotation runs to trigger retention.

Trait Implementations§

Source§

impl Clone for StoragePolicy

Source§

fn clone(&self) -> StoragePolicy

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · §

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for StoragePolicy

Source§

impl Debug for StoragePolicy

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for StoragePolicy

Source§

impl PartialEq for StoragePolicy

Source§

fn eq(&self, other: &StoragePolicy) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · §

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for StoragePolicy

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more