test(spawner): added logs

This commit is contained in:
2023-12-04 11:04:24 +11:00
parent b4f81ccf30
commit 4195eadc9a
3 changed files with 154 additions and 5 deletions

View File

@@ -1,17 +1,39 @@
#[macro_use] extern crate log;
extern crate simplelog;
use simplelog::*;
use std::error::Error;
use std::fs::OpenOptions;
use std::process::Command;
use std::env;
use rand::Rng;
fn main() -> Result<(), Box<dyn Error>> {
let args: Vec<String> = env::args().collect();
let mut rng = rand::thread_rng();
let log_path = env::var("LOG_PATH")?;
let file = OpenOptions::new().append(true).create(true).open(log_path)?;
WriteLogger::new(LevelFilter::Debug, Config::default(), file);
if args.len() > 1 {
let x: u64 = args[1].parse()?;
for _i in 0..x {
// println!("spawning {}", _i);
Command::new("/usr/local/bin/dummy").arg("10").spawn()?;
loop {
for _i in 0..x {
let sleep_time = rng.gen_range(10..20);
info!("starting wmtest-helper-dummy {}", &sleep_time);
let child = Command::new("/usr/local/bin/wmtest-helper-dummy").arg(format!("{}", sleep_time)).spawn();
if let Err(e) = child {
error!("error spawning child: {e}");
}
}
let pause_time = rng.gen_range(10..20);
info!("going to sleep for {}", &pause_time);
std::thread::sleep(std::time::Duration::from_secs(pause_time));
info!("waking up")
}
} else {
return Err(anyhow::anyhow!("invalid arguments").into());
}
Ok(())
}