Skip to content

Commit 4539986

Browse files
author
Andrew
committed
added default tracer
1 parent da94e76 commit 4539986

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

dsc/src/util.rs

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,19 @@ pub fn enable_tracing(trace_level_arg: &Option<TraceLevel>, trace_format_arg: &O
296296
let mut policy_is_used = false;
297297
let mut tracing_setting = TracingSetting::default();
298298

299+
let default_filter = EnvFilter::try_from_default_env()
300+
.or_else(|_| EnvFilter::try_new("warning"))
301+
.unwrap_or_default()
302+
.add_directive(Level::TRACE.into());
303+
let default_indicatif_layer = IndicatifLayer::new();
304+
let default_layer = tracing_subscriber::fmt::Layer::default().with_writer(default_indicatif_layer.get_stderr_writer());
305+
let default_fmt = default_layer
306+
.with_ansi(true)
307+
.with_level(true)
308+
.boxed();
309+
let default_subscriber = tracing_subscriber::Registry::default().with(default_fmt).with(default_filter).with(default_indicatif_layer);
310+
let default_guard = tracing::subscriber::set_default(default_subscriber);
311+
299312
// read setting/policy from files
300313
if let Ok(v) = get_setting("tracing") {
301314
if v.policy != serde_json::Value::Null {
@@ -304,18 +317,18 @@ pub fn enable_tracing(trace_level_arg: &Option<TraceLevel>, trace_format_arg: &O
304317
tracing_setting = v;
305318
policy_is_used = true;
306319
},
307-
Err(e) => { println!("{e}"); }
320+
Err(e) => { error!("{e}"); }
308321
}
309322
} else if v.setting != serde_json::Value::Null {
310323
match serde_json::from_value::<TracingSetting>(v.setting) {
311324
Ok(v) => {
312325
tracing_setting = v;
313326
},
314-
Err(e) => { println!("{e}"); }
327+
Err(e) => { error!("{e}"); }
315328
}
316329
}
317330
} else {
318-
println!("Could not read 'tracing' setting");
331+
error!("Could not read 'tracing' setting");
319332
}
320333

321334
// override with DSC_TRACE_LEVEL env var if permitted
@@ -392,6 +405,7 @@ pub fn enable_tracing(trace_level_arg: &Option<TraceLevel>, trace_format_arg: &O
392405

393406
let subscriber = tracing_subscriber::Registry::default().with(fmt).with(filter).with(indicatif_layer);
394407

408+
drop(default_guard);
395409
if tracing::subscriber::set_global_default(subscriber).is_err() {
396410
eprintln!("Unable to set global default tracing subscriber. Tracing is diabled.");
397411
}

0 commit comments

Comments
 (0)