scouter_settings/
polling.rs

1use serde::Serialize;
2
3#[derive(Debug, Clone, Serialize)]
4pub struct PollingSettings {
5    pub num_workers: usize,
6    pub llm_workers: usize,
7    pub max_retries: usize,
8}
9
10impl Default for PollingSettings {
11    fn default() -> Self {
12        let num_workers = std::env::var("POLLING_WORKER_COUNT")
13            .unwrap_or_else(|_| "4".to_string())
14            .parse::<usize>()
15            .unwrap();
16
17        let llm_workers = std::env::var("LLM_WORKER_COUNT")
18            .unwrap_or_else(|_| "2".to_string())
19            .parse::<usize>()
20            .unwrap();
21
22        let max_retries = std::env::var("MAX_RETRIES")
23            .unwrap_or_else(|_| "3".to_string())
24            .parse::<usize>()
25            .unwrap();
26
27        Self {
28            num_workers,
29            llm_workers,
30            max_retries,
31        }
32    }
33}