github tokio-rs/tracing tracing-subscriber-0.2.21
tracing-subscriber 0.2.21

This release introduces the Filter trait, a new API for per-layer
filtering
. This allows controlling which spans and events are
recorded by various layers individually, rather than globally.

In addition, it adds a new Targets filter, which provides a
lighter-weight version of the filtering provided by EnvFilter, as
well as other smaller API improvements and fixes.

Deprecated

  • registry: SpanRef::parent_id, which cannot properly support
    per-layer filtering. Use .parent().map(SpanRef::id) instead.
    (#1523)

Fixed

  • layer Context methods that are provided when the Subscriber
    implements LookupSpan no longer require the "registry" feature flag
    (#1525)
  • layer fmt::Debug implementation for Layered no longer requires
    the S type parameter to implement Debug (#1528)

Added

  • registry: Filter trait, Filtered type, Layer::with_filter
    method, and other APIs for per-layer filtering (#1523)
  • filter: FilterFn and DynFilterFn types that implement global
    (Layer) and per-layer (Filter) filtering for closures and function
    pointers (#1523)
  • filter: Targets filter, which implements a lighter-weight form
    of EnvFilter-like filtering (#1550)
  • env-filter: Added support for filtering on floating-point values
    (#1507)
  • layer: Layer::on_layer callback, called when layering the
    Layer onto a Subscriber (#1523)
  • layer: Layer implementations for Box<L> and Arc<L> where L: Layer (#1536)
  • layer: Layer implementations for Box<dyn Layer> and
    Arc<dyn Layer> (#1536)
  • A number of small documentation fixes and improvements (#1553,
    #1544, #1539, #1524)

Special thanks to new contributors @jsgf and @maxburke for contributing
to this release!

Don't miss a new tracing release

NewReleases is sending notifications on new releases.