The easiest solution will be using #[tracing::instrument], which just does the right thing with async fn. To put an entire future inside a span, you do want Instrument::instrument.
The important thing to note is that tracing spans are always used in a scoped manner, whereas slog-scope is optional and generally not preferred. A superpower that this gives tracing spans is that they know how long they're active, meaning you can do profiling off of them.
You don't pass around spans in tracing the way you might with slog; you just use the contextual stack of what spans have been entered.