Skip to main content

init_observability_with_layer

Function init_observability_with_layer 

Source
pub fn init_observability_with_layer<L>(
    cfg: &ObservabilityConfig,
    platform_layer: Option<L>,
) -> ActorResult<ObservabilityGuard>
where L: Layer<Registry> + Send + Sync + 'static,
Expand description

Initialize logging + (optional) tracing subscriber with a custom platform layer.

This extended API allows platform-specific bindings to inject their own logging layer (e.g., tracing-android for Logcat, tracing-oslog for Apple).

§Arguments

  • cfg - Observability configuration (filter level, OTel settings)
  • platform_layer - Optional custom layer for platform-specific logging. If None, a default fmt::layer() outputting to stderr will be used.

§Example

// In libactr for Android:
let android_layer = tracing_android::layer("actr")
    .expect("Failed to create Android layer");
let guard = init_observability_with_layer(&cfg, Some(android_layer.boxed()))?;