#log #structopt #flags #cli #clap

clap-log-flag

使用 structopt 向 CLIs 添加日志记录器

3 个不稳定版本

使用旧的 Rust 2015

0.2.1 2018 年 8 月 22 日
0.2.0 2018 年 8 月 22 日
0.1.0 2018 年 8 月 6 日

#13 in #structopt

每月 21 次下载
3 个 crate 中使用 (via nest-cli)

MIT/Apache

11KB
53

clap-log-flag

crates.io version build status downloads docs.rs docs

使用 structopt 向 CLIs 添加日志记录器。

用法

extern crate clap_log_flag;
#[macro_use]
extern crate log;
extern crate clap_verbosity_flag;
#[macro_use]
extern crate structopt;

use structopt::StructOpt;

#[derive(Debug, StructOpt)]
struct Cli {
  #[structopt(flatten)]
  verbose: clap_verbosity_flag::Verbosity,
  #[structopt(flatten)]
  log: clap_log_flag::Log,
}

fn main() -> Result<(), Box<dyn std::error::Error>> {
  let args = Cli::from_args();
  args.log.log_all(args.verbose.log_level())?;
  info!("hello");
  error!("oh no!");
  Ok(())
}

输出

clap-log-flag 0.1.0
Yoshua Wuyts <[email protected]>
Add a logger to CLIs using structopt

USAGE:
    main [FLAGS]

FLAGS:
    -h, --help         Prints help information
    -P, --pretty       Enable pretty printing.
    -V, --version      Prints version information
    -v, --verbosity    Pass many times for more log output

安装

$ cargo add clap-log-flag

许可证

MIT OR Apache-2.0

依赖项

~7–15MB
~180K SLoC