Use crossbeam instead of std::mpsc. It's faster and more flexible in every aspect.
crossbeam
std::mpsc
For logging, consider slog and tracing.