Async Buffered Log backends

Are there any async logging backends available? A lot seem to all use blocking writes in the same thread.

I'm also wondering if its even possible to write one easily? From messing around the compiler gives errors any time I try to use a Record in a channel or store in a vec saying its not send or sync. Im not sure how your supposed to work around that.