Так, а зачем? В task-local хранить идентификатор таски (можно взять рандомный айдишник например) и использовать общий логгер с выводом таск-локал идентификатора.
я делал такое, чтобы каши от паралельно запускаемых тестов не было - сначала тесты "выстроить в ряд" сторонний крейт, аттрибут на каждый тест = [#serial] и все норм, насчет асинк не утверждаю, т.к. не знаю