#[derive(Debug, Clone, serde::Deserialize)]
#[serde(rename_all = "kebab-case")]
#[non_exhaustive]
pub struct MetricEntry {
pub time: chrono::DateTime<chrono::Utc>,
pub site: String,
pub cluster_hostname: String,
pub hostname: String,
pub cpu: CPU,
pub memory: Memory,
}
#[derive(Debug, Clone, serde::Deserialize)]
#[serde(rename_all = "kebab-case")]
#[non_exhaustive]
pub struct CPU {
pub nanoseconds: u64,
pub cpus: f64,
pub percentage_used: f64,
}
#[derive(Debug, Clone, serde::Deserialize)]
#[serde(rename_all = "kebab-case")]
#[non_exhaustive]
pub struct Memory {
pub used: u64,
pub total: u64,
pub percentage_used: f32,
pub used_hot: u64,
pub percentage_used_hot: f32,
}