[−][src]Function cursive_flexi_logger_view::cursive_flexi_logger
pub fn cursive_flexi_logger(siv: &Cursive) -> Box<CursiveLogWriter>
Creates a new LogWriter
instance for the FlexiLoggerView
. Use this to
register a cursive log writer in flexi_logger
.
Although, it is safe to create multiple cursive log writers, it may not be
what you want. Each instance of a cursive log writer replicates the log
messages in to FlexiLoggerView
. When registering multiple cursive log
writer instances, a single log messages will be duplicated by each log
writer.
Registering the cursive log writer in flexi_logger
use cursive::Cursive; use flexi_logger::{Logger, LogTarget}; fn main() { // we need to initialize cursive first, as the cursive-flexi-logger // needs a cursive callback sink to notify cursive about screen refreshs // when a new log message arrives let mut siv = Cursive::default(); Logger::with_env_or_str("trace") .log_target(LogTarget::FileAndWriter( cursive_flexi_logger_view::cursive_flexi_logger(&siv), // register log writer )) .directory("logs") .suppress_timestamp() .format(flexi_logger::colored_with_thread) .start() .expect("failed to initialize logger!"); }