News for hackers. Stuff that matters.
Re:Instrument a Rust Application with OpenTelemetry by couchand on Tuesday November 23, 2021 @10:30AM (#29318934)
Something basic that's missing from this tutorial is instrumenting Futures. The tracing crate (which I believe can export to an OpenTelemetry backend) has tracing-futures for this. Is there something similar for the opentelemetry crate? From a cursory review of the docs I haven't seen mention of it...
Re:Instrument a Rust Application with OpenTelemetry by TrueDuality on Tuesday November 23, 2021 @02:05PM (#29321825)
Yup, tracing-opentelemetry is actually called out on the core tracing crate page (https://crates.io/crates/tracing) and it works pretty well.

I gave a quick look through the article's samples and I think the tracing crate has much better ergonomics. Wrapping a lot of code in lambdas to handle spans ends up making a code base pretty nasty in my experience.

Being able to simply tag a function for instrumentation (and skip/choose which arguments to include), the ability to enter/exit spans as one liners rather than wrapping a chunk of code in a block, and being able to easily add additional attributes/data to those spans without type wrangling are all quality of life improvements that I don't want to give up.

The article's crates might be able to do the same things, I haven't looked into its documentation.

Re:Instrument a Rust Application with OpenTelemetry by couchand on Tuesday November 23, 2021 @04:04PM (#29323508)
Re:Instrument a Rust Application with OpenTelemetry by dochtman on Tuesday November 23, 2021 @12:48PM (#29320787)
There's a tracing-opentelemetry crate that lives in the tracing repo that lets you connecting tracing to opentelemetry.