pub struct TelemetryManager { /* private fields */ }Expand description
Telemetry manager
Implementations§
Source§impl TelemetryManager
impl TelemetryManager
Sourcepub fn new(max_metrics: usize) -> TelemetryManager
pub fn new(max_metrics: usize) -> TelemetryManager
Create a new telemetry manager
Sourcepub async fn increment_counter(
&self,
name: &str,
value: f64,
tags: HashMap<String, String>,
)
pub async fn increment_counter( &self, name: &str, value: f64, tags: HashMap<String, String>, )
Record a counter metric
Sourcepub async fn set_gauge(
&self,
name: &str,
value: f64,
tags: HashMap<String, String>,
)
pub async fn set_gauge( &self, name: &str, value: f64, tags: HashMap<String, String>, )
Record a gauge metric
Sourcepub async fn record_histogram(
&self,
name: &str,
value: f64,
tags: HashMap<String, String>,
)
pub async fn record_histogram( &self, name: &str, value: f64, tags: HashMap<String, String>, )
Record a histogram value
Sourcepub async fn record_timer(
&self,
name: &str,
duration: Duration,
tags: HashMap<String, String>,
)
pub async fn record_timer( &self, name: &str, duration: Duration, tags: HashMap<String, String>, )
Record a timer metric
Sourcepub async fn update_system_health(&self, health: SystemHealth)
pub async fn update_system_health(&self, health: SystemHealth)
Update system health metrics
Sourcepub async fn set_active_agents(&self, count: usize)
pub async fn set_active_agents(&self, count: usize)
Update active agent count without overwriting the rest of the health snapshot.
Sourcepub async fn set_active_connections(&self, count: usize)
pub async fn set_active_connections(&self, count: usize)
Update active connection count without overwriting the rest of the health snapshot.
Sourcepub async fn get_system_health(&self) -> SystemHealth
pub async fn get_system_health(&self) -> SystemHealth
Get current system health
Sourcepub async fn get_recent_metrics(&self, limit: usize) -> Vec<Metric>
pub async fn get_recent_metrics(&self, limit: usize) -> Vec<Metric>
Get recent metrics
Sourcepub async fn get_metrics_summary(&self) -> MetricsSummary
pub async fn get_metrics_summary(&self) -> MetricsSummary
Get an aggregate snapshot of counters, gauges, histograms, and system health.
Sourcepub async fn clear_metrics(&self)
pub async fn clear_metrics(&self)
Clear all metrics
Auto Trait Implementations§
impl Freeze for TelemetryManager
impl !RefUnwindSafe for TelemetryManager
impl Send for TelemetryManager
impl Sync for TelemetryManager
impl Unpin for TelemetryManager
impl !UnwindSafe for TelemetryManager
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
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§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>
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].