use anyhow::Result;
fn main() -> Result<()> {
itrace::builder()
.tracer("basic")
.from_env()
.init()?;
tracing::trace!(
app = "myapp",
zone = "eu-west-1",
node = "node-01",
"Entering request handler"
);
tracing::trace!(
app = "myapp",
zone = "eu-west-1",
node = "node-02",
"Checking cache entry"
);
tracing::debug!(
app = "myapp",
zone = "eu-west-1",
node = "node-01",
"Connected to database"
);
tracing::debug!(
app = "myapp",
zone = "ap-southeast-1",
node = "node-03",
latency_ms = 42, "Query executed"
);
tracing::info!(
app = "myapp",
zone = "eu-west-1",
node = "node-01",
"Server started"
);
tracing::info!(
app = "myapp",
zone = "us-east-1",
node = "node-05",
"New connection accepted"
);
tracing::info!(
app = "myapp",
zone = "eu-west-1",
node = "node-01",
connections = 128, "Connection pool ready"
);
tracing::warn!(
app = "myapp",
zone = "eu-west-1",
node = "node-01",
"Configurazione parziale: usando valori di default"
);
tracing::warn!(
app = "myapp",
zone = "ap-southeast-1",
node = "node-03",
retry = 2, "Upstream lento, ritento"
);
tracing::error!(
app = "myapp",
zone = "eu-west-1",
node = "node-01",
request_id = "abc-123", "Errore critico: connessione persa"
);
tracing::error!(
app = "myapp",
zone = "us-east-1",
node = "node-05",
"Timeout su chiamata esterna"
);
Ok(())
}