pub struct WebhookSink { /* private fields */ }Expand description
One configured webhook. Filters each result by kind and scope, then renders and posts a templated request, classifying the outcome for the delivery layer.
Implementations§
Source§impl WebhookSink
impl WebhookSink
Sourcepub fn label(&self) -> &'static str
pub fn label(&self) -> &'static str
The webhook id as a &'static str, used as the shared per-sink
delivery label so its queue/retry/DLQ series map one-to-one to the
rsigma_webhook_* series.
Sourcepub async fn send(
&mut self,
result: &ProcessResult,
ctx: &DeliveryContext,
) -> Result<(), RuntimeError>
pub async fn send( &mut self, result: &ProcessResult, ctx: &DeliveryContext, ) -> Result<(), RuntimeError>
Deliver every matching result in result.
Results that do not match this webhook’s kind or scope are skipped
(a no-op success). On the first delivery error the call short-circuits
with that error so the shared worker can apply retry/backoff (for a
retryable error) or route to the DLQ (for a RuntimeError::Permanent
or after the retry budget is spent).
Auto Trait Implementations§
impl !RefUnwindSafe for WebhookSink
impl !UnwindSafe for WebhookSink
impl Freeze for WebhookSink
impl Send for WebhookSink
impl Sync for WebhookSink
impl Unpin for WebhookSink
impl UnsafeUnpin for WebhookSink
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
Attempts to downcast this to
T behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
Attempts to downcast this to
T behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
Attempts to downcast this to
T behind Rc pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
Attempts to downcast this to
T behind Arc pointerSource§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, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
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