Skip to main content

EventEmitter

Trait EventEmitter 

Source
pub trait EventEmitter: Send + Sync {
    // Provided methods
    fn on_worker_started(&self, _runner_id: &RunnerId) { ... }
    fn on_worker_shutdown(&self, _runner_id: &RunnerId) { ... }
    fn on_task_submitted(&self, _task_id: &TaskId, _inv_id: &InvocationId) { ... }
    fn on_task_started(&self, _task_id: &TaskId, _inv_id: &InvocationId) { ... }
    fn on_task_succeeded(
        &self,
        _task_id: &TaskId,
        _inv_id: &InvocationId,
        _duration: Duration,
    ) { ... }
    fn on_task_failed(
        &self,
        _task_id: &TaskId,
        _inv_id: &InvocationId,
        _error: &str,
        _duration: Duration,
    ) { ... }
    fn on_task_retried(
        &self,
        _task_id: &TaskId,
        _inv_id: &InvocationId,
        _attempt: u32,
    ) { ... }
    fn on_queue_depth(&self, _queue: &str, _depth: usize) { ... }
    fn on_cc_rejected(&self, _task_id: &TaskId) { ... }
    fn on_cc_slot_acquired(&self, _task_id: &TaskId) { ... }
    fn on_cc_slot_released(&self, _task_id: &TaskId) { ... }
}
Expand description

Observable events emitted during task lifecycle.

Each method corresponds to one event in the event taxonomy. The default implementation is a no-op, allowing the compiler to inline and eliminate calls when no monitoring feature is enabled.

§Levels

MethodLevel
on_worker_started, on_worker_shutdown0 (WorkerHealth)
on_task_submitted .. on_task_retried1 (TaskLifecycle)
on_queue_depth, on_cc_rejected2 (QueueConcurrency)

Provided Methods§

Source

fn on_worker_started(&self, _runner_id: &RunnerId)

A runner process has started.

Source

fn on_worker_shutdown(&self, _runner_id: &RunnerId)

A runner process is shutting down.

Source

fn on_task_submitted(&self, _task_id: &TaskId, _inv_id: &InvocationId)

A task invocation was submitted to the system.

Source

fn on_task_started(&self, _task_id: &TaskId, _inv_id: &InvocationId)

A runner began executing a task invocation.

Source

fn on_task_succeeded( &self, _task_id: &TaskId, _inv_id: &InvocationId, _duration: Duration, )

A task invocation completed successfully.

Source

fn on_task_failed( &self, _task_id: &TaskId, _inv_id: &InvocationId, _error: &str, _duration: Duration, )

A task invocation failed (final failure, retries exhausted).

Source

fn on_task_retried( &self, _task_id: &TaskId, _inv_id: &InvocationId, _attempt: u32, )

A task invocation is being retried.

Source

fn on_queue_depth(&self, _queue: &str, _depth: usize)

Current queue depth snapshot.

Source

fn on_cc_rejected(&self, _task_id: &TaskId)

Concurrency control rejected an invocation registration.

Source

fn on_cc_slot_acquired(&self, _task_id: &TaskId)

A concurrency slot was successfully acquired.

Source

fn on_cc_slot_released(&self, _task_id: &TaskId)

A concurrency slot was released (invocation reached terminal state).

Implementors§