fips 1.0.1

A powerful mock server supported by a plugin system
Documentation
use log::LevelFilter;
use log4rs::{
    append::rolling_file::{
        policy::compound::roll::delete::DeleteRoller, policy::compound::trigger::size::SizeTrigger,
        policy::compound::CompoundPolicy, RollingFileAppender,
    },
    config::{Appender, Config, Root},
    encode::pattern::PatternEncoder,
};

pub fn init() -> Result<(), Box<dyn std::error::Error>> {
    let retention = Box::new(CompoundPolicy::new(
        Box::new(SizeTrigger::new(30e7 as u64)),
        Box::new(DeleteRoller::new()),
    ));

    let logfile = RollingFileAppender::builder()
        .encoder(Box::new(PatternEncoder::new("{d} - {l} - {m}\n")))
        .build("log/fips.log", retention)?;

    let config = Config::builder()
        .appender(Appender::builder().build("logfile", Box::new(logfile)))
        .build(Root::builder().appender("logfile").build(LevelFilter::Debug))?;

    log4rs::init_config(config)?;

    Ok(())
}