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::init_otlp_in_runtime;pub use tracing_otel::otlp_is_enabled;pub use tracing_otel::set_telemetry_provider;pub use tracing_otel::DefaultOtlpProvider;pub use tracing_otel::OtlpGuard;pub use tracing_otel::TelemetryProvider;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 - Overridable OTLP telemetry seam.
Structs§
- Common
Logging Options - Options for
init_common_logging. - Observability
Guards - Combined guards for all observability components
Functions§
- init_
common_ logging - Shared logging entry point for the satellite binaries (overlayd, web, manager, desktop).
- init_
observability - Initialize all observability components