pub struct EventsStatus {
pub connected: bool,
pub last_message_at: Option<String>,
pub reconnect_count: u64,
pub uptime_seconds: u64,
pub reset_epoch: u64,
pub topics_subscribed: Vec<String>,
pub buffer_sizes: BTreeMap<String, usize>,
pub subscriptions: BTreeMap<String, SubscriptionState>,
pub subscribe_refusals: u64,
pub session_rollovers: u64,
}Expand description
Snapshot of the connector’s state, returned by GET /events/_status.
Fields§
§connected: booltrue if the underlying WS is currently connected.
last_message_at: Option<String>RFC 3339 timestamp of the last frame the connector received, if any.
reconnect_count: u64How many times the connector has reconnected since the process started. Bumps on every successful reconnect, not on each retry.
uptime_seconds: u64Wall-clock seconds since the connector task spawned.
reset_epoch: u64Current reset_epoch — bumps on each reconnect or process restart.
topics_subscribed: Vec<String>Topics currently subscribed at the upstream WS. Always includes
"orders" and "pnl"; market data topics appear when a client
has polled /events/marketdata?conid=… recently.
buffer_sizes: BTreeMap<String, usize>Per-topic ring buffer occupancy. Useful for “are we close to wraparound?” capacity planning.
subscriptions: BTreeMap<String, SubscriptionState>Whether CPAPI has actually honoured each standing subscription
(orders, pnl). topics_subscribed above records what we ASKED
for; this records what we GOT. The difference is the whole story of
a fill that never arrived: CPAPI answers sor+{} with
{"error":"unable to subscribe"} more often than not, and a socket
that outlives a Gateway re-login keeps heartbeating with every
subscription dead. A consumer confirming fills should treat anything
but subscribed on orders as “the stream will not tell you”.
subscribe_refusals: u64How many subscribe refusals CPAPI has sent since the process started.
session_rollovers: u64How many times the connector tore its socket down because the Gateway’s session id changed underneath it (a re-login).
Trait Implementations§
Source§impl Clone for EventsStatus
impl Clone for EventsStatus
Source§fn clone(&self) -> EventsStatus
fn clone(&self) -> EventsStatus
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EventsStatus
impl Debug for EventsStatus
Source§impl Default for EventsStatus
impl Default for EventsStatus
Source§fn default() -> EventsStatus
fn default() -> EventsStatus
Auto Trait Implementations§
impl Freeze for EventsStatus
impl RefUnwindSafe for EventsStatus
impl Send for EventsStatus
impl Sync for EventsStatus
impl Unpin for EventsStatus
impl UnsafeUnpin for EventsStatus
impl UnwindSafe for EventsStatus
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ServiceExt for T
impl<T> ServiceExt for T
§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
§fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
§fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
§fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
x-request-id as the header name. Read more§fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
§fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
x-request-id as the header name. Read more§fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
413 Payload Too Large responses. Read more