Skip to content

Commit 80db1a3

Browse files
iwanbkLeeSmet
authored andcommitted
feat(main): enable debug log option.
Change default log level to INFO and provide option to enable debug log
1 parent 4df08d6 commit 80db1a3

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

zstor/src/main.rs

+14-7
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ use actix::Actor;
22
use actix::Addr;
33
use actix_rt::signal::unix::SignalKind;
44
use futures::future::join_all;
5-
use log::LevelFilter;
65
use log::{debug, error, info, trace};
76
use log4rs::append::rolling_file::policy::compound::{
87
roll::fixed_window::FixedWindowRoller, trigger::size::SizeTrigger, CompoundPolicy,
@@ -47,6 +46,11 @@ struct Opts {
4746
parse(from_os_str)
4847
)]
4948
config: PathBuf,
49+
50+
/// Enable debug logging.
51+
#[structopt(name = "debug", long, short)]
52+
debug: bool,
53+
5054
/// Path to the log file to use. The logfile will automatically roll over if the size
5155
/// increases beyond 10MiB.
5256
#[structopt(
@@ -236,6 +240,13 @@ async fn write_pid_file(path: &Path) -> ZstorResult<bool> {
236240

237241
async fn real_main() -> ZstorResult<()> {
238242
let opts = Opts::from_args();
243+
244+
let log_level = if opts.debug {
245+
log::LevelFilter::Debug
246+
} else {
247+
log::LevelFilter::Info
248+
};
249+
239250
// TODO: add check for file name
240251
let mut rolled_log_file = opts.log_file.clone();
241252
let name = if let Some(ext) = rolled_log_file.extension() {
@@ -275,12 +286,8 @@ async fn real_main() -> ZstorResult<()> {
275286
}))
276287
.build("logfile", Box::new(log_file)),
277288
)
278-
.logger(Logger::builder().build("filelogger", LevelFilter::Debug))
279-
.build(
280-
Root::builder()
281-
.appender("logfile")
282-
.build(log::LevelFilter::Debug),
283-
)
289+
.logger(Logger::builder().build("filelogger", log_level))
290+
.build(Root::builder().appender("logfile").build(log_level))
284291
.unwrap();
285292
log4rs::init_config(log_config).unwrap();
286293

0 commit comments

Comments
 (0)