Struct ringlog::NopLogBuilder
source · pub struct NopLogBuilder {}
Expand description
A type to construct a basic RingLog
which drops all log messages.
Implementations§
source§impl NopLogBuilder
impl NopLogBuilder
sourcepub fn new() -> Self
pub fn new() -> Self
Create a new log builder.
Examples found in repository?
examples/demo-multi.rs (line 38)
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
fn main() {
let default = LogBuilder::new()
.output(Box::new(Stdout::new()))
.build()
.expect("failed to initialize default log");
let command = LogBuilder::new()
.output(Box::new(
File::new("command.log", "command.old", 100).expect("failed to create file log"),
))
.format(klog_format)
.build()
.expect("failed to initialize command log");
let noplog = NopLogBuilder::new().build();
let mut drain = MultiLogBuilder::new()
.default(default)
.add_target("command", command)
.add_target("noplog", noplog)
.build()
.start();
std::thread::spawn(move || loop {
let _ = drain.flush();
std::thread::sleep(Duration::from_millis(100));
});
error!("error");
warn!("warning");
info!("info");
debug!("debug");
trace!("trace");
command!("\"get 0\" 0 0");
noplog!("this won't get displayed");
std::thread::sleep(Duration::from_millis(1000));
}
sourcepub fn build(self) -> RingLog
pub fn build(self) -> RingLog
Consumes the builder and returns an RingLog
.
Examples found in repository?
examples/demo-multi.rs (line 38)
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
fn main() {
let default = LogBuilder::new()
.output(Box::new(Stdout::new()))
.build()
.expect("failed to initialize default log");
let command = LogBuilder::new()
.output(Box::new(
File::new("command.log", "command.old", 100).expect("failed to create file log"),
))
.format(klog_format)
.build()
.expect("failed to initialize command log");
let noplog = NopLogBuilder::new().build();
let mut drain = MultiLogBuilder::new()
.default(default)
.add_target("command", command)
.add_target("noplog", noplog)
.build()
.start();
std::thread::spawn(move || loop {
let _ = drain.flush();
std::thread::sleep(Duration::from_millis(100));
});
error!("error");
warn!("warning");
info!("info");
debug!("debug");
trace!("trace");
command!("\"get 0\" 0 0");
noplog!("this won't get displayed");
std::thread::sleep(Duration::from_millis(1000));
}
Trait Implementations§
source§impl Default for NopLogBuilder
impl Default for NopLogBuilder
source§fn default() -> NopLogBuilder
fn default() -> NopLogBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for NopLogBuilder
impl RefUnwindSafe for NopLogBuilder
impl Send for NopLogBuilder
impl Sync for NopLogBuilder
impl Unpin for NopLogBuilder
impl UnwindSafe for NopLogBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more