From 5b49dbfc33d997bba200167d28f1bdaa6d0d0b00 Mon Sep 17 00:00:00 2001 From: Isala Piyarisi Date: Wed, 16 Mar 2022 20:41:29 +0530 Subject: [PATCH] fix(sherlock): Moved poll_anomaly_scores sleep to async --- .../samples/lazykoala_v1alpha1_inspector.yaml | 24 +++++++++---------- sherlock/src/inference.rs | 20 ++++++++++++++-- sherlock/src/main.rs | 1 - 3 files changed, 30 insertions(+), 15 deletions(-) diff --git a/control-plane/config/samples/lazykoala_v1alpha1_inspector.yaml b/control-plane/config/samples/lazykoala_v1alpha1_inspector.yaml index 14dde33..b2331b7 100644 --- a/control-plane/config/samples/lazykoala_v1alpha1_inspector.yaml +++ b/control-plane/config/samples/lazykoala_v1alpha1_inspector.yaml @@ -4,9 +4,9 @@ metadata: name: service-1 namespace: default spec: - deploymentRef: service-1-62bf5632 - serviceRef: service-1-62bf5632 - modelName: service-1-62bf5632 + deploymentRef: service-1-a0b7dd98 + serviceRef: service-1-a0b7dd98 + modelName: sample_model namespace: default --- apiVersion: lazykoala.isala.me/v1alpha1 @@ -15,9 +15,9 @@ metadata: name: service-2 namespace: default spec: - deploymentRef: service-2-62bf5632 - serviceRef: service-2-62bf5632 - modelName: service-1-62bf5632 + deploymentRef: service-2-a0b7dd98 + serviceRef: service-2-a0b7dd98 + modelName: sample_model namespace: default --- apiVersion: lazykoala.isala.me/v1alpha1 @@ -26,9 +26,9 @@ metadata: name: service-3 namespace: default spec: - deploymentRef: service-3-62bf5632 - serviceRef: service-3-62bf5632 - modelName: service-1-62bf5632 + deploymentRef: service-3-a0b7dd98 + serviceRef: service-3-a0b7dd98 + modelName: sample_model namespace: default --- apiVersion: lazykoala.isala.me/v1alpha1 @@ -37,9 +37,9 @@ metadata: name: service-4 namespace: default spec: - deploymentRef: service-4-62bf5632 - serviceRef: service-4-62bf5632 - modelName: service-1-62bf5632 + deploymentRef: service-4-a0b7dd98 + serviceRef: service-4-a0b7dd98 + modelName: sample_model namespace: default --- diff --git a/sherlock/src/inference.rs b/sherlock/src/inference.rs index 9dec127..b8b05cd 100644 --- a/sherlock/src/inference.rs +++ b/sherlock/src/inference.rs @@ -1,4 +1,6 @@ -use std::{thread, time::Duration, collections::HashMap, env::var}; +use std::{collections::HashMap, env::var}; +// use futures::future::join_all; +use tokio::time::{sleep, Duration}; use serde::{Serialize, Deserialize}; use serde_json::json; use prometheus::GaugeVec; @@ -77,12 +79,26 @@ pub async fn poll_anomaly_scores() { loop { let services = parse_config().unwrap_or_default(); + // let mut tasks = Vec::new(); + for (service, args) in services.iter() { + // tasks.push(calculate_anomaly_score(service, args)); + if let Err(err) = calculate_anomaly_score(service, args).await { eprintln!("Error while calculating anomaly score: {}", err); ANOMLAY_GAUGE.with_label_values(&[service, &args.namespace]).set(-1.0) } } - thread::sleep(Duration::from_secs(delay)); + + // let results = join_all(tasks).await; + + // for result in results.iter(){ + // if let Err(err) = result { + // eprintln!("Error while calculating anomaly score: {}", err); + // // ANOMLAY_GAUGE.with_label_values(&[service, &args.namespace]).set(-1.0) + // } + // } + + sleep(Duration::from_secs(delay)).await; } } diff --git a/sherlock/src/main.rs b/sherlock/src/main.rs index aad49a3..252653c 100644 --- a/sherlock/src/main.rs +++ b/sherlock/src/main.rs @@ -32,7 +32,6 @@ async fn main() { tokio::spawn(async { poll_anomaly_scores().await }); - let addr = ([0, 0, 0, 0], 9898).into(); println!("Listening on http://{}", addr);