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
|
/*!
Using `env_logger::Logger` and the `log::Log` trait directly.
This example doesn't rely on environment variables, or having a static logger installed.
*/
use env_logger::{Builder, WriteStyle};
use log::{Level, LevelFilter, Log, MetadataBuilder, Record};
#[cfg(feature = "kv")]
static KVS: (&str, &str) = ("test", "something");
fn record() -> Record<'static> {
let error_metadata = MetadataBuilder::new()
.target("myApp")
.level(Level::Error)
.build();
let mut builder = Record::builder();
builder
.metadata(error_metadata)
.args(format_args!("Error!"))
.line(Some(433))
.file(Some("app.rs"))
.module_path(Some("server"));
#[cfg(feature = "kv")]
{
builder.key_values(&KVS);
}
builder.build()
}
fn main() {
let stylish_logger = Builder::new()
.filter(None, LevelFilter::Error)
.write_style(WriteStyle::Always)
.build();
let unstylish_logger = Builder::new()
.filter(None, LevelFilter::Error)
.write_style(WriteStyle::Never)
.build();
stylish_logger.log(&record());
unstylish_logger.log(&record());
}
|