Skip to content
This repository was archived by the owner on Apr 17, 2024. It is now read-only.

Commit

Permalink
levana-cosmos-rs: Add rate per minute statistics
Browse files Browse the repository at this point in the history
  • Loading branch information
lvn-hasky-dragon committed Mar 7, 2024
1 parent 7d04238 commit a8265cd
Showing 1 changed file with 16 additions and 2 deletions.
18 changes: 16 additions & 2 deletions packages/cosmos/src/error.rs
Original file line number Diff line number Diff line change
Expand Up @@ -645,10 +645,24 @@ impl Display for SingleNodeHealthReport {
}) => write!(f, "Last error: {timestamp} ({age:?}): {error}")?,
}
if let Some(first_request) = self.first_request {
let since = (Utc::now() - first_request).num_minutes();

let rate_per_minute = {
let since = u64::try_from(since);
match since {
Ok(since) => self.total_query_count.checked_div(since),
Err(_) => None,
}
};
let rate_per_minute = match rate_per_minute {
Some(rpm) => rpm.to_string(),
None => "0verflow".to_owned(),
};

write!(
f,
". First request: {}. Total queries: {}",
first_request, self.total_query_count
". First request: {} (Since {} minutes). Total queries: {} (RPM: {})",
first_request, since, self.total_query_count, rate_per_minute
)?;
}
Ok(())
Expand Down

0 comments on commit a8265cd

Please sign in to comment.