Skip to main content

Crate zlayer_observability

Crate zlayer_observability 

Source
Expand description

ZLayer Observability - Logging, Tracing, and Metrics

Provides unified observability infrastructure:

  • Structured logging with JSON/pretty formats
  • OpenTelemetry distributed tracing
  • Prometheus metrics exposition

§Quick Start

use zlayer_observability::{init_observability, ObservabilityConfig};

#[tokio::main]
async fn main() {
    let config = ObservabilityConfig::default();
    let _guards = init_observability(&config).expect("Failed to init observability");

    tracing::info!("Application started");
}

Re-exports§

pub use error::ObservabilityError;
pub use error::Result;
pub use logging::init_logging;
pub use logging::LogGuard;
pub use metrics::init_metrics;
pub use metrics::metrics;
pub use metrics::HealthStatus;
pub use metrics::ZLayerMetrics;
pub use tracing_otel::create_otel_layer;
pub use tracing_otel::init_tracing;
pub use tracing_otel::TracingGuard;
pub use config::*;
pub use container_spans::*;

Modules§

config
Configuration types for observability
container_spans
Container operation span helpers
error
Error types for observability
log_reader
Log reader implementations for structured and legacy log files.
logging
Structured logging with JSON/pretty output and file rotation
logs
Structured container and execution log types.
metrics
Prometheus metrics exposition
propagation
Context propagation utilities for distributed tracing
tracing_otel
OpenTelemetry distributed tracing

Structs§

ObservabilityGuards
Combined guards for all observability components

Functions§

init_observability
Initialize all observability components