Skip to main content

SinkShardMetrics

Struct SinkShardMetrics 

Source
pub struct SinkShardMetrics { /* private fields */ }
Expand description

Sink-shard handles (etl_sink_*), one struct per shard worker.

Implementations§

Source§

impl SinkShardMetrics

Source

pub fn new( labels: &ComponentLabels, shard: u32, replicas: &[String], e2e_basis: E2eBasis, ) -> SinkShardMetrics

Resolve all handles for one shard. replicas are display names used as the replica label (bounded by cluster topology). e2e_basis selects the time base for etl_e2e_latency_seconds (see docs/METRICS.md).

Call after install: handles bind to the recorder present at construction, and a handle built before the exporter exists silently records into the void.

Source

pub fn e2e_observed(&self, ingest_age: Duration, oldest_event_ms: i64)

Observe end-to-end latency for one durably written batch, from its oldest record. ingest_age is time since that record entered the terminal stage; oldest_event_ms is its source event time. The configured basis picks which one lands in the histogram (event basis falls back to ingest when no event time was available).

Source

pub fn flushed(&self, reason: FlushReason, rows: u64, bytes: u64, d: Duration)

Record one durably acknowledged flush.

Source

pub fn retries(&self, n: u64)

Count flush attempts beyond the first.

Source

pub fn errors(&self, class: ErrorClass, n: u64)

Count write errors of one taxonomy class.

Source

pub fn set_inflight(&self, batches: usize)

Set the number of sealed batches currently in flight.

Source

pub fn set_replica_healthy(&self, replica: usize, healthy: bool)

Mark one replica healthy (circuit closed) or quarantined (open).

Source

pub fn breaker_opened(&self, replica: usize)

Count a circuit-breaker open transition on one replica.

Source

pub fn abandoned(&self, n: u64)

Count batches abandoned at the drain deadline.

Trait Implementations§

Source§

impl Debug for SinkShardMetrics

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<U> As for U

§

fn as_<T>(self) -> T
where T: CastFrom<U>,

Casts self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Is for T
where T: ?Sized,

§

type EqTo = T

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> PolicyExt for T
where T: ?Sized,

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,