Struct env_logger::Env
source · pub struct Env<'a> { /* private fields */ }
Expand description
Set of environment variables to configure from.
§Default environment variables
By default, the Env
will read the following environment variables:
RUST_LOG
: the level filterRUST_LOG_STYLE
: whether or not to print styles with records.
These sources can be configured using the builder methods on Env
.
Implementations§
source§impl<'a> Env<'a>
impl<'a> Env<'a>
sourcepub fn filter<E>(self, filter_env: E) -> Self
pub fn filter<E>(self, filter_env: E) -> Self
Specify an environment variable to read the filter from.
Examples found in repository?
More examples
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
fn init_logger() {
let env = Env::default()
.filter("MY_LOG_LEVEL")
.write_style("MY_LOG_STYLE");
Builder::from_env(env)
.format(|buf, record| {
// We are reusing `anstyle` but there are `anstyle-*` crates to adapt it to your
// preferred styling crate.
let warn_style = buf.default_level_style(log::Level::Warn);
let timestamp = buf.timestamp();
writeln!(
buf,
"My formatted log ({timestamp}): {warn_style}{}{warn_style:#}",
record.args()
)
})
.init();
}
sourcepub fn filter_or<E, V>(self, filter_env: E, default: V) -> Self
pub fn filter_or<E, V>(self, filter_env: E, default: V) -> Self
Specify an environment variable to read the filter from.
If the variable is not set, the default value will be used.
Examples found in repository?
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
fn main() {
// The `Env` lets us tweak what the environment
// variables to read are and what the default
// value is if they're missing
let env = Env::default()
.filter_or("MY_LOG_LEVEL", "trace")
.write_style_or("MY_LOG_STYLE", "always");
env_logger::init_from_env(env);
trace!("some trace log");
debug!("some debug log");
info!("some information log");
warn!("some warning log");
error!("some error log");
}
sourcepub fn default_filter_or<V>(self, default: V) -> Self
pub fn default_filter_or<V>(self, default: V) -> Self
Use the default environment variable to read the filter from.
If the variable is not set, the default value will be used.
sourcepub fn write_style<E>(self, write_style_env: E) -> Self
pub fn write_style<E>(self, write_style_env: E) -> Self
Specify an environment variable to read the style from.
Examples found in repository?
More examples
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
fn init_logger() {
let env = Env::default()
.filter("MY_LOG_LEVEL")
.write_style("MY_LOG_STYLE");
Builder::from_env(env)
.format(|buf, record| {
// We are reusing `anstyle` but there are `anstyle-*` crates to adapt it to your
// preferred styling crate.
let warn_style = buf.default_level_style(log::Level::Warn);
let timestamp = buf.timestamp();
writeln!(
buf,
"My formatted log ({timestamp}): {warn_style}{}{warn_style:#}",
record.args()
)
})
.init();
}
sourcepub fn write_style_or<E, V>(self, write_style_env: E, default: V) -> Self
pub fn write_style_or<E, V>(self, write_style_env: E, default: V) -> Self
Specify an environment variable to read the style from.
If the variable is not set, the default value will be used.
Examples found in repository?
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
fn main() {
// The `Env` lets us tweak what the environment
// variables to read are and what the default
// value is if they're missing
let env = Env::default()
.filter_or("MY_LOG_LEVEL", "trace")
.write_style_or("MY_LOG_STYLE", "always");
env_logger::init_from_env(env);
trace!("some trace log");
debug!("some debug log");
info!("some information log");
warn!("some warning log");
error!("some error log");
}
sourcepub fn default_write_style_or<V>(self, default: V) -> Self
pub fn default_write_style_or<V>(self, default: V) -> Self
Use the default environment variable to read the style from.
If the variable is not set, the default value will be used.