pub struct Builder { }
Available on crate features env-filter
and std
only.
A builder for constructing new EnvFilter
s.
Sets whether span field values can be matched with regular expressions.
If this is true
, field filter directives will be interpreted as regular expressions if they are not able to be interpreted as a bool
, i64
, u64
, or f64
literal. If this is false,
those field values will be interpreted as literal std::fmt::Debug
output instead.
By default, regular expressions are enabled.
Note: when EnvFilter
s are constructed from untrusted inputs, disabling regular expressions is strongly encouraged.
Sets a default [filtering directive] that will be added to the filter if the parsed string or environment variable contains no filter directives.
By default, there is no default directive.
§ExamplesIf parse
, parse_lossy
, from_env
, or from_env_lossy
are called with an empty string or environment variable, the default directive is used instead:
use tracing_subscriber::filter::{EnvFilter, LevelFilter};
let filter = EnvFilter::builder()
.with_default_directive(LevelFilter::INFO.into())
.parse("")?;
assert_eq!(format!("{}", filter), "info");
Note that the lossy
variants (parse_lossy
and from_env_lossy
) will ignore any invalid directives. If all directives in a filter string or environment variable are invalid, those methods will also use the default directive:
use tracing_subscriber::filter::{EnvFilter, LevelFilter};
let filter = EnvFilter::builder()
.with_default_directive(LevelFilter::INFO.into())
.parse_lossy("some_target=fake level,foo::bar=lolwut");
assert_eq!(format!("{}", filter), "info");
If the string or environment variable contains valid filtering directives, the default directive is not used:
use tracing_subscriber::filter::{EnvFilter, LevelFilter};
let filter = EnvFilter::builder()
.with_default_directive(LevelFilter::INFO.into())
.parse_lossy("foo=trace");
assert_eq!(format!("{}", filter), "foo=trace");
Parsing a more complex default directive from a string:
use tracing_subscriber::filter::{EnvFilter, LevelFilter};
let default = "myapp=debug".parse()
.expect("hard-coded default directive should be valid");
let filter = EnvFilter::builder()
.with_default_directive(default)
.parse("")?;
assert_eq!(format!("{}", filter), "myapp=debug");
Source Source
Returns a new EnvFilter
from the directives in the given string, ignoring any that are invalid.
Returns a new EnvFilter
from the directives in the given string, or an error if any are invalid.
Returns a new EnvFilter
from the directives in the configured environment variable, ignoring any directives that are invalid.
Returns a new EnvFilter
from the directives in the configured environment variable. If the environment variable is unset, no directive is added.
An error is returned if the environment contains invalid directives.
SourceReturns a new EnvFilter
from the directives in the configured environment variable, or an error if the environment variable is not set or contains invalid directives.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4