//! Standardisert tracing-oppsett for CLI-verktøy.
//!
//! Alle CLI-verktøy logger til stderr med env-filter.
//! RUST_LOG styrer nivå; uten den brukes `{crate_name}=info`.

/// Initialiser tracing med standard oppsett for et CLI-verktøy.
///
/// - Output til stderr (stdout er reservert for verktøyets resultat)
/// - Env-filter fra RUST_LOG, fallback til `{crate_filter}=info`
/// - Uten target-prefix (kortere linjer)
///
/// `crate_filter` bør være crate-navnet med bindestreker erstattet
/// med understreker, f.eks. `"synops_audio"`.
pub fn init(crate_filter: &str) {
    tracing_subscriber::fmt()
        .with_env_filter(
            tracing_subscriber::EnvFilter::try_from_default_env()
                .unwrap_or_else(|_| format!("{crate_filter}=info").parse().unwrap()),
        )
        .with_target(false)
        .with_writer(std::io::stderr)
        .init();
}
