mirror of
https://github.com/jht5945/rust_util.git
synced 2025-12-27 15:40:03 +08:00
48 lines
1.1 KiB
Rust
48 lines
1.1 KiB
Rust
#[macro_use] extern crate rust_util;
|
|
|
|
use std::sync::mpsc::channel;
|
|
use std::thread;
|
|
use rust_util::{XResult, SimpleError};
|
|
use rust_util::util_msg::{set_logger_sender, set_logger_std_out};
|
|
|
|
// cargo run --example log
|
|
fn main() -> XResult<()> {
|
|
let (sender, receiver) = channel::<String>();
|
|
set_logger_sender(sender);
|
|
|
|
let _t = thread::spawn(move || {
|
|
loop {
|
|
let msg = receiver.recv();
|
|
println!("[RECV]: {:?}", msg)
|
|
}
|
|
});
|
|
|
|
std::env::set_var("LOGGER_LEVEL", "*");
|
|
println!(r##"env LOGGER_LEVEL set to:
|
|
debug or *
|
|
info or ? -- default
|
|
ok or #
|
|
warn or !
|
|
error or ^"##);
|
|
|
|
debugging!("Hello {}", "world!");
|
|
information!("Hello {}", "world!");
|
|
success!("Hello {}", "world!");
|
|
warning!("Hello {}", "world!");
|
|
failure!("Hello {}", "world!");
|
|
|
|
println!("{:?}", test_opt_result());
|
|
|
|
set_logger_std_out(false);
|
|
information!("Std err!");
|
|
warning!("Std err!");
|
|
set_logger_std_out(true);
|
|
|
|
simple_error!("helloworld {}", 1)
|
|
}
|
|
|
|
fn test_opt_result() -> XResult<()> {
|
|
let a = Err(SimpleError::new("test".into()));
|
|
opt_result!(a, "error: {}")
|
|
}
|