tracing-config 0.2.2

Provides a configuration file approach to initializing and configuring tracing and tracing-subscriber
Documentation
# Configuration file

To fully understand the nomenclature of the configuration file, a thorough read of the documentation
on both [`tracing`] and [`tracing-subscriber`] crates is required; however, here is a brief summary:
- `writer` is used by a `layer` and is responsible to write the data incoming form a `layer` to a
  destination, which can be anything, e.g.(standard_output, file, network, database, etc...).
  A writer as a component in the system is not strictly necessary since a `layer` could do the
  writing itself.
- `layer` is something that receives structured events and spans (i.e.: all the information that
  [`event!`] and [`span!`] macro calls contain) and is responsible to either ignore such events
  and spans or format them and either directly write somewhere or send the formatted events and
  spans to a `writer`.
- `filter` is a special kind of `layer` with the sole purpose of filtering out events and spans.
  A filter is exclusive, in that it allows everything by default unless there is an exclusion rule.

The `"flow"` that events and spans usually go trough is : `filter`->`layer`->`writer`.

You can find a detailed example and how the configuration file works
in the docs for the [`config::model module`].  
For a full understanding of the configuration file structure, start by reading the docs for the root
level configuration structure i.e.: a [`TracingConfig`] structure.