Skip to content

Commit 2879ec0

Browse files
FroVolodFroVolod
andauthored
feat: added flexibility in using "setup_tracing" (#550)
Co-authored-by: FroVolod <frol_off@meta.ua>
1 parent d55d059 commit 2879ec0

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

src/lib.rs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,13 @@ pub enum Verbosity {
3030
}
3131

3232
pub fn setup_tracing(verbosity: Verbosity) -> CliResult {
33+
setup_tracing_with_extra_directives(verbosity, &[])
34+
}
35+
36+
pub fn setup_tracing_with_extra_directives(
37+
verbosity: Verbosity,
38+
extra_directives: &[&str],
39+
) -> CliResult {
3340
use tracing::{Event, Level, Subscriber};
3441
use tracing_indicatif::style::ProgressStyle;
3542
use tracing_indicatif::IndicatifLayer;
@@ -75,10 +82,13 @@ pub fn setup_tracing(verbosity: Verbosity) -> CliResult {
7582

7683
match verbosity {
7784
Verbosity::TeachMe => {
78-
let env_filter = EnvFilter::from_default_env()
85+
let mut env_filter = EnvFilter::from_default_env()
7986
.add_directive(tracing::Level::WARN.into())
8087
.add_directive("near_teach_me=info".parse()?)
8188
.add_directive("near_cli_rs=info".parse()?);
89+
for directive in extra_directives {
90+
env_filter = env_filter.add_directive(directive.parse()?);
91+
}
8292
tracing_subscriber::registry()
8393
.with(tracing_subscriber::fmt::layer().event_format(SimpleFormatter))
8494
.with(env_filter)
@@ -94,9 +104,12 @@ pub fn setup_tracing(verbosity: Verbosity) -> CliResult {
94104
.tick_strings(&["◐", "◓", "◑", "◒"]),
95105
)
96106
.with_span_child_prefix_symbol("↳ ");
97-
let env_filter = EnvFilter::from_default_env()
107+
let mut env_filter = EnvFilter::from_default_env()
98108
.add_directive(tracing::Level::WARN.into())
99109
.add_directive("near_cli_rs=info".parse()?);
110+
for directive in extra_directives {
111+
env_filter = env_filter.add_directive(directive.parse()?);
112+
}
100113
tracing_subscriber::registry()
101114
.with(
102115
tracing_subscriber::fmt::layer()

0 commit comments

Comments
 (0)