37 lines
879 B
Rust
37 lines
879 B
Rust
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
|
|
|
|
use tracing::info;
|
|
use tracing_subscriber::{fmt, prelude::*, EnvFilter};
|
|
|
|
fn init_tracing() {
|
|
let file_appender = tracing_appender::rolling::daily(
|
|
std::env::temp_dir().join("forgepilot"),
|
|
"forgepilot.log",
|
|
);
|
|
|
|
let env_filter = EnvFilter::try_from_default_env()
|
|
.unwrap_or_else(|_| EnvFilter::new("info"));
|
|
|
|
let terminal_layer = fmt::layer()
|
|
.with_target(true)
|
|
.with_thread_ids(false);
|
|
|
|
let file_layer = fmt::layer()
|
|
.with_ansi(false)
|
|
.with_target(true)
|
|
.with_writer(file_appender);
|
|
|
|
tracing_subscriber::registry()
|
|
.with(env_filter)
|
|
.with(terminal_layer)
|
|
.with(file_layer)
|
|
.init();
|
|
|
|
info!("ForgePilot tracing initialized");
|
|
}
|
|
|
|
fn main() {
|
|
init_tracing();
|
|
forgepilot_lib::run()
|
|
}
|