rust-observability
Rust Observability
Design telemetry from operational questions and failure modes. Logs explain discrete events, traces connect work across boundaries, metrics quantify behavior over time, and profiles diagnose resource consumption. Do not emit all data to all signals.
Scope and Routing
Use this skill for tracing, subscribers, structured logs, metrics, OpenTelemetry, context propagation, sampling, exporters, request correlation, async runtime diagnostics, redaction, and shutdown flushing.
Route concurrency correctness to rust-concurrency, HTTP middleware to rust-web, security event policy to rust-web-security, performance profiling to rust-performance, and dependency features to rust-cargo-build.
Workflow
1. Start from decisions and SLOs
List the questions operators must answer: request rate and latency, error categories, saturation, queue depth, retries, dependency health, task leaks, resource usage, and deployment identity. Define service name, environment, version, instance attributes, ownership, retention, access control, and cost budgets before selecting exporters.
2. Establish structured tracing
Use tracing spans for operations with duration and nested work; use events for facts occurring at a point in time.