#[derive(Debug, Clone)]
pub enum SupervisionStrategy {
OneForOne { max_retries: u32, within_secs: u64 },
AllForOne { max_retries: u32, within_secs: u64 },
Stop,
Escalate,
}
impl Default for SupervisionStrategy {
fn default() -> Self {
Self::OneForOne {
max_retries: 3,
within_secs: 60,
}
}
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum SupervisionDecision {
Restart,
Stop,
Escalate,
Resume,
}