use std::fs::File;
use tracing::info;
use crate::config;
const LOG_FILE_NAME: &str = "nitidus.log";
pub fn init() -> color_eyre::Result<()> {
use tracing_error::ErrorLayer;
use tracing_subscriber::{fmt, prelude::*, EnvFilter};
let app_config = config::get();
let file = File::create(LOG_FILE_NAME)?;
let log_file_layer = fmt::layer()
.with_writer(file)
.with_ansi(false)
.compact();
tracing_subscriber::registry()
.with(ErrorLayer::default()) .with(EnvFilter::from_default_env().add_directive(app_config.log_level.into()))
.with(log_file_layer)
.with(tui_logger::tracing_subscriber_layer())
.try_init()?;
info!("logging initialized");
Ok(())
}