• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*!
2 Using `env_logger::Logger` and the `log::Log` trait directly.
3 
4 This example doesn't rely on environment variables, or having a static logger installed.
5 */
6 
7 use env_logger::{Builder, WriteStyle};
8 
9 use log::{Level, LevelFilter, Log, MetadataBuilder, Record};
10 
record() -> Record<'static>11 fn record() -> Record<'static> {
12     let error_metadata = MetadataBuilder::new()
13         .target("myApp")
14         .level(Level::Error)
15         .build();
16 
17     Record::builder()
18         .metadata(error_metadata)
19         .args(format_args!("Error!"))
20         .line(Some(433))
21         .file(Some("app.rs"))
22         .module_path(Some("server"))
23         .build()
24 }
25 
main()26 fn main() {
27     let stylish_logger = Builder::new()
28         .filter(None, LevelFilter::Error)
29         .write_style(WriteStyle::Always)
30         .build();
31 
32     let unstylish_logger = Builder::new()
33         .filter(None, LevelFilter::Error)
34         .write_style(WriteStyle::Never)
35         .build();
36 
37     stylish_logger.log(&record());
38     unstylish_logger.log(&record());
39 }
40