diff --git a/Cargo.lock b/Cargo.lock index 4e2688a..cae21bc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3534,7 +3534,7 @@ dependencies = [ [[package]] name = "websurfx" -version = "0.16.1" +version = "0.16.2" dependencies = [ "actix-cors", "actix-files", diff --git a/Cargo.toml b/Cargo.toml index bec4799..10ebba6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "websurfx" -version = "0.16.1" +version = "0.16.2" edition = "2021" description = "An open-source alternative to Searx that provides clean, ad-free, and organic results with incredible speed while keeping privacy and security in mind." repository = "https://github.com/neon-mmd/websurfx" diff --git a/src/bin/websurfx.rs b/src/bin/websurfx.rs index b4b989e..6807749 100644 --- a/src/bin/websurfx.rs +++ b/src/bin/websurfx.rs @@ -24,8 +24,8 @@ async fn main() -> std::io::Result<()> { ); log::info!( "Open http://{}:{}/ in your browser", + config.binding_ip, config.port, - config.binding_ip ); let listener = TcpListener::bind((config.binding_ip.clone(), config.port))?; diff --git a/src/config/parser.rs b/src/config/parser.rs index 51a83ea..201e579 100644 --- a/src/config/parser.rs +++ b/src/config/parser.rs @@ -4,7 +4,7 @@ use super::parser_models::Style; use log::LevelFilter; use rlua::Lua; -use std::{collections::HashMap, format, fs, io::Write, path::Path, thread::available_parallelism}; +use std::{collections::HashMap, format, fs, path::Path, thread::available_parallelism}; // ------- Constants -------- static COMMON_DIRECTORY_NAME: &str = "websurfx"; @@ -79,26 +79,26 @@ impl Config { // Check whether logging has not been initialized before. if logging_initialized { - // Initializing logging middleware with level set to default or info. - let mut log_level: LevelFilter = LevelFilter::Off; - if logging && debug == false { - log_level = LevelFilter::Info; - } else if debug { - log_level = LevelFilter::Trace; - }; - env_logger::Builder::new().filter(None, log_level).init(); + if let Ok(pkg_env_var) = std::env::var("PKG_ENV"){ + if pkg_env_var.to_lowercase() == "dev" { + env_logger::Builder::new().filter(None, LevelFilter::Trace).init(); + } + } else { + // Initializing logging middleware with level set to default or info. + let mut log_level: LevelFilter = LevelFilter::Error; + if logging && debug == false { + log_level = LevelFilter::Info; + } else if debug { + log_level = LevelFilter::Debug; + }; + env_logger::Builder::new().filter(None, log_level).init(); + } } let threads: u8 = if parsed_threads == 0 { - let total_num_of_threads:usize = available_parallelism()?.get() /2; - if debug || logging { - log::error!("Config Error: The value of `threads` option should be a non zero positive integer"); - log::info!("Falling back to using {} threads", total_num_of_threads) - } else { - std::io::stdout() - .lock() - .write_all(&format!("Config Error: The value of `threads` option should be a non zero positive integer\nFalling back to using {} threads\n", total_num_of_threads).into_bytes())?; - }; + let total_num_of_threads: usize = available_parallelism()?.get() / 2; + log::error!("Config Error: The value of `threads` option should be a non zero positive integer"); + log::error!("Falling back to using {} threads", total_num_of_threads); total_num_of_threads as u8 } else { parsed_threads diff --git a/src/results/aggregator.rs b/src/results/aggregator.rs index b8d7346..4ffaaf5 100644 --- a/src/results/aggregator.rs +++ b/src/results/aggregator.rs @@ -144,6 +144,7 @@ pub async fn aggregate( initial = false } Err(error_type) => { + log::error!("Engine Error: {:?}", error_type); engine_errors_info.push(EngineErrorInfo::new( error_type.downcast_ref::().unwrap(), upstream_search_engines[counter].clone(), @@ -172,6 +173,7 @@ pub async fn aggregate( counter += 1 } Err(error_type) => { + log::error!("Engine Error: {:?}", error_type); engine_errors_info.push(EngineErrorInfo::new( error_type.downcast_ref::().unwrap(), upstream_search_engines[counter].clone(),