feat: add statsDaemon.interval setting, pass --interval to nova-stats

This commit is contained in:
Damocles 2026-04-15 19:01:29 +02:00
parent c8d71bd871
commit 937ae5af2e
4 changed files with 35 additions and 3 deletions

View file

@ -159,7 +159,22 @@ fn emit_mem(out: &mut impl Write) {
}
}
fn parse_interval_ms() -> u64 {
let args: Vec<String> = std::env::args().collect();
let mut i = 1;
while i < args.len() {
if args[i] == "--interval" {
if let Some(ms) = args.get(i + 1).and_then(|s| s.parse().ok()) {
return ms;
}
}
i += 1;
}
1000
}
fn main() {
let interval = Duration::from_millis(parse_interval_ms());
let stdout = io::stdout();
let mut out = io::BufWriter::new(stdout.lock());
let mut prev: Vec<Sample> = vec![];
@ -181,8 +196,8 @@ fn main() {
tick += 1;
let elapsed = t0.elapsed();
if elapsed < Duration::from_secs(1) {
thread::sleep(Duration::from_secs(1) - elapsed);
if elapsed < interval {
thread::sleep(interval - elapsed);
}
}
}