Trait log::Log

source · []
pub trait Log: Sync + Send {
    fn enabled(&self, metadata: &Metadata<'_>) -> bool;
    fn log(&self, record: &Record<'_>);
    fn flush(&self);
Expand description

A trait encapsulating the operations required of a logger.

Required Methods

Determines if a log message with the specified metadata would be logged.

This is used by the log_enabled! macro to allow callers to avoid expensive computation of log message arguments if the message would be discarded anyway.

For implementors

This method isn’t called automatically by the log! macros. It’s up to an implementation of the Log trait to call enabled in its own log method implementation to guarantee that filtering is applied.

Logs the Record.

For implementors

Note that enabled is not necessarily called before this method. Implementations of log should perform all necessary filtering internally.

Flushes any buffered records.

Implementations on Foreign Types