sweet beautiful fern
This commit is contained in:
parent
23b622ca8d
commit
796e5835e9
@ -23,7 +23,7 @@ failure = "0.1"
|
|||||||
|
|
||||||
dotenv = "0.9.0"
|
dotenv = "0.9.0"
|
||||||
log = "0.4"
|
log = "0.4"
|
||||||
fern = "0.5"
|
fern = { version = "0.5", features = ["colored"] }
|
||||||
|
|
||||||
iron = "0.6"
|
iron = "0.6"
|
||||||
bodyparser = "0.8"
|
bodyparser = "0.8"
|
||||||
|
|||||||
@ -54,27 +54,53 @@ mod warden;
|
|||||||
|
|
||||||
use std::thread::{spawn};
|
use std::thread::{spawn};
|
||||||
use std::path::{Path};
|
use std::path::{Path};
|
||||||
|
use fern::colors::{Color, ColoredLevelConfig};
|
||||||
|
|
||||||
use crossbeam_channel::{unbounded};
|
use crossbeam_channel::{unbounded};
|
||||||
|
|
||||||
fn setup_logger() -> Result<(), fern::InitError> {
|
fn setup_logger() -> Result<(), fern::InitError> {
|
||||||
fern::Dispatch::new()
|
let colors_line = ColoredLevelConfig::new()
|
||||||
|
.error(Color::Red)
|
||||||
|
.warn(Color::Yellow)
|
||||||
|
.info(Color::BrightWhite)
|
||||||
|
.debug(Color::BrightWhite)
|
||||||
|
.trace(Color::BrightBlack);
|
||||||
|
|
||||||
|
let colors_level = colors_line.clone().info(Color::Green);
|
||||||
|
let term = fern::Dispatch::new()
|
||||||
|
.format(move |out, message, record| {
|
||||||
|
out.finish(format_args!(
|
||||||
|
"{color_line}[{date}][{target}][{level}{color_line}] {message}\x1B[0m",
|
||||||
|
color_line = format_args!("\x1B[{}m", colors_line.get_color(&record.level()).to_fg_str()),
|
||||||
|
date = chrono::Local::now().format("%Y-%m-%d %H:%M:%S"),
|
||||||
|
target = record.target(),
|
||||||
|
level = colors_level.color(record.level()),
|
||||||
|
message = message,
|
||||||
|
));
|
||||||
|
})
|
||||||
|
.chain(std::io::stdout());
|
||||||
|
|
||||||
|
let file = fern::Dispatch::new()
|
||||||
.format(|out, message, record| {
|
.format(|out, message, record| {
|
||||||
out.finish(format_args!(
|
out.finish(format_args!(
|
||||||
"{}[{}][{}] {}",
|
"{{\"time\":\"{}\",\"name\":\"{}\",\"level\":\"{}\",\"msg\":\"{}\"}}",
|
||||||
chrono::Local::now().format("[%Y-%m-%d][%H:%M:%S]"),
|
chrono::Local::now().to_rfc3339(),
|
||||||
record.target(),
|
record.target(),
|
||||||
record.level(),
|
record.level(),
|
||||||
message
|
message
|
||||||
))
|
))
|
||||||
})
|
})
|
||||||
|
.chain(fern::log_file("/var/log/mnml/mnml.log")?);
|
||||||
|
|
||||||
|
fern::Dispatch::new()
|
||||||
.level_for("postgres", log::LevelFilter::Info)
|
.level_for("postgres", log::LevelFilter::Info)
|
||||||
.level_for("ws", log::LevelFilter::Warn)
|
.level_for("ws", log::LevelFilter::Warn)
|
||||||
.level_for("iron", log::LevelFilter::Info)
|
.level_for("iron", log::LevelFilter::Info)
|
||||||
.level(log::LevelFilter::Info)
|
.level(log::LevelFilter::Info)
|
||||||
.chain(std::io::stdout())
|
.chain(term)
|
||||||
.chain(fern::log_file("/var/log/mnml/mnml.log")?)
|
.chain(file)
|
||||||
.apply()?;
|
.apply()?;
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user