3 unstable releases
0.2.1 | Sep 12, 2023 |
---|---|
0.1.1 | Sep 7, 2023 |
0.1.0 | Sep 7, 2023 |
#870 in Asynchronous
4KB
tracing-orchestra
Have you ever found it tedious to attach #[tracing::instrument]
to each function one by one? That's where #[tracing_orchestra::instrument]
comes in!
#[tracing_orchestra::orchestra]
allows you to attach what would have been #[tracing::instrument]
on each function, to the impl
block instead.
Installation
[dependencies]
tracing-orchestra = "0.1"
How to use
use tracing_orchestra::orchestra;
// default instrument value is here!
#[orchestra::(level = "trace")]
impl Foo {
fn bar() {}
// override tracing::instrument
#[tracing::instrument(level = "info")]
fn baz() {}
}
Features
- Batch assignment of
#[tracing::instrument]
to functions. - Set default values for
#[tracing::instrument]
.- Set default values for
#[tracing::instrument]
. - Set values to override for
#[tracing::instrument]
.
- Set default values for
- Automatic implementation of Debug and Display
- Setup using the standard Derive macro for Debug and Display.
- Configuration when you want to hide some values during tracing (e.g., sensitive information such as access tokens)
Why "orchestra"?
Because there are a lot of instruments.
License
MIT
Dependencies
~7MB
~115K SLoC