Struct slog_async::Async [] [src]

pub struct Async { /* fields omitted */ }

Async drain

Async will send all the logging records to a wrapped drain running in another thread.

On AsyncError::Full returned by AsyncCore used internally, Async will drop overflowing Records and report number of dropped messages.

Note: On drop Async waits for it's worker-thread to finish (after handling all previous Records sent to it). If you can't tolerate the delay, make sure you drop it eg. in another thread.

Methods

impl Async
[src]

New AsyncCore with default parameters

Build Async drain with custom parameters

The wrapped drain must handle all results (Drain<Ok=(),Error=Never>) since there's no way to return it back. See slog::DrainExt::fuse() and slog::DrainExt::ignore_res() for typical error handling strategies.

Trait Implementations

impl Drain for Async
[src]

Type returned by this drain Read more

Type of potential errors that can be returned by this Drain

Handle one logging statement (Record) Read more

Pass Drain through a closure, eg. to wrap into another Drain. Read more

Filter logging records passed to Drain Read more

Filter logging records passed to Drain (by level) Read more

Map logging errors returned by this drain Read more

Ignore results returned by this drain Read more

Make Self panic when returning any errors Read more

impl Drop for Async
[src]

A method called when the value goes out of scope. Read more