pub struct TriggerSpec {
pub selectors: Vec<String>,
pub pre: Duration,
pub post: Duration,
pub rules: Vec<Condition>,
pub tick: Duration,
pub timeout: Duration,
pub give_up: Option<Duration>,
pub preamble: Option<PreambleSemantics>,
pub max_samples: Option<u64>,
pub max_replies: usize,
}decode only.Expand description
What a trigger capture watches, judges, and keeps.
Fields§
§selectors: Vec<String>Full wire selectors to retain and record. The rules’ own selectors are watched too; the header names the union (O5).
pre: DurationHow far back the retained window reaches: the pre-roll asked for.
post: DurationHow long to keep recording after the trigger.
rules: Vec<Condition>The rules; the first transition to firing on any of them fires
the capture.
tick: DurationEvaluation cadence — the watchdog’s --every.
timeout: DurationPer-ask timeout: the roster and doctor sweeps, and the preamble GET.
give_up: Option<Duration>Stop waiting after this long with nothing fired; None waits until
the caller stops the future.
preamble: Option<PreambleSemantics>What the preamble is a snapshot of; None writes no preamble at all.
max_samples: Option<u64>Stop the post-roll after this many observed samples (the pre-roll and the preamble never count towards it).
max_replies: usizeReplies kept per preamble GET (#339); what the bound cost rides the
header’s incomplete.
Trait Implementations§
Source§impl Clone for TriggerSpec
impl Clone for TriggerSpec
Source§fn clone(&self) -> TriggerSpec
fn clone(&self) -> TriggerSpec
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for TriggerSpec
impl RefUnwindSafe for TriggerSpec
impl Send for TriggerSpec
impl Sync for TriggerSpec
impl Unpin for TriggerSpec
impl UnsafeUnpin for TriggerSpec
impl UnwindSafe for TriggerSpec
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
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