use clap::Parser;
use clap_logflag::{LogDestinationConfig, LoggingConfig};
use log::LevelFilter;
#[derive(Debug, Parser)]
struct CliArgs {
#[clap(flatten)]
log: clap_logflag::LogArgs,
#[arg(long)]
default_level: LevelFilter,
}
fn main() {
let args = CliArgs::parse();
clap_logflag::init_logging!(
args.log
.or_default(LoggingConfig::new(vec![LogDestinationConfig {
destination: clap_logflag::LogDestination::Stderr,
level: Some(LevelFilter::Warn),
},],)),
args.default_level
);
log::trace!("Some trace log");
log::debug!("Some debug log");
log::info!("Some info log");
log::warn!("Some warn log");
log::error!("Some error log");
}