logo 1.1.2

init log env quickly
Documentation
use std::env;
use std::path::Path;

use ::log::LevelFilter;
use ftlog::appender::{FileAppender, Period};

use crate::log::SimpleFormatter;

pub mod log;

pub fn init_prod() {
    let args: Vec<String> = env::args().collect();
    let p = std::path::Path::new(&args[0]);
    let file_name = p.file_name();
    let dir = Path::new("logs");
    if !dir.exists() {
        std::fs::create_dir_all(&dir).unwrap();
    }
    let p = format!(
        "{}/{}.log",
        dir.to_str().unwrap(),
        file_name.unwrap_or_default().to_str().unwrap()
    );
    let _writer =
        FileAppender::rotate_with_expire(p, Period::Day, ftlog::appender::Duration::weeks(1));
    ftlog::Builder::new()
        .root(_writer)
        .format(SimpleFormatter)
        .max_log_level(LevelFilter::Info)
        .try_init()
        .unwrap();
}

pub fn init_debug() {
    ftlog::Builder::new()
        .format(SimpleFormatter)
        .max_log_level(LevelFilter::Debug)
        .try_init()
        .unwrap();
}