Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
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.