Logging in async_stream wasn't displaying log spans correctly, this diff fixes that.
I needed to introduce a new dependency tracing-futures (official package from tracing vendor) because the core tracing::Instrumented<T> doesn't implement Stream<T>. With this dependency, we can use <impl Stream>::instrument() and <impl Stream>::in_current_span() which are required to correctly trace streaming logs.
Depends on D6246
Question: Should we display user_id in logs? Or is it sensitive data?