init_log once
This commit is contained in:
parent
fb12ee7f2a
commit
6cbbb6498f
@ -350,21 +350,23 @@ pub fn is_domain_port_str(id: &str) -> bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn init_log(_is_async: bool, _name: &str) -> Option<flexi_logger::LoggerHandle> {
|
pub fn init_log(_is_async: bool, _name: &str) -> Option<flexi_logger::LoggerHandle> {
|
||||||
|
static INIT: std::sync::Once = std::sync::Once::new();
|
||||||
|
#[allow(unused_mut)]
|
||||||
|
let mut logger_holder: Option<flexi_logger::LoggerHandle> = None;
|
||||||
|
INIT.call_once(|| {
|
||||||
#[cfg(debug_assertions)]
|
#[cfg(debug_assertions)]
|
||||||
{
|
{
|
||||||
use env_logger::*;
|
use env_logger::*;
|
||||||
init_from_env(Env::default().filter_or(DEFAULT_FILTER_ENV, "info"));
|
init_from_env(Env::default().filter_or(DEFAULT_FILTER_ENV, "info"));
|
||||||
None
|
|
||||||
}
|
}
|
||||||
#[cfg(not(debug_assertions))]
|
#[cfg(not(debug_assertions))]
|
||||||
{
|
{
|
||||||
// https://docs.rs/flexi_logger/latest/flexi_logger/error_info/index.html#write
|
// https://docs.rs/flexi_logger/latest/flexi_logger/error_info/index.html#write
|
||||||
// though async logger more efficient, but it also causes more problems, disable it for now
|
// though async logger more efficient, but it also causes more problems, disable it for now
|
||||||
let mut logger_holder: Option<flexi_logger::LoggerHandle> = None;
|
|
||||||
let mut path = config::Config::log_path();
|
let mut path = config::Config::log_path();
|
||||||
#[cfg(target_os = "android")]
|
#[cfg(target_os = "android")]
|
||||||
if !config::Config::get_home().exists() {
|
if !config::Config::get_home().exists() {
|
||||||
return None;
|
return;
|
||||||
}
|
}
|
||||||
if !_name.is_empty() {
|
if !_name.is_empty() {
|
||||||
path.push(_name);
|
path.push(_name);
|
||||||
@ -387,8 +389,9 @@ pub fn init_log(_is_async: bool, _name: &str) -> Option<flexi_logger::LoggerHand
|
|||||||
.start()
|
.start()
|
||||||
.ok();
|
.ok();
|
||||||
}
|
}
|
||||||
logger_holder
|
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
logger_holder
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user