use crate::misc::panic_backtrace::PanicBacktrace;
pub fn setup_default_user_utils() {
#[cfg(feature = "log")]
setup_log_to_console(log::LevelFilter::Trace);
setup_backtrace();
}
pub fn setup_backtrace() {
#[cfg(not(target_family = "wasm"))]
if std::env::var("RUST_BACKTRACE").err() == Some(std::env::VarError::NotPresent) {
std::env::set_var("RUST_BACKTRACE", "1");
} else {
#[cfg(feature = "log")]
log::debug!("Skip setup RUST_BACKTRACE because there is already environment variable");
}
PanicBacktrace::setup();
}
#[cfg(feature = "log")]
pub fn setup_log_to_console(#[allow(unused)] level: log::LevelFilter) {
#[cfg(target_os = "android")]
let _ = android_logger::init_once(android_logger::Config::default().with_max_level(level));
#[cfg(any(target_os = "ios", target_os = "macos"))]
let _ = oslog::OsLogger::new("frb_user").level_filter(level).init();
#[cfg(target_family = "wasm")]
let _ = crate::misc::web_utils::WebConsoleLogger::init(level);
}