pub struct Telemetry { /* private fields */ }Expand description
Main telemetry handle.
Holds references to the metrics registry and provides methods for trace context propagation.
Implementations§
Source§impl Telemetry
impl Telemetry
Sourcepub fn init(config: TelemetryConfig) -> Result<Self, TelemetryError>
pub fn init(config: TelemetryConfig) -> Result<Self, TelemetryError>
Initialize telemetry with the given configuration.
This sets up:
- Structured logging (JSON or pretty format)
- Metrics registry
- OTLP exporter (if endpoint configured)
Sourcepub fn init_without_logging(
config: TelemetryConfig,
) -> Result<Self, TelemetryError>
pub fn init_without_logging( config: TelemetryConfig, ) -> Result<Self, TelemetryError>
Initialize telemetry without setting up logging.
Use this when logging is already initialized (e.g., in tests).
Sourcepub fn shutdown(&self)
pub fn shutdown(&self)
Shutdown telemetry gracefully.
Flushes any remaining spans before shutdown.
Sourcepub fn config(&self) -> &TelemetryConfig
pub fn config(&self) -> &TelemetryConfig
Get the telemetry configuration.
Sourcepub fn metrics(&self) -> &Arc<MetricsRegistry>
pub fn metrics(&self) -> &Arc<MetricsRegistry>
Get the metrics registry.
Sourcepub fn metrics_clone(&self) -> Arc<MetricsRegistry>
pub fn metrics_clone(&self) -> Arc<MetricsRegistry>
Get a cloned Arc reference to the metrics registry.
Sourcepub fn render_prometheus(&self) -> String
pub fn render_prometheus(&self) -> String
Render metrics in Prometheus text format.
Auto Trait Implementations§
impl Freeze for Telemetry
impl !RefUnwindSafe for Telemetry
impl Send for Telemetry
impl Sync for Telemetry
impl Unpin for Telemetry
impl UnsafeUnpin for Telemetry
impl !UnwindSafe for Telemetry
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
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request