Remove verbosity out of watchers config

This commit is contained in:
Demmie 2023-05-07 20:56:54 -04:00
parent 63bfe4181e
commit 53a5c1adce
No known key found for this signature in database
GPG Key ID: B06DAA3D432C6E9A
4 changed files with 23 additions and 18 deletions

View File

@ -16,7 +16,7 @@ jobs:
- uses: dtolnay/rust-toolchain@nightly
with:
components: rustfmt
- run: cargo fmt --check --workspace --all
- run: cargo fmt --check --all
clippy:
runs-on: ubuntu-latest
steps:

View File

@ -6,10 +6,15 @@ use clap::{arg, value_parser, Arg, ArgAction, ArgMatches, Command};
use fern::colors::{Color, ColoredLevelConfig};
use log::LevelFilter;
use watchers::config::defaults;
use watchers::config::Config;
use watchers::config::Config as WatchersConfig;
use watchers::config::FileConfig;
pub fn setup_logger(verbosity: LevelFilter) -> Result<(), fern::InitError> {
pub struct Config {
pub watchers_config: WatchersConfig,
verbosity: LevelFilter,
}
pub fn setup_logger(config: &Config) -> Result<(), fern::InitError> {
fern::Dispatch::new()
.format(|out, message, record| {
let colors = ColoredLevelConfig::new()
@ -25,8 +30,8 @@ pub fn setup_logger(verbosity: LevelFilter) -> Result<(), fern::InitError> {
));
})
.level(log::LevelFilter::Error)
.level_for("watchers", verbosity)
.level_for("awatcher", verbosity)
.level_for("watchers", config.verbosity)
.level_for("awatcher", config.verbosity)
.chain(std::io::stdout())
.apply()?;
Ok(())
@ -77,15 +82,17 @@ pub fn from_cli() -> anyhow::Result<Config> {
};
Ok(Config {
port: config.server.port,
host: config.server.host,
idle_timeout: config.client.get_idle_timeout(),
poll_time_idle: config.client.get_poll_time_idle(),
poll_time_window: config.client.get_poll_time_window(),
idle_bucket_name,
active_window_bucket_name,
filters: config.client.filters,
no_server: *matches.get_one("no-server").unwrap(),
watchers_config: WatchersConfig {
port: config.server.port,
host: config.server.host,
idle_timeout: config.client.get_idle_timeout(),
poll_time_idle: config.client.get_poll_time_idle(),
poll_time_window: config.client.get_poll_time_window(),
idle_bucket_name,
active_window_bucket_name,
filters: config.client.filters,
no_server: *matches.get_one("no-server").unwrap(),
},
verbosity,
})
}

View File

@ -11,9 +11,9 @@ use watchers::ReportClient;
fn main() -> anyhow::Result<()> {
let config = config::from_cli()?;
config::setup_logger(config.verbosity)?;
config::setup_logger(&config)?;
let client = ReportClient::new(config)?;
let client = ReportClient::new(config.watchers_config)?;
let client = Arc::new(client);
if client.config.no_server {

View File

@ -4,7 +4,6 @@ mod filters;
use self::filters::{Filter, Replacement};
pub use file_config::FileConfig;
use log::LevelFilter;
use std::time::Duration;
pub struct Config {
@ -16,7 +15,6 @@ pub struct Config {
pub idle_bucket_name: String,
pub active_window_bucket_name: String,
pub no_server: bool,
pub verbosity: LevelFilter,
pub filters: Vec<Filter>,
}