Alexey Velikiy
3 years ago
4 changed files with 45 additions and 29 deletions
@ -1,13 +1,29 @@
|
||||
use anyhow; |
||||
use hastic::services::{analytic_service, metric_service, segments_service}; |
||||
|
||||
mod api; |
||||
|
||||
#[tokio::main] |
||||
async fn main() -> anyhow::Result<()> { |
||||
let config = hastic::config::Config::new(); |
||||
let api = api::API::new(&config)?; |
||||
|
||||
api.serve().await; |
||||
let metric_service = metric_service::MetricService::new(&config.prom_url, &config.query); |
||||
let segments_service = segments_service::SegmentsService::new()?; |
||||
|
||||
let mut analytic_service = |
||||
analytic_service::AnalyticService::new(metric_service.clone(), segments_service.clone()); |
||||
|
||||
let api = api::API::new( |
||||
&config, |
||||
metric_service.clone(), |
||||
segments_service.clone(), |
||||
analytic_service.get_client(), |
||||
); |
||||
|
||||
let s1 = analytic_service.serve(); |
||||
let s2 = api.serve(); |
||||
|
||||
futures::future::join(s1, s2).await; |
||||
|
||||
Ok(()) |
||||
} |
||||
|
Loading…
Reference in new issue