Struct tracing_subscriber::filter::Builder
source · [−]pub struct Builder { /* private fields */ }
Implementations
sourceimpl Builder
impl Builder
sourcepub fn with_regex(self, regex: bool) -> Self
Available on crate features env-filter
and std
only.
pub fn with_regex(self, regex: bool) -> Self
env-filter
and std
only.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.
sourcepub fn with_default_directive(self, default_directive: Directive) -> Self
Available on crate features env-filter
and std
only.
pub fn with_default_directive(self, default_directive: Directive) -> Self
env-filter
and std
only.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.
Examples
If 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");
// The default directive is *not* used:
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");
sourcepub fn with_env_var(self, var: impl ToString) -> Self
Available on crate features env-filter
and std
only.
pub fn with_env_var(self, var: impl ToString) -> Self
env-filter
and std
only.Sets the name of the environment variable used by the from_env
,
from_env_lossy
, and try_from_env
methods.
By default, this is the value of EnvFilter::DEFAULT_ENV
(RUST_LOG
).
sourcepub fn parse_lossy<S: AsRef<str>>(&self, dirs: S) -> EnvFilterⓘNotable traits for EnvFilterimpl<S: Subscriber> Layer<S> for EnvFilterimpl<S> Filter<S> for EnvFilter
Available on crate features env-filter
and std
only.
pub fn parse_lossy<S: AsRef<str>>(&self, dirs: S) -> EnvFilterⓘNotable traits for EnvFilterimpl<S: Subscriber> Layer<S> for EnvFilterimpl<S> Filter<S> for EnvFilter
env-filter
and std
only.Returns a new EnvFilter
from the directives in the given string,
ignoring any that are invalid.
sourcepub fn parse<S: AsRef<str>>(&self, dirs: S) -> Result<EnvFilter, ParseError>
Available on crate features env-filter
and std
only.
pub fn parse<S: AsRef<str>>(&self, dirs: S) -> Result<EnvFilter, ParseError>
env-filter
and std
only.Returns a new EnvFilter
from the directives in the given string,
or an error if any are invalid.
sourcepub fn from_env_lossy(&self) -> EnvFilterⓘNotable traits for EnvFilterimpl<S: Subscriber> Layer<S> for EnvFilterimpl<S> Filter<S> for EnvFilter
Available on crate features env-filter
and std
only.
pub fn from_env_lossy(&self) -> EnvFilterⓘNotable traits for EnvFilterimpl<S: Subscriber> Layer<S> for EnvFilterimpl<S> Filter<S> for EnvFilter
env-filter
and std
only.Returns a new EnvFilter
from the directives in the configured
environment variable, ignoring any directives that are invalid.
sourcepub fn from_env(&self) -> Result<EnvFilter, FromEnvError>
Available on crate features env-filter
and std
only.
pub fn from_env(&self) -> Result<EnvFilter, FromEnvError>
env-filter
and std
only.Returns a new EnvFilter
from the directives in the in the configured
environment variable, or an error if the environment variable is not set
or contains invalid directives.
sourcepub fn try_from_env(&self) -> Result<EnvFilter, FromEnvError>
Available on crate features env-filter
and std
only.
pub fn try_from_env(&self) -> Result<EnvFilter, FromEnvError>
env-filter
and std
only.Returns a new EnvFilter
from the directives in the in the configured
environment variable, or an error if the environment variable is not set
or contains invalid directives.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl UnwindSafe for Builder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more