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.

Async never returns AsyncError::Full.

Records are passed to the worker thread through a channel with a bounded size (see AsyncBuilder::chan_size). On channel overflow Async will start dropping Records and log a message informing about it after sending more Records is possible again. The exact details of handling overflow is implementation defined, might change and should not be relied on, other than message won't be dropped as long as channel does not overflow.

Any messages reported by Async will contain slog-async logging Record tag to allow easy custom handling.

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]

[src]

New AsyncCore with default parameters

[src]

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

[src]

Handle one logging statement (Record) Read more

[src]

Avoid: Check if messages at the specified log level are maybe enabled for this logger. Read more

[src]

Avoid: See is_enabled

[src]

Avoid: See is_enabled

[src]

Avoid: See is_enabled

[src]

Avoid: See is_enabled

[src]

Avoid: See is_enabled

[src]

Avoid: See is_enabled

[src]

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

[src]

Filter logging records passed to Drain Read more

[src]

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

[src]

Map logging errors returned by this drain Read more

[src]

Ignore results returned by this drain Read more

[src]

Make Self panic when returning any errors Read more

impl Drop for Async
[src]

[src]

Executes the destructor for this type. Read more

Auto Trait Implementations

impl Send for Async

impl Sync for Async