Struct simplelog::WriteLogger

source ·
pub struct WriteLogger<W: Write + Send + 'static> { /* private fields */ }
Expand description

The WriteLogger struct. Provides a Logger implementation for structs implementing Write, e.g. File

Implementations§

source§

impl<W: Write + Send + 'static> WriteLogger<W>

source

pub fn init( log_level: LevelFilter, config: Config, writable: W ) -> Result<(), SetLoggerError>

init function. Globally initializes the WriteLogger as the one and only used log facility.

Takes the desired Level, Config and Write struct as arguments. They cannot be changed later on. Fails if another Logger was already initialized.

§Examples
let _ = WriteLogger::init(LevelFilter::Info, Config::default(), File::create("my_rust_bin.log").unwrap());
source

pub fn new( log_level: LevelFilter, config: Config, writable: W ) -> Box<WriteLogger<W>>

allows to create a new logger, that can be independently used, no matter what is globally set.

no macros are provided for this case and you probably dont want to use this function, but init(), if you dont want to build a CombinedLogger.

Takes the desired Level, Config and Write struct as arguments. They cannot be changed later on.

§Examples
let file_logger = WriteLogger::new(LevelFilter::Info, Config::default(), File::create("my_rust_bin.log").unwrap());
Examples found in repository?
examples/usage.rs (lines 18-22)
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
fn main() {
    CombinedLogger::init(vec![
        #[cfg(feature = "termcolor")]
        TermLogger::new(
            LevelFilter::Warn,
            Config::default(),
            TerminalMode::Mixed,
            ColorChoice::Auto,
        ),
        #[cfg(not(feature = "termcolor"))]
        SimpleLogger::new(LevelFilter::Warn, Config::default()),
        WriteLogger::new(
            LevelFilter::Info,
            Config::default(),
            File::create("my_rust_binary.log").unwrap(),
        ),
    ])
    .unwrap();

    error!("Bright red error");
    info!("This only appears in the log file");
    debug!("This level is currently not enabled for any logger");
}

Trait Implementations§

source§

impl<W: Write + Send + 'static> Log for WriteLogger<W>

source§

fn enabled(&self, metadata: &Metadata<'_>) -> bool

Determines if a log message with the specified metadata would be logged. Read more
source§

fn log(&self, record: &Record<'_>)

Logs the Record. Read more
source§

fn flush(&self)

Flushes any buffered records.
source§

impl<W: Write + Send + 'static> SharedLogger for WriteLogger<W>

source§

fn level(&self) -> LevelFilter

Returns the set Level for this Logger Read more
source§

fn config(&self) -> Option<&Config>

Inspect the config of a running Logger Read more
source§

fn as_log(self: Box<Self>) -> Box<dyn Log>

Returns the logger as a Log trait object

Auto Trait Implementations§

§

impl<W> RefUnwindSafe for WriteLogger<W>

§

impl<W> Send for WriteLogger<W>

§

impl<W> Sync for WriteLogger<W>

§

impl<W> Unpin for WriteLogger<W>
where W: Unpin,

§

impl<W> UnwindSafe for WriteLogger<W>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.