pub struct MetricsHandles {Show 31 fields
pub agents_forked: CounterHandle,
pub agents_completed: CounterHandle,
pub agents_failed: CounterHandle,
pub retry_attempted: CounterHandle,
pub retry_improved: CounterHandle,
pub retry_unchanged: CounterHandle,
pub retry_degraded: CounterHandle,
pub orch_duration: HistogramHandle,
pub messages: CounterHandle,
pub llm_circuit_breaker_state: GaugeHandle,
pub tool_calls: CounterHandle,
pub tool_errors: CounterHandle,
pub tool_duration: HistogramHandle,
pub llm_calls: CounterHandle,
pub llm_errors: CounterHandle,
pub audit_lagged_events: CounterHandle,
pub gateway_messages_delivered: LabeledCounterHandle,
pub gateway_messages_dropped: LabeledCounterHandle,
pub gateway_messages_resynced: LabeledCounterHandle,
pub gateway_messages_timed_out: LabeledCounterHandle,
pub gateway_replay_replay: LabeledCounterHandle,
pub gateway_replay_resync: LabeledCounterHandle,
pub gateway_response_duration: HistogramHandle,
pub sse_connections_open: LabeledCounterHandle,
pub sse_connections_close: LabeledCounterHandle,
pub ws_connections_open: LabeledCounterHandle,
pub ws_connections_close: LabeledCounterHandle,
pub ws_connections_keepalive_timeout: LabeledCounterHandle,
pub web_dist_swaps: CounterHandle,
pub supervisor_restarts: CounterHandle,
pub readiness_state: GaugeHandle,
}Expand description
Metrics handles initialized at startup.
Fields§
§agents_forked: CounterHandle§agents_completed: CounterHandle§agents_failed: CounterHandle§retry_attempted: CounterHandleRFC-027 retry metrics.
retry_improved: CounterHandle§retry_unchanged: CounterHandle§retry_degraded: CounterHandle§orch_duration: HistogramHandle§messages: CounterHandle§llm_circuit_breaker_state: GaugeHandleLLM circuit breaker state: 0=closed, 1=open, 2=half_open.
tool_calls: CounterHandleTool execution metrics.
tool_errors: CounterHandle§tool_duration: HistogramHandle§llm_calls: CounterHandleLLM call metrics.
llm_errors: CounterHandle§audit_lagged_events: CounterHandle§gateway_messages_delivered: LabeledCounterHandleOutgoing messages by outcome (delivered | dropped | resynced | timed_out).
gateway_messages_dropped: LabeledCounterHandle§gateway_messages_resynced: LabeledCounterHandle§gateway_messages_timed_out: LabeledCounterHandle§gateway_replay_replay: LabeledCounterHandleReplay requests by outcome (replay | resync).
gateway_replay_resync: LabeledCounterHandle§gateway_response_duration: HistogramHandlesend_and_wait duration histogram.
sse_connections_open: LabeledCounterHandleSSE client connections by action (open | close). The original
RFC-024 §11 metric (sse_reconnects_total{reason}) required
client-side observability (proxy/NAT/UA-specific reasons) the
server cannot see. We expose server-side lifecycle instead.
sse_connections_close: LabeledCounterHandle§ws_connections_open: LabeledCounterHandleWS client connections by action (open | close | keepalive_timeout).
ws_connections_close: LabeledCounterHandle§ws_connections_keepalive_timeout: LabeledCounterHandle§web_dist_swaps: CounterHandleAtomic web-dist swaps (RFC-024 SP3).
supervisor_restarts: CounterHandleWeb surface scoped restarts (RFC-030).
readiness_state: GaugeHandle0 = warming up, 1 = ready (RFC-024 SP4). Updated from
ReadinessGate when a subsystem changes state.
Implementations§
Source§impl MetricsHandles
impl MetricsHandles
Sourcepub fn inc_agents_forked(&self)
pub fn inc_agents_forked(&self)
Increment agents_forked counter.
Sourcepub fn inc_agents_completed(&self)
pub fn inc_agents_completed(&self)
Increment agents_completed counter.
Sourcepub fn inc_agents_failed(&self)
pub fn inc_agents_failed(&self)
Increment agents_failed counter.
Sourcepub fn inc_messages(&self)
pub fn inc_messages(&self)
Increment messages counter.
Sourcepub fn inc_supervisor_restart(&self)
pub fn inc_supervisor_restart(&self)
Increment the supervisor scoped-restart counter (RFC-030).
Sourcepub fn observe_orch_duration(&self, value: f64)
pub fn observe_orch_duration(&self, value: f64)
Observe orchestration duration.
Trait Implementations§
Source§impl Clone for MetricsHandles
impl Clone for MetricsHandles
Source§fn clone(&self) -> MetricsHandles
fn clone(&self) -> MetricsHandles
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 MetricsHandles
impl RefUnwindSafe for MetricsHandles
impl Send for MetricsHandles
impl Sync for MetricsHandles
impl Unpin for MetricsHandles
impl UnsafeUnpin for MetricsHandles
impl UnwindSafe for MetricsHandles
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
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
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 moreimpl<T> MaybeSendSync for T
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.