1336d762aSopenharmony_ci/*! 2336d762aSopenharmony_ciUsing `env_logger::Logger` and the `log::Log` trait directly. 3336d762aSopenharmony_ci 4336d762aSopenharmony_ciThis example doesn't rely on environment variables, or having a static logger installed. 5336d762aSopenharmony_ci*/ 6336d762aSopenharmony_ci 7336d762aSopenharmony_ciuse env_logger::{Builder, WriteStyle}; 8336d762aSopenharmony_ci 9336d762aSopenharmony_ciuse log::{Level, LevelFilter, Log, MetadataBuilder, Record}; 10336d762aSopenharmony_ci 11336d762aSopenharmony_cifn record() -> Record<'static> { 12336d762aSopenharmony_ci let error_metadata = MetadataBuilder::new() 13336d762aSopenharmony_ci .target("myApp") 14336d762aSopenharmony_ci .level(Level::Error) 15336d762aSopenharmony_ci .build(); 16336d762aSopenharmony_ci 17336d762aSopenharmony_ci Record::builder() 18336d762aSopenharmony_ci .metadata(error_metadata) 19336d762aSopenharmony_ci .args(format_args!("Error!")) 20336d762aSopenharmony_ci .line(Some(433)) 21336d762aSopenharmony_ci .file(Some("app.rs")) 22336d762aSopenharmony_ci .module_path(Some("server")) 23336d762aSopenharmony_ci .build() 24336d762aSopenharmony_ci} 25336d762aSopenharmony_ci 26336d762aSopenharmony_cifn main() { 27336d762aSopenharmony_ci let stylish_logger = Builder::new() 28336d762aSopenharmony_ci .filter(None, LevelFilter::Error) 29336d762aSopenharmony_ci .write_style(WriteStyle::Always) 30336d762aSopenharmony_ci .build(); 31336d762aSopenharmony_ci 32336d762aSopenharmony_ci let unstylish_logger = Builder::new() 33336d762aSopenharmony_ci .filter(None, LevelFilter::Error) 34336d762aSopenharmony_ci .write_style(WriteStyle::Never) 35336d762aSopenharmony_ci .build(); 36336d762aSopenharmony_ci 37336d762aSopenharmony_ci stylish_logger.log(&record()); 38336d762aSopenharmony_ci unstylish_logger.log(&record()); 39336d762aSopenharmony_ci} 40