use ::effectful::run_blocking;
use effectful_logger::{EffectLogger, LogLevel};
fn main() {
tracing_subscriber::fmt()
.with_env_filter(
tracing_subscriber::EnvFilter::try_from_default_env()
.unwrap_or_else(|_| tracing_subscriber::EnvFilter::new("trace")),
)
.init();
let log = EffectLogger;
run_blocking(
log.trace::<()>("trace line (raise RUST_LOG=trace to see)"),
(),
)
.unwrap();
run_blocking(
log.debug::<()>("debug line (raise RUST_LOG=debug to see)"),
(),
)
.unwrap();
run_blocking(log.info::<()>("info: EffectLogger methods work"), ()).unwrap();
run_blocking(log.warn::<()>("warn example"), ()).unwrap();
run_blocking(log.error::<()>("error example"), ()).unwrap();
run_blocking(
log.log::<()>(LogLevel::Info, "explicit level via .log()"),
(),
)
.unwrap();
}