inf getting session with incresing delay
test-org/integration-module/pipeline/pr-rc This commit looks good Details

pull/16/head
prplV 2025-03-11 10:43:54 +03:00
parent 9ec918088c
commit 5ad9f209b0
1 changed files with 22 additions and 10 deletions

View File

@ -1,4 +1,5 @@
use std::env;
use std::fmt::Display;
use anyhow::Error;
use serde_json::{Map, Value};
use reqwest::Client;
@ -44,8 +45,6 @@ pub async fn get_metrics_from_monitoring(duration: usize, delay: usize) -> anyho
'outer: loop {
// let mut a = MonitoringImporter::new().await;
a.start_session().await?;
info!("Started a new CM session");
let vec = Arc::new(a.get_metrics_list().await.unwrap_or_else(|_| vec![]));
'inner: loop {
@ -143,18 +142,31 @@ impl MonitoringImporter {
let client = Client::new();
let url = format!("http://{}/e-data-front/auth/login", self.ip);
let fortoken = ForTokenCredentials::new(&self.login, &self.password);
let mut delay = 1;
loop {
let client = client
.post(url)
.post(&url)
.header("Content-Type", "application/json")
.json(&fortoken);
let resp = client.send().await?;
let auth = resp.json::<AuthResponse>().await?;
// let resp = client.send().await?;
if let Ok(resp) = client.send().await {
// let auth = resp.json::<AuthResponse>().await?;
match resp.json::<AuthResponse>().await {
Ok(auth) => {
self.set_ts(&fortoken.ts).await;
self.access_token = auth.access_token.to_owned();
break;
},
Err(er) => error!("Error with extracting access-key from CM response due to {}", er),
}
}
error!("Error while trying to create a new session, waiting {} secs and retrying ...", delay);
tokio::time::sleep(tokio::time::Duration::from_secs(delay)).await;
delay = delay * 2;
}
info!("Started a new CM session");
Ok(())
}