From 6fa349f3efdb1b20f8b8f02c827e708ef81ebb48 Mon Sep 17 00:00:00 2001 From: rewby Date: Mon, 7 Aug 2023 19:02:24 +0200 Subject: [PATCH] Add process metrics. --- src/main.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main.rs b/src/main.rs index d949f72..c9907a5 100644 --- a/src/main.rs +++ b/src/main.rs @@ -22,6 +22,13 @@ pub mod tracker_manager; pub mod helpers; pub mod metrics; +fn push_process_metrics_job(url: String) { + let mfs = prometheus::gather(); + if let Err(e) = push_metrics("tracker-redis-exporter", HashMap::from([("instance".to_string(), "process".to_string())]), &url, mfs, None) { + warn!("Unable to push process metrics: {e}") + } +} + fn metric_refresh_job(client_mgr: Arc, project_mgr: Arc, url: String, provider: Arc) { let start = SystemTime::now(); project_mgr.enabled_projects().into_par_iter().for_each({ @@ -101,6 +108,10 @@ pub fn main() -> color_eyre::Result<()> { .seconds()? .run_two_args(&mut schedule, projects_refresh_job, client_mgr.clone(), project_mgr.clone())?; + every(10) + .seconds()? + .run_one_arg(&mut schedule, push_process_metrics_job, p_url.clone())?; + spawn_metrics_job( args.project_metrics_refresh_interval, client_mgr.clone(),