diff --git a/crates/api-grub/src/logger.rs b/crates/api-grub/src/logger.rs index 523fafb..995adb1 100644 --- a/crates/api-grub/src/logger.rs +++ b/crates/api-grub/src/logger.rs @@ -3,8 +3,9 @@ use env_logger::Builder; use log::LevelFilter; use std::io::Write; use anyhow::Result; +use log::info; -pub fn setup_logger() -> Result<()> { +pub async fn setup_logger() -> Result<()> { Builder::new() .format(move |buf, record| { writeln!( @@ -20,5 +21,6 @@ pub fn setup_logger() -> Result<()> { .target(env_logger::Target::Stdout) .init(); + info!("Logger configured"); Ok(()) } \ No newline at end of file diff --git a/crates/api-grub/src/main.rs b/crates/api-grub/src/main.rs index 9bff6d7..6ebc2f7 100644 --- a/crates/api-grub/src/main.rs +++ b/crates/api-grub/src/main.rs @@ -3,8 +3,10 @@ mod net; mod logger; use anyhow::Result; +use integr_structs::api::ApiConfig; use logger::setup_logger; -use log::info; +use log::{info, warn}; +use config::pull_local_config; #[tokio::main(flavor = "multi_thread")] async fn main() -> Result<()>{ @@ -12,7 +14,20 @@ async fn main() -> Result<()>{ // 1) unix-socket coroutine (for config updating) // 2) api coroutine // 3) ? - setup_logger()?; - info!("Logger configured"); + setup_logger().await?; + let config = get_config().await; Ok(()) } + +async fn get_config() -> ApiConfig { + return match pull_local_config().await { + Ok(conf) => { + info!("Local config was loaded"); + conf + }, + Err(er) => { + warn!("Cannot get local config due to {}", er); + ApiConfig::default() + } + } +} \ No newline at end of file