Use tracing (#174)

This commit is contained in:
Rebecca Turner
2022-11-16 13:43:57 -05:00
committed by Thomas Schönauer
parent d8add139e1
commit 41e2321b93
23 changed files with 175 additions and 131 deletions

View File

@@ -8,9 +8,7 @@ use clap::{crate_version, Parser};
use color_eyre::eyre::Context;
use color_eyre::eyre::{eyre, Result};
use console::Key;
use log::debug;
use log::LevelFilter;
use pretty_env_logger::formatted_timed_builder;
use tracing::debug;
use self::config::{CommandLineArgs, Config, Step};
use self::error::StepFailed;
@@ -43,6 +41,8 @@ fn run() -> Result<()> {
let opt = CommandLineArgs::parse();
install_tracing(&opt.tracing_filter_directives())?;
for env in opt.env_variables() {
let mut splitted = env.split('=');
let var = splitted.next().unwrap();
@@ -50,14 +50,6 @@ fn run() -> Result<()> {
env::set_var(var, value);
}
let mut builder = formatted_timed_builder();
if opt.verbose {
builder.filter(Some("topgrade"), LevelFilter::Trace);
}
builder.init();
if opt.edit_config() {
Config::edit(&base_dirs)?;
return Ok(());
@@ -537,3 +529,26 @@ fn main() {
}
}
}
pub fn install_tracing(filter_directives: &str) -> Result<()> {
use tracing_subscriber::fmt;
use tracing_subscriber::fmt::format::FmtSpan;
use tracing_subscriber::layer::SubscriberExt;
use tracing_subscriber::util::SubscriberInitExt;
use tracing_subscriber::EnvFilter;
let env_filter = EnvFilter::try_new(filter_directives)
.or_else(|_| EnvFilter::try_from_default_env())
.or_else(|_| EnvFilter::try_new("info"))?;
let fmt_layer = fmt::layer()
.with_target(false)
.with_span_events(FmtSpan::NEW | FmtSpan::CLOSE)
.without_time();
let registry = tracing_subscriber::registry();
registry.with(env_filter).with(fmt_layer).init();
Ok(())
}