1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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
//! 事件日志记录类型
//!
//!
//! # Examples
//!
//! ```
//! use summer_boot::log;
//!
//! log::start();
//!
//! log::info!("Hello James");
//! log::debug!("{} eat rice", "James");
//! log::error!("this is an error!");
//! log::info!("{} are win", "test", {
//!     key_1: "value1",
//!     key_2: "value2",
//! });
//! ```

pub use kv_log_macro::{debug, error, info, log, trace, warn};
pub use kv_log_macro::{max_level, Level};

mod logging_system;

pub use femme::LevelFilter;

pub use logging_system::LoggingSystem;

/// 开启日志记录
pub fn start() {
    femme::start();
    crate::log::info!("Logger started");
    crate::log::info!("
    _____                                       ____              _   
   / ____|                                     |  _ \\            | |  
  | (___  _   _ _ __ ___  _ __ ___   ___ _ __  | |_) | ___   ___ | |_ 
   \\___ \\| | | | '_ ` _ \\| '_ ` _ \\ / _ \\ '__| |  _ < / _ \\ / _ \\| __|
   ____) | |_| | | | | | | | | | | |  __/ |    | |_) | (_) | (_) | |_ 
  |_____/ \\__,_|_| |_| |_|_| |_| |_|\\___|_|    |____/ \\___/ \\___/ \\__|
                                                                      
  :: Summer Boot Version::             (1.4.0)                                                                    
 ");
}

/// 使用日志级别开启日志记录
pub fn with_level(level: LevelFilter) {
    femme::with_level(level);
    crate::log::info!("Logger started", { level: format!("{}", level) });
    crate::log::info!("
    _____                                       ____              _   
   / ____|                                     |  _ \\            | |  
  | (___  _   _ _ __ ___  _ __ ___   ___ _ __  | |_) | ___   ___ | |_ 
   \\___ \\| | | | '_ ` _ \\| '_ ` _ \\ / _ \\ '__| |  _ < / _ \\ / _ \\| __|
   ____) | |_| | | | | | | | | | | |  __/ |    | |_) | (_) | (_) | |_ 
  |_____/ \\__,_|_| |_| |_|_| |_| |_|\\___|_|    |____/ \\___/ \\___/ \\__|
                                                                      
  :: Summer Boot Version::             (1.4.0)                                                                    
 ");
}