pub enum HookTimeoutBehavior {
FailOpen,
FailClosed,
}Expand description
What happens when a hook callback exceeds its timeout.
Variants§
FailOpen
Let the event pass through unchanged (default).
Safe for observability hooks (logging, metrics) where a slow hook should not block the event stream.
FailClosed
Block (suppress) the event, as if the hook returned HookDecision::Block.
Use this for security or gating hooks where a timeout must not silently allow a potentially dangerous event through.
Trait Implementations§
Source§impl Clone for HookTimeoutBehavior
impl Clone for HookTimeoutBehavior
Source§fn clone(&self) -> HookTimeoutBehavior
fn clone(&self) -> HookTimeoutBehavior
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HookTimeoutBehavior
impl Debug for HookTimeoutBehavior
Source§impl Default for HookTimeoutBehavior
impl Default for HookTimeoutBehavior
Source§fn default() -> HookTimeoutBehavior
fn default() -> HookTimeoutBehavior
Returns the “default value” for a type. Read more
Source§impl PartialEq for HookTimeoutBehavior
impl PartialEq for HookTimeoutBehavior
impl Copy for HookTimeoutBehavior
impl Eq for HookTimeoutBehavior
impl StructuralPartialEq for HookTimeoutBehavior
Auto Trait Implementations§
impl Freeze for HookTimeoutBehavior
impl RefUnwindSafe for HookTimeoutBehavior
impl Send for HookTimeoutBehavior
impl Sync for HookTimeoutBehavior
impl Unpin for HookTimeoutBehavior
impl UnsafeUnpin for HookTimeoutBehavior
impl UnwindSafe for HookTimeoutBehavior
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> 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>
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