no service-checker script anymore, only rust

pull/9/head
prplV 2024-07-30 14:40:48 +03:00
parent f4c24c3993
commit cb3d8b354f
1 changed files with 13 additions and 13 deletions

View File

@ -3,15 +3,14 @@ use redis::Commands;
use serde::{ Deserialize, Serialize };
use serde_json;
// async multi-threaded execution
use tokio::time::{ error, Duration, Instant };
use tokio::time::{ Duration, Instant };
use tokio::sync::mpsc;
use tokio::join;
// fatal errors handler
use core::{panic, time};
use core::panic;
// utils
use std::fmt::Debug;
use std::fs;
use std::os::unix::process;
use std::path::Path;
use std::process::{ Command, Output };
use std::sync::Arc;
@ -22,6 +21,7 @@ use std::io::Write;
use chrono::{Local, Utc};
use env_logger::Builder;
use log::{error, warn, LevelFilter};
use std::net::{TcpStream, ToSocketAddrs};
static CONFIG_PATH : &'static str = "settings.json";
@ -713,20 +713,20 @@ async fn looped_service_connecting(
return Err(CustomError::Fatal);
}
}
async fn check_service(host: &str, port: &u32) -> Result<(), CustomError> {
let mut command = Command::new("bash");
command.args(["service-checker.sh", host, &port.to_string()]);
match command.output() {
Ok(output) => {
if output.status.success() {
// ! have to be rewritten
// todo: rewrite use
async fn check_service(hostname: &str, port: &u32) -> Result<(), CustomError> {
let addr = format!("{}:{}", hostname, port);
match addr.to_socket_addrs() {
Ok(mut addrs) => {
if let Some(_) = addrs.find(|a| TcpStream::connect_timeout(a, std::time::Duration::new(1, 0)).is_ok()) {
return Ok(());
} else {
return Err(CustomError::Fatal);
}
},
Err(_) => {
return Err(CustomError::Fatal);
},
};
Err(_) => return Err(CustomError::Fatal),
}
}