use post_cortex_daemon::daemon::observability;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
observability::init()?;
tracing::info!("post-cortex demo daemon starting");
for i in 0..5 {
demo_request(i).await;
}
tracing::info!("done; flushing OTel exporter");
observability::shutdown();
Ok(())
}
#[tracing::instrument(fields(request_id = id))]
async fn demo_request(id: u32) {
tracing::info!("handling request");
tokio::time::sleep(std::time::Duration::from_millis(50)).await;
inner_work().await;
}
#[tracing::instrument]
async fn inner_work() {
tracing::debug!("doing inner work");
tokio::time::sleep(std::time::Duration::from_millis(20)).await;
}