1extern crate astrolog;
21
22use std::env;
23
24use serde_json::json;
25
26use astrolog::handler::console::ConsoleHandler;
27use astrolog::prelude::*;
28
29fn main() {
30 let logger = Logger::new().with_handler(ConsoleHandler::new().with_levels_range(Level::Info, Level::Emergency));
31
32 logger.info("With no context");
33
34 let logger = logger.with_global("OS", env::consts::OS);
35
36 logger.debug("A debug message"); logger.info("A simple info logging");
38
39 logger
40 .with("line", line!())
41 .with("file", file!())
42 .error("An error with some debug info");
43
44 logger
45 .with_multi(json!({
46 "line": line!(),
47 "file": file!(),
48 }))
49 .critical("This is dangerous!");
50
51 let logger = Logger::new()
52 .with_handler(ConsoleHandler::new()
53 .with_formatter(LineFormatter::new()
54 .with_date_format(DateFormat::Email)
55 .with_level_format(LevelFormat::LowerShort)
56 )
57 );
58
59 logger
60 .with("line", line!())
61 .with("file", file!())
62 .error("An error with custom formatting");
63
64}