Struct tracing_subscriber::filter::LevelFilter
source · pub struct LevelFilter(/* private fields */);
Expand description
A filter comparable to a verbosity Level
.
If a Level
is considered less than a LevelFilter
, it should be
considered enabled; if greater than or equal to the LevelFilter
,
that level is disabled. See LevelFilter::current
for more
details.
Note that this is essentially identical to the Level
type, but with the
addition of an OFF
level that completely disables all trace
instrumentation.
See the documentation for the Level
type to see how Level
s
and LevelFilter
s interact.
Implementations§
source§impl LevelFilter
impl LevelFilter
sourcepub const OFF: LevelFilter = _
pub const OFF: LevelFilter = _
The “off” level.
Designates that trace instrumentation should be completely disabled.
sourcepub const ERROR: LevelFilter = _
pub const ERROR: LevelFilter = _
The “error” level.
Designates very serious errors.
sourcepub const WARN: LevelFilter = _
pub const WARN: LevelFilter = _
The “warn” level.
Designates hazardous situations.
sourcepub const INFO: LevelFilter = _
pub const INFO: LevelFilter = _
The “info” level.
Designates useful information.
sourcepub const DEBUG: LevelFilter = _
pub const DEBUG: LevelFilter = _
The “debug” level.
Designates lower priority information.
sourcepub const TRACE: LevelFilter = _
pub const TRACE: LevelFilter = _
The “trace” level.
Designates very low priority, often extremely verbose, information.
sourcepub const fn from_level(level: Level) -> LevelFilter ⓘ
pub const fn from_level(level: Level) -> LevelFilter ⓘ
Returns a LevelFilter
that enables spans and events with verbosity up
to and including level
.
sourcepub const fn into_level(self) -> Option<Level> ⓘ
pub const fn into_level(self) -> Option<Level> ⓘ
sourcepub fn current() -> LevelFilter ⓘ
pub fn current() -> LevelFilter ⓘ
Returns a LevelFilter
that matches the most verbose Level
that any
currently active Subscriber
will enable.
User code should treat this as a hint. If a given span or event has a
level higher than the returned LevelFilter
, it will not be enabled.
However, if the level is less than or equal to this value, the span or
event is not guaranteed to be enabled; the subscriber will still
filter each callsite individually.
Therefore, comparing a given span or event’s level to the returned
LevelFilter
can be used for determining if something is
disabled, but should not be used for determining if something is
enabled.
Trait Implementations§
source§impl AsLog for LevelFilter
impl AsLog for LevelFilter
§type Log = LevelFilter
type Log = LevelFilter
log
type that this type can be converted into.source§impl Clone for LevelFilter
impl Clone for LevelFilter
source§impl Debug for LevelFilter
impl Debug for LevelFilter
source§impl Display for LevelFilter
impl Display for LevelFilter
source§impl<S> Filter<S> for LevelFilter
Available on crate features registry
and std
only.
impl<S> Filter<S> for LevelFilter
registry
and std
only.source§fn enabled(&self, meta: &Metadata<'_>, _: &Context<'_, S>) -> bool
fn enabled(&self, meta: &Metadata<'_>, _: &Context<'_, S>) -> bool
true
if this layer is interested in a span or event with the
given Metadata
in the current Context
, similarly to
Subscriber::enabled
. Read moresource§fn callsite_enabled(&self, meta: &'static Metadata<'static>) -> Interest
fn callsite_enabled(&self, meta: &'static Metadata<'static>) -> Interest
source§fn max_level_hint(&self) -> Option<LevelFilter> ⓘ
fn max_level_hint(&self) -> Option<LevelFilter> ⓘ
source§fn event_enabled(&self, event: &Event<'_>, cx: &Context<'_, S>) -> bool
fn event_enabled(&self, event: &Event<'_>, cx: &Context<'_, S>) -> bool
Layer]'s [
on_event], to determine if
on_event` should be called. Read moresource§fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, S>)
fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, S>)
source§fn on_enter(&self, id: &Id, ctx: Context<'_, S>)
fn on_enter(&self, id: &Id, ctx: Context<'_, S>)
source§impl From<Level> for LevelFilter
impl From<Level> for LevelFilter
source§impl From<LevelFilter> for Directive
Available on crate features env-filter
and std
only.
impl From<LevelFilter> for Directive
env-filter
and std
only.source§fn from(level: LevelFilter) -> Self
fn from(level: LevelFilter) -> Self
source§impl FromStr for LevelFilter
impl FromStr for LevelFilter
§type Err = ParseLevelFilterError
type Err = ParseLevelFilterError
source§fn from_str(from: &str) -> Result<LevelFilter, <LevelFilter as FromStr>::Err>
fn from_str(from: &str) -> Result<LevelFilter, <LevelFilter as FromStr>::Err>
s
to return a value of this type. Read moresource§impl Hash for LevelFilter
impl Hash for LevelFilter
source§impl<S: Subscriber> Layer<S> for LevelFilter
impl<S: Subscriber> Layer<S> for LevelFilter
source§fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest
fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest
Subscriber::register_callsite
. Read moresource§fn enabled(&self, metadata: &Metadata<'_>, _: Context<'_, S>) -> bool
fn enabled(&self, metadata: &Metadata<'_>, _: Context<'_, S>) -> bool
true
if this layer is interested in a span or event with the
given metadata
in the current Context
, similarly to
Subscriber::enabled
. Read moresource§fn on_register_dispatch(&self, subscriber: &Dispatch)
fn on_register_dispatch(&self, subscriber: &Dispatch)
Subscriber
. Read moresource§fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, S>)
fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, S>)
Attributes
and Id
.source§fn on_record(&self, _span: &Id, _values: &Record<'_>, _ctx: Context<'_, S>)
fn on_record(&self, _span: &Id, _values: &Record<'_>, _ctx: Context<'_, S>)
Id
recorded the given
values
.source§fn on_follows_from(&self, _span: &Id, _follows: &Id, _ctx: Context<'_, S>)
fn on_follows_from(&self, _span: &Id, _follows: &Id, _ctx: Context<'_, S>)
span
recorded that it
follows from the span with the ID follows
.source§fn event_enabled(&self, _event: &Event<'_>, _ctx: Context<'_, S>) -> bool
fn event_enabled(&self, _event: &Event<'_>, _ctx: Context<'_, S>) -> bool
on_event
, to determine if on_event
should be called.source§fn on_event(&self, _event: &Event<'_>, _ctx: Context<'_, S>)
fn on_event(&self, _event: &Event<'_>, _ctx: Context<'_, S>)
source§fn on_enter(&self, _id: &Id, _ctx: Context<'_, S>)
fn on_enter(&self, _id: &Id, _ctx: Context<'_, S>)
source§fn on_exit(&self, _id: &Id, _ctx: Context<'_, S>)
fn on_exit(&self, _id: &Id, _ctx: Context<'_, S>)
source§fn on_close(&self, _id: Id, _ctx: Context<'_, S>)
fn on_close(&self, _id: Id, _ctx: Context<'_, S>)
source§fn on_id_change(&self, _old: &Id, _new: &Id, _ctx: Context<'_, S>)
fn on_id_change(&self, _old: &Id, _new: &Id, _ctx: Context<'_, S>)
source§fn and_then<L>(self, layer: L) -> Layered<L, Self, S> ⓘ
fn and_then<L>(self, layer: L) -> Layered<L, Self, S> ⓘ
Layer
, returning a Layered
struct implementing Layer
. Read moresource§fn with_subscriber(self, inner: S) -> Layered<Self, S> ⓘwhere
Self: Sized,
fn with_subscriber(self, inner: S) -> Layered<Self, S> ⓘwhere
Self: Sized,
Layer
with the given Subscriber
, returning a
Layered
struct that implements Subscriber
. Read moresource§fn with_filter<F>(self, filter: F) -> Filtered<Self, F, S> ⓘ
fn with_filter<F>(self, filter: F) -> Filtered<Self, F, S> ⓘ
registry
and std
only.source§impl Ord for LevelFilter
impl Ord for LevelFilter
source§fn cmp(&self, other: &LevelFilter) -> Ordering
fn cmp(&self, other: &LevelFilter) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq<Level> for LevelFilter
impl PartialEq<Level> for LevelFilter
source§impl PartialEq for LevelFilter
impl PartialEq for LevelFilter
source§fn eq(&self, other: &LevelFilter) -> bool
fn eq(&self, other: &LevelFilter) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<Level> for LevelFilter
impl PartialOrd<Level> for LevelFilter
source§impl PartialOrd for LevelFilter
impl PartialOrd for LevelFilter
source§fn partial_cmp(&self, other: &LevelFilter) -> Option<Ordering> ⓘ
fn partial_cmp(&self, other: &LevelFilter) -> Option<Ordering> ⓘ
source§fn lt(&self, other: &LevelFilter) -> bool
fn lt(&self, other: &LevelFilter) -> bool
source§fn le(&self, other: &LevelFilter) -> bool
fn le(&self, other: &LevelFilter) -> bool
self
and other
) and is used by the <=
operator. Read moresource§fn gt(&self, other: &LevelFilter) -> bool
fn gt(&self, other: &LevelFilter) -> bool
impl Copy for LevelFilter
impl Eq for LevelFilter
impl StructuralEq for LevelFilter
impl StructuralPartialEq for LevelFilter
Auto Trait Implementations§
impl RefUnwindSafe for LevelFilter
impl Send for LevelFilter
impl Sync for LevelFilter
impl Unpin for LevelFilter
impl UnwindSafe for LevelFilter
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<F, S> FilterExt<S> for Fwhere
F: Filter<S>,
impl<F, S> FilterExt<S> for Fwhere
F: Filter<S>,
source§fn and<B>(self, other: B) -> And<Self, B, S> ⓘ
fn and<B>(self, other: B) -> And<Self, B, S> ⓘ
registry
and std
only.source§fn or<B>(self, other: B) -> Or<Self, B, S> ⓘ
fn or<B>(self, other: B) -> Or<Self, B, S> ⓘ
registry
and std
only.